gnucash master: [price-quotes] Sort and format source list.

John Ralls jralls at code.gnucash.org
Mon Oct 17 14:14:03 EDT 2022


Updated	 via  https://github.com/Gnucash/gnucash/commit/14a0ea4e (commit)
	from  https://github.com/Gnucash/gnucash/commit/1a906b00 (commit)



commit 14a0ea4ed30a300cd1aa895d1e793cbaaf6964bc
Author: John Ralls <jralls at ceridwen.us>
Date:   Mon Oct 17 11:13:55 2022 -0700

    [price-quotes] Sort and format source list.

diff --git a/gnucash/gnucash-commands.cpp b/gnucash/gnucash-commands.cpp
index 2014a9013..840887862 100644
--- a/gnucash/gnucash-commands.cpp
+++ b/gnucash/gnucash-commands.cpp
@@ -307,9 +307,20 @@ Gnucash::check_finance_quote (void)
     {
         GncQuotes quotes;
         std::cout << bl::format (bl::translate ("Found Finance::Quote version {1}.")) % quotes.version() << "\n";
-        std::cout << bl::translate ("Finance::Quote sources: ");
+        std::cout << bl::translate ("Finance::Quote sources:\n");
+        int count{0};
+        const auto width{12};
         for (auto source : quotes.sources())
-            std::cout << source << " ";
+        {
+            auto mul{source.length() / width + 1};
+            count += mul;
+            if (count > 6)
+            {
+                count = mul;
+                std::cout << "\n";
+            }
+            std::cout << std::setw(mul * (width + 1)) << std::left << source;
+        }
         std::cout << std::endl;
         return 0;
     }
diff --git a/libgnucash/app-utils/gnc-quotes.cpp b/libgnucash/app-utils/gnc-quotes.cpp
index 42a878520..366c9fe9a 100644
--- a/libgnucash/app-utils/gnc-quotes.cpp
+++ b/libgnucash/app-utils/gnc-quotes.cpp
@@ -171,6 +171,7 @@ m_version{}, m_sources{}, m_api_key{}
     m_version = std::move(version);
     sources.erase(sources.begin());
     m_sources = std::move(sources);
+    std::sort (m_sources.begin(), m_sources.end());
 
     auto av_key = gnc_prefs_get_string ("general.finance-quote", "alphavantage-api-key");
     if (!(av_key && *av_key))



Summary of changes:
 gnucash/gnucash-commands.cpp        | 15 +++++++++++++--
 libgnucash/app-utils/gnc-quotes.cpp |  1 +
 2 files changed, 14 insertions(+), 2 deletions(-)



More information about the gnucash-changes mailing list