diff --git a/NEWS.md b/NEWS.md index 4147f6541..3974e820f 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,12 @@ +# Version ? + +## New features and enhancements + +* MKVToolNix GUI: the list of often used languages now contains those from + Wikipedia's "List of languages by native speakers" by default. Also by + default only those languages will be shown in the language drop-down boxes. + + # Version 36.0.0 "Is That Jazz?" 2019-08-10 ## New features and enhancements diff --git a/src/common/iso639.cpp b/src/common/iso639.cpp index cffb704d5..094ce09e8 100644 --- a/src/common/iso639.cpp +++ b/src/common/iso639.cpp @@ -520,7 +520,72 @@ static std::unordered_map s_deprecated_1_and_2_codes{ { "mol", "rum" }, }; -std::vector const g_popular_language_codes{ "chi", "dut", "eng", "fin", "fre", "ger", "ita", "jpn", "mul", "nor", "por", "rus", "spa", "swe", "und", "zxx" }; +std::vector const g_popular_language_codes{ + // Derived from the list of spoken languages sorted by native speakers available at + // https://en.wikipedia.org/wiki/List_of_languages_by_number_of_native_speakers + "amh", + "ara", + "aze", + "ben", + "bho", + "bur", + "ceb", + "khm", + "chi", + "cze", + "dut", + "eng", + "fre", + "ger", + "gre", + "guj", + "hau", + "hin", + "hun", + "ibo", + "ind", + "ita", + "jpn", + "jav", + "kan", + "kaz", + "kin", + "kor", + "kur", + "mag", + "mai", + "may", + "mal", + "mar", + "nep", + "ori", + "pan", + "per", + "pol", + "por", + "pus", + "rum", + "run", + "rus", + "snd", + "sin", + "som", + "spa", + "sun", + "tam", + "tel", + "tha", + "tur", + "ukr", + "urd", + "uzb", + "vie", + "yor", + "zul", + + // "Undetermined" & "No linguistic content" + "und", "zxx", + }; bool is_valid_iso639_2_code(std::string const &iso639_2_code) { diff --git a/src/mkvtoolnix-gui/util/settings.cpp b/src/mkvtoolnix-gui/util/settings.cpp index 75b0f0d78..ad3ebf642 100644 --- a/src/mkvtoolnix-gui/util/settings.cpp +++ b/src/mkvtoolnix-gui/util/settings.cpp @@ -271,7 +271,7 @@ Settings::load() { m_oftenUsedCountries = reg.value(s_valOftenUsedCountries).toStringList(); m_oftenUsedCharacterSets = reg.value(s_valOftenUsedCharacterSets).toStringList(); - m_oftenUsedLanguagesOnly = reg.value(s_valOftenUsedLanguagesOnly, false).toBool();; + m_oftenUsedLanguagesOnly = reg.value(s_valOftenUsedLanguagesOnly, true).toBool();; m_oftenUsedCountriesOnly = reg.value(s_valOftenUsedCountriesOnly, false).toBool();; m_oftenUsedCharacterSetsOnly = reg.value(s_valOftenUsedCharacterSetsOnly, false).toBool();;