From dba8865d75f6f2e8d40e537cbd86c93eec80b3b9 Mon Sep 17 00:00:00 2001
From: "Veronica K. B. Olsen" <1619840+vkbo@users.noreply.github.com>
Date: Mon, 15 Feb 2021 16:32:20 +0100
Subject: [PATCH] Revert some changes to how languages are loaded and remove
iso.py
---
nw/config.py | 35 ++-
nw/constants/__init__.py | 3 -
nw/constants/constants.py | 5 +-
nw/constants/iso.py | 475 -----------------------------
nw/core/spellcheck.py | 47 +--
nw/gui/doceditor.py | 9 +-
nw/gui/preferences.py | 22 +-
nw/gui/statusbar.py | 18 +-
tests/test_core/test_core_spell.py | 15 -
9 files changed, 44 insertions(+), 585 deletions(-)
delete mode 100644 nw/constants/iso.py
diff --git a/nw/config.py b/nw/config.py
index dca4d1ba..8af44ab1 100644
--- a/nw/config.py
+++ b/nw/config.py
@@ -78,9 +78,6 @@ class Config:
self.iconPath = None # The full path to the nw/assets/icons folder
self.helpPath = None # The full path to the novelwriter .qhc help file
- # Internationalisation
- self.qtTrans = {}
-
# Runtime Settings and Variables
self.confChanged = False # True whenever the config has chenged, false after save
self.hasHelp = False # True if the Qt help files are present in the assets folder
@@ -97,12 +94,10 @@ class Config:
## Localisation
self.qLocal = QLocale.system()
- self.guiLang = self.qLocal.name()
+ self.guiLang = self.qLocal.bcp47Name()
self.qtLangPath = QLibraryInfo.location(QLibraryInfo.TranslationsPath)
self.nwLangPath = None
- self.i18nQtMain = QTranslator()
- self.i18nQtBase = QTranslator()
- self.i18nNWBase = QTranslator()
+ self.qtTrans = {}
## Sizes
self.winGeometry = [1200, 650]
@@ -376,18 +371,22 @@ class Config:
"""
self.qLocal = QLocale(self.guiLang)
QLocale.setDefault(self.qLocal)
+ self.qtTrans = {}
- if self.i18nQtMain.load(self.qLocal, "qt", "_", self.qtLangPath):
- nwApp.installTranslator(self.i18nQtMain)
- logger.debug("Loaded: %s" % self.i18nQtMain.filePath())
-
- if self.i18nQtBase.load(self.qLocal, "qtbase", "_", self.qtLangPath):
- nwApp.installTranslator(self.i18nQtBase)
- logger.debug("Loaded: %s" % self.i18nQtBase.filePath())
-
- if self.i18nNWBase.load(self.qLocal, "nw", "_", self.nwLangPath):
- nwApp.installTranslator(self.i18nNWBase)
- logger.debug("Loaded: %s" % self.i18nNWBase.filePath())
+ langList = [
+ (self.qtLangPath, "qt"),
+ (self.qtLangPath, "qtbase"),
+ (self.nwLangPath, "nw"),
+ ]
+ for lngPath, lngBase in langList:
+ for lngCode in self.qLocal.uiLanguages():
+ qTrans = QTranslator()
+ lngFile = "%s_%s" % (lngBase, lngCode)
+ if lngFile not in self.qtTrans:
+ if qTrans.load(lngFile, lngPath):
+ logger.debug("Loaded: %s" % qTrans.filePath())
+ nwApp.installTranslator(qTrans)
+ self.qtTrans[lngFile] = qTrans
return
diff --git a/nw/constants/__init__.py b/nw/constants/__init__.py
index 1a6748a1..7c458d2e 100644
--- a/nw/constants/__init__.py
+++ b/nw/constants/__init__.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-
-from nw.constants.iso import isoLanguage, isoCountry
from nw.constants.constants import (
nwConst, nwLists, nwRegEx, nwFiles, nwKeyWords, nwLabels, nwQuotes,
nwUnicode, nwHtmlUnicode
@@ -10,8 +9,6 @@ from nw.constants.enum import (
)
__all__ = [
- "isoCountry",
- "isoLanguage",
"nwConst",
"nwLists",
"nwRegEx",
diff --git a/nw/constants/constants.py b/nw/constants/constants.py
index 2cfa4d02..892fcf6f 100644
--- a/nw/constants/constants.py
+++ b/nw/constants/constants.py
@@ -25,6 +25,7 @@ along with this program. If not, see .
"""
from PyQt5.QtCore import QT_TRANSLATE_NOOP
+
from nw.constants.enum import (
nwItemClass, nwItemLayout, nwItemType, nwOutline
)
@@ -42,8 +43,8 @@ class nwConst():
MAX_BUILDSIZE = 10000000 # Maxium size of a project build
# Spell Check Providers
- SP_INTERNAL = QT_TRANSLATE_NOOP("Constant", "internal")
- SP_ENCHANT = QT_TRANSLATE_NOOP("Constant", "enchant")
+ SP_INTERNAL = "internal"
+ SP_ENCHANT = "enchant"
# END Class nwConst
diff --git a/nw/constants/iso.py b/nw/constants/iso.py
deleted file mode 100644
index 9d2c38aa..00000000
--- a/nw/constants/iso.py
+++ /dev/null
@@ -1,475 +0,0 @@
-# -*- coding: utf-8 -*-
-"""
-novelWriter – ISO Codes
-=======================
-Handles translating language codes to language names
-
-File History:
-Created: 2019-11-05 [0.4.0]
-
-This file is a part of novelWriter
-Copyright 2018–2021, Veronica Berglyd Olsen
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-"""
-
-from PyQt5.QtCore import QT_TRANSLATE_NOOP
-
-
-class isoLanguage():
-
- ISO_639_1 = {
- "aa" : QT_TRANSLATE_NOOP("ISO", "Afar"),
- "ab" : QT_TRANSLATE_NOOP("ISO", "Abkhazian"),
- "ae" : QT_TRANSLATE_NOOP("ISO", "Avestan"),
- "af" : QT_TRANSLATE_NOOP("ISO", "Afrikaans"),
- "ak" : QT_TRANSLATE_NOOP("ISO", "Akan"),
- "am" : QT_TRANSLATE_NOOP("ISO", "Amharic"),
- "an" : QT_TRANSLATE_NOOP("ISO", "Aragonese"),
- "ar" : QT_TRANSLATE_NOOP("ISO", "Arabic"),
- "as" : QT_TRANSLATE_NOOP("ISO", "Assamese"),
- "av" : QT_TRANSLATE_NOOP("ISO", "Avaric"),
- "ay" : QT_TRANSLATE_NOOP("ISO", "Aymara"),
- "az" : QT_TRANSLATE_NOOP("ISO", "Azerbaijani"),
- "ba" : QT_TRANSLATE_NOOP("ISO", "Bashkir"),
- "be" : QT_TRANSLATE_NOOP("ISO", "Belarusian"),
- "bg" : QT_TRANSLATE_NOOP("ISO", "Bulgarian"),
- "bh" : QT_TRANSLATE_NOOP("ISO", "Bihari languages"),
- "bi" : QT_TRANSLATE_NOOP("ISO", "Bislama"),
- "bm" : QT_TRANSLATE_NOOP("ISO", "Bambara"),
- "bn" : QT_TRANSLATE_NOOP("ISO", "Bengali"),
- "bo" : QT_TRANSLATE_NOOP("ISO", "Tibetan"),
- "br" : QT_TRANSLATE_NOOP("ISO", "Breton"),
- "bs" : QT_TRANSLATE_NOOP("ISO", "Bosnian"),
- "ca" : QT_TRANSLATE_NOOP("ISO", "Catalan"),
- "ce" : QT_TRANSLATE_NOOP("ISO", "Chechen"),
- "ch" : QT_TRANSLATE_NOOP("ISO", "Chamorro"),
- "co" : QT_TRANSLATE_NOOP("ISO", "Corsican"),
- "cr" : QT_TRANSLATE_NOOP("ISO", "Cree"),
- "cs" : QT_TRANSLATE_NOOP("ISO", "Czech"),
- "cu" : QT_TRANSLATE_NOOP("ISO", "Church Slavic"),
- "cv" : QT_TRANSLATE_NOOP("ISO", "Chuvash"),
- "cy" : QT_TRANSLATE_NOOP("ISO", "Welsh"),
- "da" : QT_TRANSLATE_NOOP("ISO", "Danish"),
- "de" : QT_TRANSLATE_NOOP("ISO", "German"),
- "dv" : QT_TRANSLATE_NOOP("ISO", "Divehi"),
- "dz" : QT_TRANSLATE_NOOP("ISO", "Dzongkha"),
- "ee" : QT_TRANSLATE_NOOP("ISO", "Ewe"),
- "el" : QT_TRANSLATE_NOOP("ISO", "Modern Greek"),
- "en" : QT_TRANSLATE_NOOP("ISO", "English"),
- "eo" : QT_TRANSLATE_NOOP("ISO", "Esperanto"),
- "es" : QT_TRANSLATE_NOOP("ISO", "Spanish"),
- "et" : QT_TRANSLATE_NOOP("ISO", "Estonian"),
- "eu" : QT_TRANSLATE_NOOP("ISO", "Basque"),
- "fa" : QT_TRANSLATE_NOOP("ISO", "Persian"),
- "ff" : QT_TRANSLATE_NOOP("ISO", "Fulah"),
- "fi" : QT_TRANSLATE_NOOP("ISO", "Finnish"),
- "fj" : QT_TRANSLATE_NOOP("ISO", "Fijian"),
- "fo" : QT_TRANSLATE_NOOP("ISO", "Faroese"),
- "fr" : QT_TRANSLATE_NOOP("ISO", "French"),
- "fy" : QT_TRANSLATE_NOOP("ISO", "Western Frisian"),
- "ga" : QT_TRANSLATE_NOOP("ISO", "Irish"),
- "gd" : QT_TRANSLATE_NOOP("ISO", "Gaelic"),
- "gl" : QT_TRANSLATE_NOOP("ISO", "Galician"),
- "gn" : QT_TRANSLATE_NOOP("ISO", "Guarani"),
- "gu" : QT_TRANSLATE_NOOP("ISO", "Gujarati"),
- "gv" : QT_TRANSLATE_NOOP("ISO", "Manx"),
- "ha" : QT_TRANSLATE_NOOP("ISO", "Hausa"),
- "he" : QT_TRANSLATE_NOOP("ISO", "Hebrew"),
- "hi" : QT_TRANSLATE_NOOP("ISO", "Hindi"),
- "ho" : QT_TRANSLATE_NOOP("ISO", "Hiri Motu"),
- "hr" : QT_TRANSLATE_NOOP("ISO", "Croatian"),
- "ht" : QT_TRANSLATE_NOOP("ISO", "Haitian"),
- "hu" : QT_TRANSLATE_NOOP("ISO", "Hungarian"),
- "hy" : QT_TRANSLATE_NOOP("ISO", "Armenian"),
- "hz" : QT_TRANSLATE_NOOP("ISO", "Herero"),
- "ia" : QT_TRANSLATE_NOOP("ISO", "Interlingua"),
- "id" : QT_TRANSLATE_NOOP("ISO", "Indonesian"),
- "ie" : QT_TRANSLATE_NOOP("ISO", "Interlingue"),
- "ig" : QT_TRANSLATE_NOOP("ISO", "Igbo"),
- "ii" : QT_TRANSLATE_NOOP("ISO", "Sichuan Yi"),
- "ik" : QT_TRANSLATE_NOOP("ISO", "Inupiaq"),
- "io" : QT_TRANSLATE_NOOP("ISO", "Ido"),
- "is" : QT_TRANSLATE_NOOP("ISO", "Icelandic"),
- "it" : QT_TRANSLATE_NOOP("ISO", "Italian"),
- "iu" : QT_TRANSLATE_NOOP("ISO", "Inuktitut"),
- "ja" : QT_TRANSLATE_NOOP("ISO", "Japanese"),
- "jv" : QT_TRANSLATE_NOOP("ISO", "Javanese"),
- "ka" : QT_TRANSLATE_NOOP("ISO", "Georgian"),
- "kg" : QT_TRANSLATE_NOOP("ISO", "Kongo"),
- "ki" : QT_TRANSLATE_NOOP("ISO", "Kikuyu"),
- "kj" : QT_TRANSLATE_NOOP("ISO", "Kuanyama"),
- "kk" : QT_TRANSLATE_NOOP("ISO", "Kazakh"),
- "kl" : QT_TRANSLATE_NOOP("ISO", "Kalaallisut"),
- "km" : QT_TRANSLATE_NOOP("ISO", "Central Khmer"),
- "kn" : QT_TRANSLATE_NOOP("ISO", "Kannada"),
- "ko" : QT_TRANSLATE_NOOP("ISO", "Korean"),
- "kr" : QT_TRANSLATE_NOOP("ISO", "Kanuri"),
- "ks" : QT_TRANSLATE_NOOP("ISO", "Kashmiri"),
- "ku" : QT_TRANSLATE_NOOP("ISO", "Kurdish"),
- "kv" : QT_TRANSLATE_NOOP("ISO", "Komi"),
- "kw" : QT_TRANSLATE_NOOP("ISO", "Cornish"),
- "ky" : QT_TRANSLATE_NOOP("ISO", "Kirghiz"),
- "la" : QT_TRANSLATE_NOOP("ISO", "Latin"),
- "lb" : QT_TRANSLATE_NOOP("ISO", "Luxembourgish"),
- "lg" : QT_TRANSLATE_NOOP("ISO", "Ganda"),
- "li" : QT_TRANSLATE_NOOP("ISO", "Limburgan"),
- "ln" : QT_TRANSLATE_NOOP("ISO", "Lingala"),
- "lo" : QT_TRANSLATE_NOOP("ISO", "Lao"),
- "lt" : QT_TRANSLATE_NOOP("ISO", "Lithuanian"),
- "lu" : QT_TRANSLATE_NOOP("ISO", "Luba-Katanga"),
- "lv" : QT_TRANSLATE_NOOP("ISO", "Latvian"),
- "mg" : QT_TRANSLATE_NOOP("ISO", "Malagasy"),
- "mh" : QT_TRANSLATE_NOOP("ISO", "Marshallese"),
- "mi" : QT_TRANSLATE_NOOP("ISO", "Maori"),
- "mk" : QT_TRANSLATE_NOOP("ISO", "Macedonian"),
- "ml" : QT_TRANSLATE_NOOP("ISO", "Malayalam"),
- "mn" : QT_TRANSLATE_NOOP("ISO", "Mongolian"),
- "mr" : QT_TRANSLATE_NOOP("ISO", "Marathi"),
- "ms" : QT_TRANSLATE_NOOP("ISO", "Malay"),
- "mt" : QT_TRANSLATE_NOOP("ISO", "Maltese"),
- "my" : QT_TRANSLATE_NOOP("ISO", "Burmese"),
- "na" : QT_TRANSLATE_NOOP("ISO", "Nauru"),
- "nb" : QT_TRANSLATE_NOOP("ISO", "Norwegian Bokm\u0229l"),
- "nd" : QT_TRANSLATE_NOOP("ISO", "North Ndebele"),
- "ne" : QT_TRANSLATE_NOOP("ISO", "Nepali"),
- "ng" : QT_TRANSLATE_NOOP("ISO", "Ndonga"),
- "nl" : QT_TRANSLATE_NOOP("ISO", "Dutch"),
- "nn" : QT_TRANSLATE_NOOP("ISO", "Norwegian Nynorsk"),
- "no" : QT_TRANSLATE_NOOP("ISO", "Norwegian"),
- "nr" : QT_TRANSLATE_NOOP("ISO", "South Ndebele"),
- "nv" : QT_TRANSLATE_NOOP("ISO", "Navajo"),
- "ny" : QT_TRANSLATE_NOOP("ISO", "Chichewa"),
- "oc" : QT_TRANSLATE_NOOP("ISO", "Occitan"),
- "oj" : QT_TRANSLATE_NOOP("ISO", "Ojibwa"),
- "om" : QT_TRANSLATE_NOOP("ISO", "Oromo"),
- "or" : QT_TRANSLATE_NOOP("ISO", "Oriya"),
- "os" : QT_TRANSLATE_NOOP("ISO", "Ossetian"),
- "pa" : QT_TRANSLATE_NOOP("ISO", "Panjabi"),
- "pi" : QT_TRANSLATE_NOOP("ISO", "Pali"),
- "pl" : QT_TRANSLATE_NOOP("ISO", "Polish"),
- "ps" : QT_TRANSLATE_NOOP("ISO", "Pushto"),
- "pt" : QT_TRANSLATE_NOOP("ISO", "Portuguese"),
- "qu" : QT_TRANSLATE_NOOP("ISO", "Quechua"),
- "rm" : QT_TRANSLATE_NOOP("ISO", "Romansh"),
- "rn" : QT_TRANSLATE_NOOP("ISO", "Rundi"),
- "ro" : QT_TRANSLATE_NOOP("ISO", "Romanian"),
- "ru" : QT_TRANSLATE_NOOP("ISO", "Russian"),
- "rw" : QT_TRANSLATE_NOOP("ISO", "Kinyarwanda"),
- "sa" : QT_TRANSLATE_NOOP("ISO", "Sanskrit"),
- "sc" : QT_TRANSLATE_NOOP("ISO", "Sardinian"),
- "sd" : QT_TRANSLATE_NOOP("ISO", "Sindhi"),
- "se" : QT_TRANSLATE_NOOP("ISO", "Northern Sami"),
- "sg" : QT_TRANSLATE_NOOP("ISO", "Sango"),
- "si" : QT_TRANSLATE_NOOP("ISO", "Sinhala"),
- "sk" : QT_TRANSLATE_NOOP("ISO", "Slovak"),
- "sl" : QT_TRANSLATE_NOOP("ISO", "Slovenian"),
- "sm" : QT_TRANSLATE_NOOP("ISO", "Samoan"),
- "sn" : QT_TRANSLATE_NOOP("ISO", "Shona"),
- "so" : QT_TRANSLATE_NOOP("ISO", "Somali"),
- "sq" : QT_TRANSLATE_NOOP("ISO", "Albanian"),
- "sr" : QT_TRANSLATE_NOOP("ISO", "Serbian"),
- "ss" : QT_TRANSLATE_NOOP("ISO", "Swati"),
- "st" : QT_TRANSLATE_NOOP("ISO", "Southern Sotho"),
- "su" : QT_TRANSLATE_NOOP("ISO", "Sundanese"),
- "sv" : QT_TRANSLATE_NOOP("ISO", "Swedish"),
- "sw" : QT_TRANSLATE_NOOP("ISO", "Swahili"),
- "ta" : QT_TRANSLATE_NOOP("ISO", "Tamil"),
- "te" : QT_TRANSLATE_NOOP("ISO", "Telugu"),
- "tg" : QT_TRANSLATE_NOOP("ISO", "Tajik"),
- "th" : QT_TRANSLATE_NOOP("ISO", "Thai"),
- "ti" : QT_TRANSLATE_NOOP("ISO", "Tigrinya"),
- "tk" : QT_TRANSLATE_NOOP("ISO", "Turkmen"),
- "tl" : QT_TRANSLATE_NOOP("ISO", "Tagalog"),
- "tn" : QT_TRANSLATE_NOOP("ISO", "Tswana"),
- "to" : QT_TRANSLATE_NOOP("ISO", "Tonga"),
- "tr" : QT_TRANSLATE_NOOP("ISO", "Turkish"),
- "ts" : QT_TRANSLATE_NOOP("ISO", "Tsonga"),
- "tt" : QT_TRANSLATE_NOOP("ISO", "Tatar"),
- "tw" : QT_TRANSLATE_NOOP("ISO", "Twi"),
- "ty" : QT_TRANSLATE_NOOP("ISO", "Tahitian"),
- "ug" : QT_TRANSLATE_NOOP("ISO", "Uighur"),
- "uk" : QT_TRANSLATE_NOOP("ISO", "Ukrainian"),
- "ur" : QT_TRANSLATE_NOOP("ISO", "Urdu"),
- "uz" : QT_TRANSLATE_NOOP("ISO", "Uzbek"),
- "ve" : QT_TRANSLATE_NOOP("ISO", "Venda"),
- "vi" : QT_TRANSLATE_NOOP("ISO", "Vietnamese"),
- "vo" : QT_TRANSLATE_NOOP("ISO", "Volap\u00fck"),
- "wa" : QT_TRANSLATE_NOOP("ISO", "Walloon"),
- "wo" : QT_TRANSLATE_NOOP("ISO", "Wolof"),
- "xh" : QT_TRANSLATE_NOOP("ISO", "Xhosa"),
- "yi" : QT_TRANSLATE_NOOP("ISO", "Yiddish"),
- "yo" : QT_TRANSLATE_NOOP("ISO", "Yoruba"),
- "za" : QT_TRANSLATE_NOOP("ISO", "Zhuang"),
- "zh" : QT_TRANSLATE_NOOP("ISO", "Chinese"),
- "zu" : QT_TRANSLATE_NOOP("ISO", "Zulu"),
- }
-
-# END Class isoLanguage
-
-class isoCountry():
-
- ISO_3166_1_alpha_2 = {
- "AD" : QT_TRANSLATE_NOOP("ISO", "Andorra"),
- "AE" : QT_TRANSLATE_NOOP("ISO", "United Arab Emirates"),
- "AF" : QT_TRANSLATE_NOOP("ISO", "Afghanistan"),
- "AG" : QT_TRANSLATE_NOOP("ISO", "Antigua and Barbuda"),
- "AI" : QT_TRANSLATE_NOOP("ISO", "Anguilla"),
- "AL" : QT_TRANSLATE_NOOP("ISO", "Albania"),
- "AM" : QT_TRANSLATE_NOOP("ISO", "Armenia"),
- "AO" : QT_TRANSLATE_NOOP("ISO", "Angola"),
- "AQ" : QT_TRANSLATE_NOOP("ISO", "Antarctica"),
- "AR" : QT_TRANSLATE_NOOP("ISO", "Argentina"),
- "AS" : QT_TRANSLATE_NOOP("ISO", "American Samoa"),
- "AT" : QT_TRANSLATE_NOOP("ISO", "Austria"),
- "AU" : QT_TRANSLATE_NOOP("ISO", "Australia"),
- "AW" : QT_TRANSLATE_NOOP("ISO", "Aruba"),
- "AX" : QT_TRANSLATE_NOOP("ISO", "\u0197land Islands"),
- "AZ" : QT_TRANSLATE_NOOP("ISO", "Azerbaijan"),
- "BA" : QT_TRANSLATE_NOOP("ISO", "Bosnia and Herzegovina"),
- "BB" : QT_TRANSLATE_NOOP("ISO", "Barbados"),
- "BD" : QT_TRANSLATE_NOOP("ISO", "Bangladesh"),
- "BE" : QT_TRANSLATE_NOOP("ISO", "Belgium"),
- "BF" : QT_TRANSLATE_NOOP("ISO", "Burkina Faso"),
- "BG" : QT_TRANSLATE_NOOP("ISO", "Bulgaria"),
- "BH" : QT_TRANSLATE_NOOP("ISO", "Bahrain"),
- "BI" : QT_TRANSLATE_NOOP("ISO", "Burundi"),
- "BJ" : QT_TRANSLATE_NOOP("ISO", "Benin"),
- "BL" : QT_TRANSLATE_NOOP("ISO", "Saint Barth\u00e9lemy"),
- "BM" : QT_TRANSLATE_NOOP("ISO", "Bermuda"),
- "BN" : QT_TRANSLATE_NOOP("ISO", "Brunei Darussalam"),
- "BO" : QT_TRANSLATE_NOOP("ISO", "Plurinational State of Bolivia"),
- "BQ" : QT_TRANSLATE_NOOP("ISO", "Sint Eustatius and Saba Bonaire"),
- "BR" : QT_TRANSLATE_NOOP("ISO", "Brazil"),
- "BS" : QT_TRANSLATE_NOOP("ISO", "Bahamas"),
- "BT" : QT_TRANSLATE_NOOP("ISO", "Bhutan"),
- "BV" : QT_TRANSLATE_NOOP("ISO", "Bouvet Island"),
- "BW" : QT_TRANSLATE_NOOP("ISO", "Botswana"),
- "BY" : QT_TRANSLATE_NOOP("ISO", "Belarus"),
- "BZ" : QT_TRANSLATE_NOOP("ISO", "Belize"),
- "CA" : QT_TRANSLATE_NOOP("ISO", "Canada"),
- "CC" : QT_TRANSLATE_NOOP("ISO", "Cocos (Keeling) Islands"),
- "CD" : QT_TRANSLATE_NOOP("ISO", "The Democratic Republic of the Congo"),
- "CF" : QT_TRANSLATE_NOOP("ISO", "Central African Republic"),
- "CG" : QT_TRANSLATE_NOOP("ISO", "Congo"),
- "CH" : QT_TRANSLATE_NOOP("ISO", "Switzerland"),
- "CI" : QT_TRANSLATE_NOOP("ISO", "C\u00f4te d'Ivoire"),
- "CK" : QT_TRANSLATE_NOOP("ISO", "Cook Islands"),
- "CL" : QT_TRANSLATE_NOOP("ISO", "Chile"),
- "CM" : QT_TRANSLATE_NOOP("ISO", "Cameroon"),
- "CN" : QT_TRANSLATE_NOOP("ISO", "China"),
- "CO" : QT_TRANSLATE_NOOP("ISO", "Colombia"),
- "CR" : QT_TRANSLATE_NOOP("ISO", "Costa Rica"),
- "CU" : QT_TRANSLATE_NOOP("ISO", "Cuba"),
- "CV" : QT_TRANSLATE_NOOP("ISO", "Cape Verde"),
- "CW" : QT_TRANSLATE_NOOP("ISO", "Cura\u00e7ao"),
- "CX" : QT_TRANSLATE_NOOP("ISO", "Christmas Island"),
- "CY" : QT_TRANSLATE_NOOP("ISO", "Cyprus"),
- "CZ" : QT_TRANSLATE_NOOP("ISO", "Czech Republic"),
- "DE" : QT_TRANSLATE_NOOP("ISO", "Germany"),
- "DJ" : QT_TRANSLATE_NOOP("ISO", "Djibouti"),
- "DK" : QT_TRANSLATE_NOOP("ISO", "Denmark"),
- "DM" : QT_TRANSLATE_NOOP("ISO", "Dominica"),
- "DO" : QT_TRANSLATE_NOOP("ISO", "Dominican Republic"),
- "DZ" : QT_TRANSLATE_NOOP("ISO", "Algeria"),
- "EC" : QT_TRANSLATE_NOOP("ISO", "Ecuador"),
- "EE" : QT_TRANSLATE_NOOP("ISO", "Estonia"),
- "EG" : QT_TRANSLATE_NOOP("ISO", "Egypt"),
- "EH" : QT_TRANSLATE_NOOP("ISO", "Western Sahara"),
- "ER" : QT_TRANSLATE_NOOP("ISO", "Eritrea"),
- "ES" : QT_TRANSLATE_NOOP("ISO", "Spain"),
- "ET" : QT_TRANSLATE_NOOP("ISO", "Ethiopia"),
- "FI" : QT_TRANSLATE_NOOP("ISO", "Finland"),
- "FJ" : QT_TRANSLATE_NOOP("ISO", "Fiji"),
- "FK" : QT_TRANSLATE_NOOP("ISO", "Falkland Islands (Malvinas)"),
- "FM" : QT_TRANSLATE_NOOP("ISO", "Federated States of Micronesia"),
- "FO" : QT_TRANSLATE_NOOP("ISO", "Faroe Islands"),
- "FR" : QT_TRANSLATE_NOOP("ISO", "France"),
- "GA" : QT_TRANSLATE_NOOP("ISO", "Gabon"),
- "GB" : QT_TRANSLATE_NOOP("ISO", "United Kingdom"),
- "GD" : QT_TRANSLATE_NOOP("ISO", "Grenada"),
- "GE" : QT_TRANSLATE_NOOP("ISO", "Georgia"),
- "GF" : QT_TRANSLATE_NOOP("ISO", "French Guiana"),
- "GG" : QT_TRANSLATE_NOOP("ISO", "Guernsey"),
- "GH" : QT_TRANSLATE_NOOP("ISO", "Ghana"),
- "GI" : QT_TRANSLATE_NOOP("ISO", "Gibraltar"),
- "GL" : QT_TRANSLATE_NOOP("ISO", "Greenland"),
- "GM" : QT_TRANSLATE_NOOP("ISO", "Gambia"),
- "GN" : QT_TRANSLATE_NOOP("ISO", "Guinea"),
- "GP" : QT_TRANSLATE_NOOP("ISO", "Guadeloupe"),
- "GQ" : QT_TRANSLATE_NOOP("ISO", "Equatorial Guinea"),
- "GR" : QT_TRANSLATE_NOOP("ISO", "Greece"),
- "GS" : QT_TRANSLATE_NOOP("ISO", "South Georgia and the South Sandwich Islands"),
- "GT" : QT_TRANSLATE_NOOP("ISO", "Guatemala"),
- "GU" : QT_TRANSLATE_NOOP("ISO", "Guam"),
- "GW" : QT_TRANSLATE_NOOP("ISO", "Guinea-Bissau"),
- "GY" : QT_TRANSLATE_NOOP("ISO", "Guyana"),
- "HK" : QT_TRANSLATE_NOOP("ISO", "Hong Kong"),
- "HM" : QT_TRANSLATE_NOOP("ISO", "Heard Island and McDonald Islands"),
- "HN" : QT_TRANSLATE_NOOP("ISO", "Honduras"),
- "HR" : QT_TRANSLATE_NOOP("ISO", "Croatia"),
- "HT" : QT_TRANSLATE_NOOP("ISO", "Haiti"),
- "HU" : QT_TRANSLATE_NOOP("ISO", "Hungary"),
- "ID" : QT_TRANSLATE_NOOP("ISO", "Indonesia"),
- "IE" : QT_TRANSLATE_NOOP("ISO", "Ireland"),
- "IL" : QT_TRANSLATE_NOOP("ISO", "Israel"),
- "IM" : QT_TRANSLATE_NOOP("ISO", "Isle of Man"),
- "IN" : QT_TRANSLATE_NOOP("ISO", "India"),
- "IO" : QT_TRANSLATE_NOOP("ISO", "British Indian Ocean Territory"),
- "IQ" : QT_TRANSLATE_NOOP("ISO", "Iraq"),
- "IR" : QT_TRANSLATE_NOOP("ISO", "Islamic Republic of Iran"),
- "IS" : QT_TRANSLATE_NOOP("ISO", "Iceland"),
- "IT" : QT_TRANSLATE_NOOP("ISO", "Italy"),
- "JE" : QT_TRANSLATE_NOOP("ISO", "Jersey"),
- "JM" : QT_TRANSLATE_NOOP("ISO", "Jamaica"),
- "JO" : QT_TRANSLATE_NOOP("ISO", "Jordan"),
- "JP" : QT_TRANSLATE_NOOP("ISO", "Japan"),
- "KE" : QT_TRANSLATE_NOOP("ISO", "Kenya"),
- "KG" : QT_TRANSLATE_NOOP("ISO", "Kyrgyzstan"),
- "KH" : QT_TRANSLATE_NOOP("ISO", "Cambodia"),
- "KI" : QT_TRANSLATE_NOOP("ISO", "Kiribati"),
- "KM" : QT_TRANSLATE_NOOP("ISO", "Comoros"),
- "KN" : QT_TRANSLATE_NOOP("ISO", "Saint Kitts and Nevis"),
- "KP" : QT_TRANSLATE_NOOP("ISO", "Democratic People's Republic of Korea"),
- "KR" : QT_TRANSLATE_NOOP("ISO", "Republic of Korea"),
- "KW" : QT_TRANSLATE_NOOP("ISO", "Kuwait"),
- "KY" : QT_TRANSLATE_NOOP("ISO", "Cayman Islands"),
- "KZ" : QT_TRANSLATE_NOOP("ISO", "Kazakhstan"),
- "LA" : QT_TRANSLATE_NOOP("ISO", "Lao People's Democratic Republic"),
- "LB" : QT_TRANSLATE_NOOP("ISO", "Lebanon"),
- "LC" : QT_TRANSLATE_NOOP("ISO", "Saint Lucia"),
- "LI" : QT_TRANSLATE_NOOP("ISO", "Liechtenstein"),
- "LK" : QT_TRANSLATE_NOOP("ISO", "Sri Lanka"),
- "LR" : QT_TRANSLATE_NOOP("ISO", "Liberia"),
- "LS" : QT_TRANSLATE_NOOP("ISO", "Lesotho"),
- "LT" : QT_TRANSLATE_NOOP("ISO", "Lithuania"),
- "LU" : QT_TRANSLATE_NOOP("ISO", "Luxembourg"),
- "LV" : QT_TRANSLATE_NOOP("ISO", "Latvia"),
- "LY" : QT_TRANSLATE_NOOP("ISO", "Libya"),
- "MA" : QT_TRANSLATE_NOOP("ISO", "Morocco"),
- "MC" : QT_TRANSLATE_NOOP("ISO", "Monaco"),
- "MD" : QT_TRANSLATE_NOOP("ISO", "Republic of Moldova"),
- "ME" : QT_TRANSLATE_NOOP("ISO", "Montenegro"),
- "MF" : QT_TRANSLATE_NOOP("ISO", "Saint Martin (French part)"),
- "MG" : QT_TRANSLATE_NOOP("ISO", "Madagascar"),
- "MH" : QT_TRANSLATE_NOOP("ISO", "Marshall Islands"),
- "MK" : QT_TRANSLATE_NOOP("ISO", "The Former Yugoslav Republic of Macedonia"),
- "ML" : QT_TRANSLATE_NOOP("ISO", "Mali"),
- "MM" : QT_TRANSLATE_NOOP("ISO", "Myanmar"),
- "MN" : QT_TRANSLATE_NOOP("ISO", "Mongolia"),
- "MO" : QT_TRANSLATE_NOOP("ISO", "Macao"),
- "MP" : QT_TRANSLATE_NOOP("ISO", "Northern Mariana Islands"),
- "MQ" : QT_TRANSLATE_NOOP("ISO", "Martinique"),
- "MR" : QT_TRANSLATE_NOOP("ISO", "Mauritania"),
- "MS" : QT_TRANSLATE_NOOP("ISO", "Montserrat"),
- "MT" : QT_TRANSLATE_NOOP("ISO", "Malta"),
- "MU" : QT_TRANSLATE_NOOP("ISO", "Mauritius"),
- "MV" : QT_TRANSLATE_NOOP("ISO", "Maldives"),
- "MW" : QT_TRANSLATE_NOOP("ISO", "Malawi"),
- "MX" : QT_TRANSLATE_NOOP("ISO", "Mexico"),
- "MY" : QT_TRANSLATE_NOOP("ISO", "Malaysia"),
- "MZ" : QT_TRANSLATE_NOOP("ISO", "Mozambique"),
- "NA" : QT_TRANSLATE_NOOP("ISO", "Namibia"),
- "NC" : QT_TRANSLATE_NOOP("ISO", "New Caledonia"),
- "NE" : QT_TRANSLATE_NOOP("ISO", "Niger"),
- "NF" : QT_TRANSLATE_NOOP("ISO", "Norfolk Island"),
- "NG" : QT_TRANSLATE_NOOP("ISO", "Nigeria"),
- "NI" : QT_TRANSLATE_NOOP("ISO", "Nicaragua"),
- "NL" : QT_TRANSLATE_NOOP("ISO", "Netherlands"),
- "NO" : QT_TRANSLATE_NOOP("ISO", "Norway"),
- "NP" : QT_TRANSLATE_NOOP("ISO", "Nepal"),
- "NR" : QT_TRANSLATE_NOOP("ISO", "Nauru"),
- "NU" : QT_TRANSLATE_NOOP("ISO", "Niue"),
- "NZ" : QT_TRANSLATE_NOOP("ISO", "New Zealand"),
- "OM" : QT_TRANSLATE_NOOP("ISO", "Oman"),
- "PA" : QT_TRANSLATE_NOOP("ISO", "Panama"),
- "PE" : QT_TRANSLATE_NOOP("ISO", "Peru"),
- "PF" : QT_TRANSLATE_NOOP("ISO", "French Polynesia"),
- "PG" : QT_TRANSLATE_NOOP("ISO", "Papua New Guinea"),
- "PH" : QT_TRANSLATE_NOOP("ISO", "Philippines"),
- "PK" : QT_TRANSLATE_NOOP("ISO", "Pakistan"),
- "PL" : QT_TRANSLATE_NOOP("ISO", "Poland"),
- "PM" : QT_TRANSLATE_NOOP("ISO", "Saint Pierre and Miquelon"),
- "PN" : QT_TRANSLATE_NOOP("ISO", "Pitcairn"),
- "PR" : QT_TRANSLATE_NOOP("ISO", "Puerto Rico"),
- "PS" : QT_TRANSLATE_NOOP("ISO", "State of Palestine"),
- "PT" : QT_TRANSLATE_NOOP("ISO", "Portugal"),
- "PW" : QT_TRANSLATE_NOOP("ISO", "Palau"),
- "PY" : QT_TRANSLATE_NOOP("ISO", "Paraguay"),
- "QA" : QT_TRANSLATE_NOOP("ISO", "Qatar"),
- "RE" : QT_TRANSLATE_NOOP("ISO", "R\u00e9union"),
- "RO" : QT_TRANSLATE_NOOP("ISO", "Romania"),
- "RS" : QT_TRANSLATE_NOOP("ISO", "Serbia"),
- "RU" : QT_TRANSLATE_NOOP("ISO", "Russian Federation"),
- "RW" : QT_TRANSLATE_NOOP("ISO", "Rwanda"),
- "SA" : QT_TRANSLATE_NOOP("ISO", "Saudi Arabia"),
- "SB" : QT_TRANSLATE_NOOP("ISO", "Solomon Islands"),
- "SC" : QT_TRANSLATE_NOOP("ISO", "Seychelles"),
- "SD" : QT_TRANSLATE_NOOP("ISO", "Sudan"),
- "SE" : QT_TRANSLATE_NOOP("ISO", "Sweden"),
- "SG" : QT_TRANSLATE_NOOP("ISO", "Singapore"),
- "SH" : QT_TRANSLATE_NOOP("ISO", "Saint Helena, Ascension and Tristan da Cunha"),
- "SI" : QT_TRANSLATE_NOOP("ISO", "Slovenia"),
- "SJ" : QT_TRANSLATE_NOOP("ISO", "Svalbard and Jan Mayen"),
- "SK" : QT_TRANSLATE_NOOP("ISO", "Slovakia"),
- "SL" : QT_TRANSLATE_NOOP("ISO", "Sierra Leone"),
- "SM" : QT_TRANSLATE_NOOP("ISO", "San Marino"),
- "SN" : QT_TRANSLATE_NOOP("ISO", "Senegal"),
- "SO" : QT_TRANSLATE_NOOP("ISO", "Somalia"),
- "SR" : QT_TRANSLATE_NOOP("ISO", "Suriname"),
- "SS" : QT_TRANSLATE_NOOP("ISO", "South Sudan"),
- "ST" : QT_TRANSLATE_NOOP("ISO", "Sao Tome and Principe"),
- "SV" : QT_TRANSLATE_NOOP("ISO", "El Salvador"),
- "SX" : QT_TRANSLATE_NOOP("ISO", "Sint Maarten"),
- "SY" : QT_TRANSLATE_NOOP("ISO", "Syrian Arab Republic"),
- "SZ" : QT_TRANSLATE_NOOP("ISO", "Swaziland"),
- "TC" : QT_TRANSLATE_NOOP("ISO", "Turks and Caicos Islands"),
- "TD" : QT_TRANSLATE_NOOP("ISO", "Chad"),
- "TF" : QT_TRANSLATE_NOOP("ISO", "French Southern Territories"),
- "TG" : QT_TRANSLATE_NOOP("ISO", "Togo"),
- "TH" : QT_TRANSLATE_NOOP("ISO", "Thailand"),
- "TJ" : QT_TRANSLATE_NOOP("ISO", "Tajikistan"),
- "TK" : QT_TRANSLATE_NOOP("ISO", "Tokelau"),
- "TL" : QT_TRANSLATE_NOOP("ISO", "Timor-Leste"),
- "TM" : QT_TRANSLATE_NOOP("ISO", "Turkmenistan"),
- "TN" : QT_TRANSLATE_NOOP("ISO", "Tunisia"),
- "TO" : QT_TRANSLATE_NOOP("ISO", "Tonga"),
- "TR" : QT_TRANSLATE_NOOP("ISO", "Turkey"),
- "TT" : QT_TRANSLATE_NOOP("ISO", "Trinidad and Tobago"),
- "TV" : QT_TRANSLATE_NOOP("ISO", "Tuvalu"),
- "TW" : QT_TRANSLATE_NOOP("ISO", "Taiwan, Province of China"),
- "TZ" : QT_TRANSLATE_NOOP("ISO", "United Republic of Tanzania"),
- "UA" : QT_TRANSLATE_NOOP("ISO", "Ukraine"),
- "UG" : QT_TRANSLATE_NOOP("ISO", "Uganda"),
- "UM" : QT_TRANSLATE_NOOP("ISO", "United States Minor Outlying Islands"),
- "US" : QT_TRANSLATE_NOOP("ISO", "United States"),
- "UY" : QT_TRANSLATE_NOOP("ISO", "Uruguay"),
- "UZ" : QT_TRANSLATE_NOOP("ISO", "Uzbekistan"),
- "VA" : QT_TRANSLATE_NOOP("ISO", "Holy See (Vatican City State)"),
- "VC" : QT_TRANSLATE_NOOP("ISO", "Saint Vincent and the Grenadines"),
- "VE" : QT_TRANSLATE_NOOP("ISO", "Bolivarian Republic of Venezuela"),
- "VG" : QT_TRANSLATE_NOOP("ISO", "British Virgin Islands"),
- "VI" : QT_TRANSLATE_NOOP("ISO", "U.S. Virgin Islands"),
- "VN" : QT_TRANSLATE_NOOP("ISO", "Viet Nam"),
- "VU" : QT_TRANSLATE_NOOP("ISO", "Vanuatu"),
- "WF" : QT_TRANSLATE_NOOP("ISO", "Wallis and Futuna"),
- "WS" : QT_TRANSLATE_NOOP("ISO", "Samoa"),
- "YE" : QT_TRANSLATE_NOOP("ISO", "Yemen"),
- "YT" : QT_TRANSLATE_NOOP("ISO", "Mayotte"),
- "ZA" : QT_TRANSLATE_NOOP("ISO", "South Africa"),
- "ZM" : QT_TRANSLATE_NOOP("ISO", "Zambia"),
- "ZW" : QT_TRANSLATE_NOOP("ISO", "Zimbabwe"),
- }
-
-# END Class isoCountry
diff --git a/nw/core/spellcheck.py b/nw/core/spellcheck.py
index 4aeb9841..720d8616 100644
--- a/nw/core/spellcheck.py
+++ b/nw/core/spellcheck.py
@@ -24,14 +24,11 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see .
"""
-from PyQt5.QtCore import QCoreApplication
import nw
import logging
import os
import difflib
-from nw.constants import nwConst, isoLanguage
-
logger = logging.getLogger(__name__)
# =============================================================================================== #
@@ -85,21 +82,6 @@ class NWSpellCheck():
"""
return []
- def describeDict(self):
- """Dummy function.
- """
- return "", ""
-
- @staticmethod
- def expandLanguage(spTag):
- """Translate a language tag to something more user friendly.
- """
- spBits = spTag.split("_")
- spLang = QCoreApplication.translate("ISO", isoLanguage.ISO_639_1.get(spBits[0], spBits[0]))
- if len(spBits) > 1:
- spLang += " (%s)" % spBits[1]
- return spLang
-
##
# Internal Functions
##
@@ -197,27 +179,11 @@ class NWSpellEnchant(NWSpellCheck):
try:
import enchant
for spTag, spProvider in enchant.list_dicts():
- spName = "%s [%s]" % (self.expandLanguage(spTag), spProvider.name)
- retList.append((spTag, spName))
+ retList.append((spTag, spProvider.name))
except Exception:
logger.error("Failed to list languages for enchant spell checking")
return retList
- def describeDict(self):
- """Return the tag and provider of the currently loaded
- dictionary.
- """
- try:
- spTag = self.theDict.tag
- spName = self.theDict.provider.name
- except Exception:
- logger.error("Failed to extract information about the dictionary")
- nw.logException()
- spTag = ""
- spName = ""
-
- return spTag, spName
-
# END Class NWSpellEnchant
class NWSpellEnchantDummy:
@@ -333,17 +299,8 @@ class NWSpellSimple(NWSpellCheck):
if fExt != ".dict":
continue
- spName = "%s [%s]" % (
- self.expandLanguage(fRoot),
- QCoreApplication.translate("Constant", nwConst.SP_INTERNAL))
- retList.append((fRoot, spName))
+ retList.append((fRoot, "difflib"))
return retList
- def describeDict(self):
- """Return the tag and provider of the currently loaded
- dictionary.
- """
- return self.theLang, QCoreApplication.translate("Constant", nwConst.SP_INTERNAL)
-
# END Class NWSpellSimple
diff --git a/nw/gui/doceditor.py b/nw/gui/doceditor.py
index 146fe07e..f9db730a 100644
--- a/nw/gui/doceditor.py
+++ b/nw/gui/doceditor.py
@@ -599,14 +599,7 @@ class GuiDocEditor(QTextEdit):
theLang = self.theProject.projLang
self.theDict.setLanguage(theLang, self.theProject.projDict)
-
- aLang, aName = self.theDict.describeDict()
- self.theParent.statusBar.setLanguage(
- aLang,
- self.tr("{0} [{1}]").format(
- self.mainConf.spellTool.title(),
- aName.title())
- )
+ self.theParent.statusBar.setLanguage(theLang)
if not self.bigDoc:
self.spellCheckDocument()
diff --git a/nw/gui/preferences.py b/nw/gui/preferences.py
index e2ddfaae..95623060 100644
--- a/nw/gui/preferences.py
+++ b/nw/gui/preferences.py
@@ -28,7 +28,7 @@ import nw
import logging
import os
-from PyQt5.QtCore import QCoreApplication, Qt
+from PyQt5.QtCore import Qt, QLocale
from PyQt5.QtGui import QFont
from PyQt5.QtWidgets import (
QDialog, QWidget, QComboBox, QSpinBox, QPushButton, QDialogButtonBox,
@@ -627,19 +627,20 @@ class GuiPreferencesEditor(QWidget):
self.mainForm.setHelpTextStyle(self.theTheme.helpText)
self.setLayout(self.mainForm)
+ mW = self.mainConf.pxInt(250)
+
# Spell Checking
# ==============
self.mainForm.addGroupLabel(self.tr("Spell Checking"))
## Spell Check Provider and Language
self.spellLangList = QComboBox(self)
+ self.spellLangList.setMaximumWidth(mW)
+
self.spellToolList = QComboBox(self)
- self.spellToolList.addItem(
- self.tr("{0} ({1})").format(self.tr("Internal"), "difflib"),
- QCoreApplication.translate("Constant", nwConst.SP_INTERNAL))
- self.spellToolList.addItem(
- self.tr("{0} ({1})").format(self.tr("Spell Enchant"), "pyenchant"),
- QCoreApplication.translate("Constant", nwConst.SP_ENCHANT))
+ self.spellToolList.setMaximumWidth(mW)
+ self.spellToolList.addItem("%s (difflib)" % self.tr("Internal"), nwConst.SP_INTERNAL)
+ self.spellToolList.addItem("Spell Enchant (pyenchant)", nwConst.SP_ENCHANT)
theModel = self.spellToolList.model()
idEnchant = self.spellToolList.findData(nwConst.SP_ENCHANT)
@@ -799,8 +800,11 @@ class GuiPreferencesEditor(QWidget):
theDict = NWSpellSimple()
self.spellLangList.clear()
- for spTag, spName in theDict.listDictionaries():
- self.spellLangList.addItem(spName, spTag)
+ for spTag, spProv in theDict.listDictionaries():
+ qLocal = QLocale(spTag)
+ spLang = qLocal.nativeLanguageName().title()
+ spName = qLocal.bcp47Name()
+ self.spellLangList.addItem("%s (%s) [%s]" % (spLang, spName, spProv), spTag)
spellIdx = self.spellLangList.findData(self.mainConf.spellLanguage)
if spellIdx != -1:
diff --git a/nw/gui/statusbar.py b/nw/gui/statusbar.py
index 617bbbbe..555a1a2b 100644
--- a/nw/gui/statusbar.py
+++ b/nw/gui/statusbar.py
@@ -29,10 +29,10 @@ import logging
from time import time
+from PyQt5.QtCore import QLocale
from PyQt5.QtGui import QColor, QPainter
from PyQt5.QtWidgets import qApp, QStatusBar, QLabel, QAbstractButton
-from nw.core import NWSpellCheck
from nw.common import formatTime
logger = logging.getLogger(__name__)
@@ -147,19 +147,17 @@ class GuiMainStatus(QStatusBar):
qApp.processEvents()
return
- def setLanguage(self, theLanguage, theProvider=""):
+ def setLanguage(self, theLang):
"""Set the language code for the spell checker.
"""
- if theLanguage is None:
+ if theLang is None:
self.langText.setText(self.tr("None"))
- self.langText.setToolTip("")
else:
- self.langText.setText(NWSpellCheck.expandLanguage(theLanguage))
- self.langText.setToolTip(
- self.tr("{0}: {1}").format(
- self.tr("Provider"),
- theProvider if theProvider else self.tr("unknown"))
- )
+ qLocal = QLocale(theLang)
+ spLang = qLocal.nativeLanguageName().title()
+ spName = qLocal.bcp47Name()
+ self.langText.setText("%s (%s)" % (spLang, spName))
+
return
def setProjectStatus(self, isChanged):
diff --git a/tests/test_core/test_core_spell.py b/tests/test_core/test_core_spell.py
index 46ee1937..388d754b 100644
--- a/tests/test_core/test_core_spell.py
+++ b/tests/test_core/test_core_spell.py
@@ -46,11 +46,6 @@ def testCoreSpell_Super(monkeypatch, tmpDir, tmpConf):
assert spChk.checkWord("")
assert spChk.suggestWords("") == []
assert spChk.listDictionaries() == []
- assert spChk.describeDict() == ("", "")
-
- # Check language info
- assert NWSpellCheck.expandLanguage("en") == "English"
- assert NWSpellCheck.expandLanguage("en_GB") == "English (GB)"
# Add a word to the user's dictionary
assert spChk._readProjectDictionary("dummy") is False
@@ -92,7 +87,6 @@ def testCoreSpell_Enchant(monkeypatch, tmpDir, tmpConf):
assert spChk.checkWord("")
assert spChk.suggestWords("") == []
assert spChk.listDictionaries() == []
- assert spChk.describeDict() == ("", "")
monkeypatch.undo()
@@ -116,10 +110,6 @@ def testCoreSpell_Enchant(monkeypatch, tmpDir, tmpConf):
dList = spChk.listDictionaries()
assert len(dList) > 0
- aTag, aName = spChk.describeDict()
- assert aTag == "en"
- assert aName != ""
-
# END Test testCoreSpell_Enchant
@pytest.mark.core
@@ -180,9 +170,4 @@ def testCoreSpell_Simple(monkeypatch, tmpDir, tmpConf):
# List dictionaries
assert spChk.listDictionaries() == [("en", "English [%s]" % nwConst.SP_INTERNAL)]
- # Description
- aTag, aName = spChk.describeDict()
- assert aTag == "en"
- assert aName == nwConst.SP_INTERNAL
-
# END Test testCoreSpell_Simple