Rev 24777 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4430 | cbradney | 1 | /* |
2 | For general Scribus (>=1.3.2) copyright and licensing information please refer |
||
3 | to the COPYING file provided with the program. Following this notice may exist |
||
4 | a copyright and/or license notice that predates the release of Scribus 1.3.2 |
||
5 | for which a new license (GPL+exception) is in place. |
||
6 | */ |
||
1525 | cbradney | 7 | /*************************************************************************** |
8 | begin : Jan 2005 |
||
9 | copyright : (C) 2005 by Craig Bradney |
||
10 | email : cbradney@zip.com.au |
||
11 | ***************************************************************************/ |
||
12 | |||
13 | /*************************************************************************** |
||
14 | * * |
||
15 | * This program is free software; you can redistribute it and/or modify * |
||
16 | * it under the terms of the GNU General Public License as published by * |
||
17 | * the Free Software Foundation; either version 2 of the License, or * |
||
18 | * (at your option) any later version. * |
||
19 | * * |
||
20 | ***************************************************************************/ |
||
21 | |||
663 | cbradney | 22 | #include <iostream> |
24777 | jghali | 23 | |
17501 | craig | 24 | #include <QDebug> |
10223 | cbradney | 25 | #include <QDir> |
20259 | craig | 26 | #include <QFile> |
10223 | cbradney | 27 | #include <QFileInfo> |
28 | #include <QMap> |
||
29 | #include <QObject> |
||
30 | #include <QStringList> |
||
20259 | craig | 31 | #include <QTextStream> |
663 | cbradney | 32 | |
2688 | craig | 33 | #include "scconfig.h" |
663 | cbradney | 34 | #include "langmgr.h" |
1693 | craig | 35 | #include "scpaths.h" |
663 | cbradney | 36 | |
22563 | craig | 37 | LanguageManager* LanguageManager::m_instance = nullptr; |
18650 | jghali | 38 | |
22563 | craig | 39 | LanguageManager* LanguageManager::instance() |
12787 | pierre | 40 | { |
41 | if(!m_instance) |
||
42 | { |
||
43 | m_instance = new LanguageManager; |
||
44 | Q_ASSERT(m_instance); |
||
45 | m_instance->init(); |
||
46 | } |
||
47 | return m_instance; |
||
48 | } |
||
49 | |||
18650 | jghali | 50 | void LanguageManager::deleteInstance() |
51 | { |
||
22639 | craig | 52 | delete m_instance; |
22563 | craig | 53 | m_instance = nullptr; |
18650 | jghali | 54 | } |
55 | |||
17798 | craig | 56 | void LanguageManager::languageChange() |
57 | { |
||
20653 | craig | 58 | QList<LangDef> oldLangList = m_langTable; |
17801 | craig | 59 | generateLangList(); |
17858 | jghali | 60 | |
20653 | craig | 61 | for (int i = 0; i < m_langTable.count(); ++i) |
17858 | jghali | 62 | { |
20653 | craig | 63 | m_langTable[i].m_hyphAvailable = oldLangList[i].m_hyphAvailable; |
64 | m_langTable[i].m_hyphFile = oldLangList[i].m_hyphFile; |
||
17858 | jghali | 65 | |
20653 | craig | 66 | m_langTable[i].m_spellAvailable = oldLangList[i].m_spellAvailable; |
67 | m_langTable[i].m_spellFile = oldLangList[i].m_spellFile; |
||
17858 | jghali | 68 | |
20653 | craig | 69 | m_langTable[i].m_transAvailable = oldLangList[i].m_transAvailable; |
70 | m_langTable[i].m_transFile = oldLangList[i].m_transFile; |
||
17858 | jghali | 71 | } |
17798 | craig | 72 | } |
73 | |||
2010 | cbradney | 74 | void LanguageManager::init(bool generateInstalledList) |
663 | cbradney | 75 | { |
3776 | cbradney | 76 | //generateUntranslatedLangList(); |
663 | cbradney | 77 | generateLangList(); |
2010 | cbradney | 78 | if (generateInstalledList) |
17798 | craig | 79 | { |
80 | generateInstalledGUILangList(); |
||
81 | generateInstalledSpellLangList(); |
||
82 | generateInstalledHyphLangList(); |
||
83 | } |
||
663 | cbradney | 84 | } |
85 | |||
86 | void LanguageManager::generateLangList() |
||
87 | { |
||
12787 | pierre | 88 | // So internally language would always be manipulated as a code and otherwise presented translated. |
17798 | craig | 89 | //Build table; |
20653 | craig | 90 | m_langTable.clear(); |
21909 | craig | 91 | // Please keep this list sorted by language name. |
92 | m_langTable.append(LangDef("aiw", "", "Aari", QObject::tr("Aari"))); |
||
93 | m_langTable.append(LangDef("abq", "", "Abaza", QObject::tr("Abaza"))); |
||
21908 | craig | 94 | m_langTable.append(LangDef("ab", "", "Abkhazian", QObject::tr("Abkhazian"))); |
21294 | craig | 95 | m_langTable.append(LangDef("ach", "", "Acoli", QObject::tr("Acoli"))); |
96 | m_langTable.append(LangDef("ady", "", "Adyghe", QObject::tr("Adyghe"))); |
||
97 | m_langTable.append(LangDef("af", "af_ZA", "Afrikaans", QObject::tr("Afrikaans"))); |
||
21909 | craig | 98 | m_langTable.append(LangDef("aa", "", "Afar", QObject::tr("Afar"))); |
21294 | craig | 99 | m_langTable.append(LangDef("aio", "", "Aiton", QObject::tr("Aiton"))); |
100 | m_langTable.append(LangDef("ak", "", "Akan", QObject::tr("Akan"))); |
||
21909 | craig | 101 | m_langTable.append(LangDef("sq", "", "Albanian", QObject::tr("Albanian"))); |
102 | m_langTable.append(LangDef("atv", "alt", "Altai", QObject::tr("Altai"))); |
||
21294 | craig | 103 | m_langTable.append(LangDef("am", "", "Amharic", QObject::tr("Amharic"))); |
21909 | craig | 104 | m_langTable.append(LangDef("blo", "", "Anii", QObject::tr("Anii"))); |
21294 | craig | 105 | m_langTable.append(LangDef("ar", "", "Arabic", QObject::tr("Arabic"))); |
21909 | craig | 106 | m_langTable.append(LangDef("ar_dz", "", "Arabic (Algeria)", QObject::tr("Arabic (Algeria)"))); |
21908 | craig | 107 | m_langTable.append(LangDef("ar_bh", "", "Arabic (Bahrain)", QObject::tr("Arabic (Bahrain)"))); |
108 | m_langTable.append(LangDef("ar_eg", "", "Arabic (Egypt)", QObject::tr("Arabic (Egypt)"))); |
||
109 | m_langTable.append(LangDef("ar_iq", "", "Arabic (Iraq)", QObject::tr("Arabic (Iraq)"))); |
||
21910 | craig | 110 | m_langTable.append(LangDef("ar_jo", "", "Arabic (Jordan)", QObject::tr("Arabic (Jordan)"))); |
21908 | craig | 111 | m_langTable.append(LangDef("ar_kw", "", "Arabic (Kuwait)", QObject::tr("Arabic (Kuwait)"))); |
112 | m_langTable.append(LangDef("ar_lb", "", "Arabic (Lebanon)", QObject::tr("Arabic (Lebanon)"))); |
||
113 | m_langTable.append(LangDef("ar_ly", "", "Arabic (Libya)", QObject::tr("Arabic (Libya)"))); |
||
114 | m_langTable.append(LangDef("ar_ma", "", "Arabic (Morocco)", QObject::tr("Arabic (Morocco)"))); |
||
115 | m_langTable.append(LangDef("ar_om", "", "Arabic (Oman)", QObject::tr("Arabic (Oman)"))); |
||
116 | m_langTable.append(LangDef("ar_qa", "", "Arabic (Qatar)", QObject::tr("Arabic (Qatar)"))); |
||
117 | m_langTable.append(LangDef("ar_sa", "", "Arabic (Saudi Arabia)", QObject::tr("Arabic (Saudi Arabia)"))); |
||
118 | m_langTable.append(LangDef("ar_sd", "", "Arabic (Sudan)", QObject::tr("Arabic (Sudan)"))); |
||
119 | m_langTable.append(LangDef("ar_sy", "", "Arabic (Syria)", QObject::tr("Arabic (Syria)"))); |
||
120 | m_langTable.append(LangDef("ar_tn", "", "Arabic (Tunisia)", QObject::tr("Arabic (Tunisia)"))); |
||
21909 | craig | 121 | m_langTable.append(LangDef("ar_ae", "", "Arabic (UAE)", QObject::tr("Arabic (UAE)"))); |
21908 | craig | 122 | m_langTable.append(LangDef("ar_ye", "", "Arabic (Yemen)", QObject::tr("Arabic (Yemen)"))); |
21909 | craig | 123 | m_langTable.append(LangDef("an", "an_ES", "Aragonese", QObject::tr("Aragonese"))); |
124 | m_langTable.append(LangDef("hy", "", "Armenian", QObject::tr("Armenian"))); |
||
125 | m_langTable.append(LangDef("rup", "", "Aromanian", QObject::tr("Aromanian"))); |
||
22867 | jghali | 126 | m_langTable.append(LangDef("as", "as_IN", "Assamese", QObject::tr("Assamese"))); |
21294 | craig | 127 | m_langTable.append(LangDef("ast", "", "Asturian", QObject::tr("Asturian"))); |
128 | m_langTable.append(LangDef("ath", "", "Athapaskan", QObject::tr("Athapaskan"))); |
||
129 | m_langTable.append(LangDef("av", "", "Avaric", QObject::tr("Avaric"))); |
||
130 | m_langTable.append(LangDef("awa", "", "Awadhi", QObject::tr("Awadhi"))); |
||
131 | m_langTable.append(LangDef("ay", "", "Aymara", QObject::tr("Aymara"))); |
||
132 | m_langTable.append(LangDef("az", "aze", "Azerbaijani", QObject::tr("Azerbaijani"))); |
||
21909 | craig | 133 | m_langTable.append(LangDef("azj", "", "Azerbaijani (North)", QObject::tr("Azerbaijani (North)"))); |
21908 | craig | 134 | m_langTable.append(LangDef("azb", "", "Azerbaijani (South)", QObject::tr("Azerbaijani (South)"))); |
21909 | craig | 135 | m_langTable.append(LangDef("bfq", "", "Badaga", QObject::tr("Badaga"))); |
136 | m_langTable.append(LangDef("bfy", "", "Baghelkhandi", QObject::tr("Baghelkhandi"))); |
||
137 | m_langTable.append(LangDef("bgq", "", "Bagri", QObject::tr("Bagri"))); |
||
138 | m_langTable.append(LangDef("bqi", "", "Bakhtiari", QObject::tr("Bakhtiari"))); |
||
139 | m_langTable.append(LangDef("krc", "", "Balkar", QObject::tr("Balkar"))); |
||
140 | m_langTable.append(LangDef("bjt", "", "Balanta-Ganja", QObject::tr("Balanta-Ganja"))); |
||
141 | m_langTable.append(LangDef("ble", "", "Balanta-Kentohe", QObject::tr("Balanta-Kentohe"))); |
||
142 | m_langTable.append(LangDef("ban", "", "Balinese", QObject::tr("Balinese"))); |
||
143 | m_langTable.append(LangDef("bal", "", "Baluchi", QObject::tr("Baluchi"))); |
||
144 | m_langTable.append(LangDef("bft", "", "Balti", QObject::tr("Balti"))); |
||
145 | m_langTable.append(LangDef("bm", "", "Bambara", QObject::tr("Bambara"))); |
||
146 | m_langTable.append(LangDef("bai", "", "Bamileke", QObject::tr("Bamileke"))); |
||
147 | m_langTable.append(LangDef("bad", "", "Banda", QObject::tr("Banda"))); |
||
21908 | craig | 148 | m_langTable.append(LangDef("ba", "", "Bashkir", QObject::tr("Bashkir"))); |
21909 | craig | 149 | m_langTable.append(LangDef("eu", "", "Basque", QObject::tr("Basque"))); |
150 | m_langTable.append(LangDef("bts", "", "Batak Simalungun", QObject::tr("Batak Simalungun"))); |
||
21294 | craig | 151 | m_langTable.append(LangDef("bbc", "", "Batak Toba", QObject::tr("Batak Toba"))); |
23500 | jghali | 152 | m_langTable.append(LangDef("bci", "", "Baulé", QObject::tr("Baul\303\251"))); |
21909 | craig | 153 | m_langTable.append(LangDef("bar", "", "Bavarian", QObject::tr("Bavarian"))); |
21294 | craig | 154 | m_langTable.append(LangDef("bcq", "", "Bench", QObject::tr("Bench"))); |
155 | m_langTable.append(LangDef("bdy", "", "Bandjalang", QObject::tr("Bandjalang"))); |
||
21909 | craig | 156 | m_langTable.append(LangDef("bem", "", "Bemba", QObject::tr("Bemba"))); |
22332 | craig | 157 | m_langTable.append(LangDef("be", "be_BY", "Belarusian", QObject::tr("Belarusian"))); |
22867 | jghali | 158 | m_langTable.append(LangDef("bn", "bn_IN", "Bengali", QObject::tr("Bengali"))); |
21909 | craig | 159 | m_langTable.append(LangDef("bn_BD", "", "Bengali (Bangladesh)", QObject::tr("Bengali (Bangladesh)"))); |
21294 | craig | 160 | m_langTable.append(LangDef("ber", "", "Berber", QObject::tr("Berber"))); |
21909 | craig | 161 | m_langTable.append(LangDef("btb", "", "Beti (Cameroon)", QObject::tr("Beti (Cameroon)"))); |
23500 | jghali | 162 | m_langTable.append(LangDef("eot", "", "Beti (Côte d'Ivoire)", QObject::tr("Beti (C\303\264te d'Ivoire)"))); |
21294 | craig | 163 | m_langTable.append(LangDef("bhb", "", "Bhili", QObject::tr("Bhili"))); |
164 | m_langTable.append(LangDef("bho", "", "Bhojpuri", QObject::tr("Bhojpuri"))); |
||
165 | m_langTable.append(LangDef("bik", "", "Bikol", QObject::tr("Bikol"))); |
||
21909 | craig | 166 | m_langTable.append(LangDef("bcl", "", "Bikol (Central)", QObject::tr("Bikol (Central)"))); |
167 | m_langTable.append(LangDef("byn", "", "Bilen", QObject::tr("Bilen"))); |
||
21294 | craig | 168 | m_langTable.append(LangDef("bin", "", "Bini", QObject::tr("Bini"))); |
21909 | craig | 169 | m_langTable.append(LangDef("bpy", "", "Bishnupriya", QObject::tr("Bishnupriya"))); |
170 | m_langTable.append(LangDef("bi", "", "Bislama", QObject::tr("Bislama"))); |
||
21908 | craig | 171 | m_langTable.append(LangDef("bla", "", "Blackfoot", QObject::tr("Blackfoot"))); |
21294 | craig | 172 | m_langTable.append(LangDef("brx", "", "Bodo (India)", QObject::tr("Bodo (India)"))); |
21909 | craig | 173 | m_langTable.append(LangDef("pcc", "", "Bouyei", QObject::tr("Bouyei"))); |
21294 | craig | 174 | m_langTable.append(LangDef("bs_BA", "bs_BA", "Bosnian", QObject::tr("Bosnian"))); |
21909 | craig | 175 | m_langTable.append(LangDef("brh", "", "Brahui", QObject::tr("Brahui"))); |
176 | m_langTable.append(LangDef("bra", "", "Braj Bhasha", QObject::tr("Braj Bhasha"))); |
||
177 | m_langTable.append(LangDef("br", "br_FR", "Breton", QObject::tr("Breton"))); |
||
21294 | craig | 178 | m_langTable.append(LangDef("bug", "", "Buginese", QObject::tr("Buginese"))); |
21909 | craig | 179 | m_langTable.append(LangDef("bg", "bg_BG", "Bulgarian", QObject::tr("Bulgarian"))); |
180 | m_langTable.append(LangDef("my", "", "Burmese", QObject::tr("Burmese"))); |
||
181 | m_langTable.append(LangDef("frc", "", "Cajun French", QObject::tr("Cajun French"))); |
||
182 | m_langTable.append(LangDef("crx", "", "Carrier", QObject::tr("Carrier"))); |
||
21294 | craig | 183 | m_langTable.append(LangDef("ca", "", "Catalan", QObject::tr("Catalan"))); |
21909 | craig | 184 | m_langTable.append(LangDef("cts", "", "Catanduanes Bikol Northern", QObject::tr("Catanduanes Bikol Northern"))); |
185 | m_langTable.append(LangDef("bln", "", "Catanduanes Bikol Southern", QObject::tr("Catanduanes Bikol Southern"))); |
||
186 | m_langTable.append(LangDef("ceb", "", "Cebuano", QObject::tr("Cebuano"))); |
||
187 | m_langTable.append(LangDef("tzm", "", "Central Atlas Tamazight", QObject::tr("Central Atlas Tamazight"))); |
||
188 | m_langTable.append(LangDef("ch", "", "Chamorro", QObject::tr("Chamorro"))); |
||
189 | m_langTable.append(LangDef("hne", "", "Chattisgarhi", QObject::tr("Chattisgarhi"))); |
||
21908 | craig | 190 | m_langTable.append(LangDef("cbk", "", "Chavacano", QObject::tr("Chavacano"))); |
191 | m_langTable.append(LangDef("ce", "", "Chechen", QObject::tr("Chechen"))); |
||
21909 | craig | 192 | m_langTable.append(LangDef("chr", "", "Cherokee", QObject::tr("Cherokee"))); |
193 | m_langTable.append(LangDef("ny", "", "Chewa", QObject::tr("Chewa"))); |
||
194 | m_langTable.append(LangDef("chy", "", "Cheyenne", QObject::tr("Cheyenne"))); |
||
21908 | craig | 195 | m_langTable.append(LangDef("cgg", "", "Chiga", QObject::tr("Chiga"))); |
22550 | jghali | 196 | m_langTable.append(LangDef("zh", "zh_CN", "Chinese", QObject::tr("Chinese"))); |
21909 | craig | 197 | m_langTable.append(LangDef("zh_TW", "", "Chinese (Trad.)", QObject::tr("Chinese (Trad.)"))); |
198 | m_langTable.append(LangDef("chp", "", "Chipewyan", QObject::tr("Chipewyan"))); |
||
199 | m_langTable.append(LangDef("ctg", "", "Chittagonian", QObject::tr("Chittagonian"))); |
||
21908 | craig | 200 | m_langTable.append(LangDef("cho", "", "Choctaw", QObject::tr("Choctaw"))); |
21294 | craig | 201 | m_langTable.append(LangDef("ckt", "", "Chukchi", QObject::tr("Chukchi"))); |
21909 | craig | 202 | m_langTable.append(LangDef("cu", "", "Church Slavic", QObject::tr("Church Slavic"))); |
203 | m_langTable.append(LangDef("cv", "", "Chuvash", QObject::tr("Chuvash"))); |
||
204 | m_langTable.append(LangDef("swb", "", "Comorian", QObject::tr("Comorian"))); |
||
21294 | craig | 205 | m_langTable.append(LangDef("cop", "", "Coptic", QObject::tr("Coptic"))); |
21909 | craig | 206 | m_langTable.append(LangDef("kw", "", "Cornish", QObject::tr("Cornish"))); |
21294 | craig | 207 | m_langTable.append(LangDef("cr", "", "Cree", QObject::tr("Cree"))); |
21909 | craig | 208 | m_langTable.append(LangDef("crm", "", "Cree (Moose)", QObject::tr("Cree (Moose)"))); |
209 | m_langTable.append(LangDef("crl", "", "Cree (East Northern)", QObject::tr("Cree (East Southern)"))); |
||
210 | m_langTable.append(LangDef("crj", "", "Cree (East Southern)", QObject::tr("Cree (East Southern)"))); |
||
211 | m_langTable.append(LangDef("cwd", "", "Cree (Woods)", QObject::tr("Woods Cree"))); |
||
212 | m_langTable.append(LangDef("mus", "", "Creek", QObject::tr("Creek"))); |
||
21908 | craig | 213 | m_langTable.append(LangDef("crh", "", "Crimean Tatar", QObject::tr("Crimean Tatar"))); |
22332 | craig | 214 | m_langTable.append(LangDef("hr", "hr_HR", "Croatian", QObject::tr("Croatian"))); |
21909 | craig | 215 | m_langTable.append(LangDef("quz", "", "Cusco Quechua", QObject::tr("Cusco Quechua"))); |
21908 | craig | 216 | m_langTable.append(LangDef("cs", "cs_CZ", "Czech", QObject::tr("Czech"))); |
21909 | craig | 217 | m_langTable.append(LangDef("ada", "", "Dangme", QObject::tr("Dangme"))); |
21294 | craig | 218 | m_langTable.append(LangDef("da", "da_DK", "Danish", QObject::tr("Danish"))); |
219 | m_langTable.append(LangDef("dar", "", "Dargwa", QObject::tr("Dargwa"))); |
||
21909 | craig | 220 | m_langTable.append(LangDef("prs", "", "Dari", QObject::tr("Afghan Dari"))); |
21294 | craig | 221 | m_langTable.append(LangDef("dhd", "", "Dhundari", QObject::tr("Dhundari"))); |
222 | m_langTable.append(LangDef("din", "", "Dinka", QObject::tr("Dinka"))); |
||
223 | m_langTable.append(LangDef("diq", "", "Dimli", QObject::tr("Dimli"))); |
||
21909 | craig | 224 | m_langTable.append(LangDef("dgo", "", "Dogri", QObject::tr("Dogri"))); |
225 | m_langTable.append(LangDef("nl", "nl_NL", "Dutch", QObject::tr("Dutch"))); |
||
21294 | craig | 226 | m_langTable.append(LangDef("dz", "", "Dzongkha", QObject::tr("Dzongkha"))); |
21909 | craig | 227 | m_langTable.append(LangDef("igb", "", "Ebira", QObject::tr("Ebira"))); |
21348 | jghali | 228 | m_langTable.append(LangDef("efi", "", "Efik", QObject::tr("Efik"))); |
21294 | craig | 229 | m_langTable.append(LangDef("en_AU", "", "English (Australia)", QObject::tr("English (Australia)"))); |
230 | m_langTable.append(LangDef("en_CA", "", "English (Canada)", QObject::tr("English (Canada)"))); |
||
21909 | craig | 231 | m_langTable.append(LangDef("en_NZ", "", "English (New Zealand)", QObject::tr("English (New Zealand)"))); |
232 | m_langTable.append(LangDef("en_ZA", "", "English (South Africa)", QObject::tr("English (South Africa)"))); |
||
21908 | craig | 233 | m_langTable.append(LangDef("en_GB", "en", "English (UK)", QObject::tr("English (UK)"))); |
21294 | craig | 234 | m_langTable.append(LangDef("en_US", "", "English (US)", QObject::tr("English (US)"))); |
21371 | craig | 235 | m_langTable.append(LangDef("en_US", "", "English", QObject::tr("English"))); |
21909 | craig | 236 | m_langTable.append(LangDef("ang", "", "English (Old 450-1100)", QObject::tr("English (Old 450-1100)"))); |
21294 | craig | 237 | m_langTable.append(LangDef("eo", "", "Esperanto", QObject::tr("Esperanto"))); |
21909 | craig | 238 | m_langTable.append(LangDef("myv", "", "Erzya", QObject::tr("Erzya"))); |
21294 | craig | 239 | m_langTable.append(LangDef("et", "et_EE", "Estonian", QObject::tr("Estonian"))); |
21909 | craig | 240 | m_langTable.append(LangDef("ekk", "", "Estonian (Standard)", QObject::tr("Estonian (Standard)"))); |
21294 | craig | 241 | m_langTable.append(LangDef("eve", "", "Even", QObject::tr("Even"))); |
242 | m_langTable.append(LangDef("evn", "", "Evenki", QObject::tr("Evenki"))); |
||
21909 | craig | 243 | m_langTable.append(LangDef("ee", "", "Ewe", QObject::tr("Ewe"))); |
244 | m_langTable.append(LangDef("fo", "", "Faroese", QObject::tr("Faroese"))); |
||
245 | m_langTable.append(LangDef("fj", "", "Fijian", QObject::tr("Fijian"))); |
||
246 | m_langTable.append(LangDef("fil", "", "Filipino", QObject::tr("Filipino"))); |
||
21908 | craig | 247 | m_langTable.append(LangDef("fi", "", "Finnish", QObject::tr("Finnish"))); |
21294 | craig | 248 | m_langTable.append(LangDef("fon", "", "Fon", QObject::tr("Fon"))); |
21909 | craig | 249 | m_langTable.append(LangDef("myq", "", "Forest Maninka", QObject::tr("Forest Maninka"))); |
23500 | jghali | 250 | m_langTable.append(LangDef("frp", "", "Franco-Provençal", QObject::tr("Franco-Proven\303\247al"))); |
21908 | craig | 251 | m_langTable.append(LangDef("fr", "fr_FR", "French", QObject::tr("French"))); |
21909 | craig | 252 | m_langTable.append(LangDef("fy", "", "Frisian", QObject::tr("Frisian"))); |
21908 | craig | 253 | m_langTable.append(LangDef("fur", "", "Friulian", QObject::tr("Friulian"))); |
21909 | craig | 254 | m_langTable.append(LangDef("ff", "", "Fulah", QObject::tr("Fulah"))); |
21294 | craig | 255 | m_langTable.append(LangDef("gaa", "", "Ga", QObject::tr("Ga"))); |
256 | m_langTable.append(LangDef("gag", "", "Gagauz", QObject::tr("Gagauz"))); |
||
21909 | craig | 257 | m_langTable.append(LangDef("gl", "gl_ES", "Galician", QObject::tr("Galician"))); |
258 | m_langTable.append(LangDef("lg", "", "Ganda", QObject::tr("Ganda"))); |
||
21294 | craig | 259 | m_langTable.append(LangDef("gbm", "", "Garhwali", QObject::tr("Garhwali"))); |
21909 | craig | 260 | m_langTable.append(LangDef("grt", "", "Garo", QObject::tr("Garo"))); |
21294 | craig | 261 | m_langTable.append(LangDef("gez", "", "Ge'ez", QObject::tr("Ge'ez"))); |
21909 | craig | 262 | m_langTable.append(LangDef("ka", "", "Georgian", QObject::tr("Georgian"))); |
263 | m_langTable.append(LangDef("de", "de_DE", "German", QObject::tr("German"))); |
||
264 | m_langTable.append(LangDef("de_AT", "", "German (Austria)", QObject::tr("German (Austria)"))); |
||
265 | m_langTable.append(LangDef("de_CH", "", "German (Swiss)", QObject::tr("German (Swiss)"))); |
||
266 | m_langTable.append(LangDef("de_1901", "", "German (Trad.)", QObject::tr("German (Trad.)"))); |
||
21294 | craig | 267 | m_langTable.append(LangDef("glk", "", "Gilaki", QObject::tr("Gilaki"))); |
21909 | craig | 268 | m_langTable.append(LangDef("niv", "", "Gilyak", QObject::tr("Gilyak"))); |
21294 | craig | 269 | m_langTable.append(LangDef("gog", "", "Gogo", QObject::tr("Gogo"))); |
270 | m_langTable.append(LangDef("gon", "", "Gondi", QObject::tr("Gondi"))); |
||
21909 | craig | 271 | m_langTable.append(LangDef("gno", "", "Gondi Northern", QObject::tr("Gondi Northern"))); |
272 | m_langTable.append(LangDef("ggo", "", "Gondi Southern", QObject::tr("Gondi Southern"))); |
||
273 | m_langTable.append(LangDef("el", "", "Greek", QObject::tr("Greek"))); |
||
274 | m_langTable.append(LangDef("gn", "", "Guarani", QObject::tr("Guarani"))); |
||
21294 | craig | 275 | m_langTable.append(LangDef("gu", "gu_IN", "Gujarati", QObject::tr("Gujarati"))); |
276 | m_langTable.append(LangDef("guk", "", "Gumuz", QObject::tr("Gumuz"))); |
||
277 | m_langTable.append(LangDef("guz", "", "Gusii", QObject::tr("Gusii"))); |
||
21909 | craig | 278 | m_langTable.append(LangDef("ht", "", "Haitian Creole", QObject::tr("Haitian Creole"))); |
279 | m_langTable.append(LangDef("amf", "", "Hamer-Banna", QObject::tr("Hamer-Banna"))); |
||
280 | m_langTable.append(LangDef("har", "", "Harari", QObject::tr("Harari"))); |
||
281 | m_langTable.append(LangDef("hoj", "", "Harauti", QObject::tr("Harauti"))); |
||
282 | m_langTable.append(LangDef("bgc", "", "Haryanvi", QObject::tr("Haryanvi"))); |
||
21908 | craig | 283 | m_langTable.append(LangDef("ha", "", "Hausa", QObject::tr("Hausa"))); |
21294 | craig | 284 | m_langTable.append(LangDef("haw", "", "Hawaiian", QObject::tr("Hawaiian"))); |
285 | m_langTable.append(LangDef("hay", "", "Haya", QObject::tr("Haya"))); |
||
286 | m_langTable.append(LangDef("haz", "", "Hazaragi", QObject::tr("Hazaragi"))); |
||
287 | m_langTable.append(LangDef("he", "he_IL", "Hebrew", QObject::tr("Hebrew"))); |
||
21909 | craig | 288 | m_langTable.append(LangDef("hz", "", "Herero", QObject::tr("Herero"))); |
289 | m_langTable.append(LangDef("mrj", "", "High Mari", QObject::tr("High Mari"))); |
||
290 | m_langTable.append(LangDef("hil", "", "Hiligaynon", QObject::tr("Hiligaynon"))); |
||
22867 | jghali | 291 | m_langTable.append(LangDef("hi", "hi_IN", "Hindi", QObject::tr("Hindi"))); |
21909 | craig | 292 | m_langTable.append(LangDef("hno", "", "Hindko (Northern)", QObject::tr("Hindko (Northern)"))); |
21908 | craig | 293 | m_langTable.append(LangDef("hnd", "", "Hindko (Southern)", QObject::tr("Hindko (Southern)"))); |
21294 | craig | 294 | m_langTable.append(LangDef("ho", "", "Hiri Motu", QObject::tr("Hiri Motu"))); |
21909 | craig | 295 | m_langTable.append(LangDef("mww", "", "Hmong Daw", QObject::tr("Hmong Daw"))); |
21294 | craig | 296 | m_langTable.append(LangDef("hoc", "", "Ho", QObject::tr("Ho"))); |
297 | m_langTable.append(LangDef("hu", "hu_HU", "Hungarian", QObject::tr("Hungarian"))); |
||
298 | m_langTable.append(LangDef("ibb", "", "Ibibio", QObject::tr("Ibibio"))); |
||
21909 | craig | 299 | m_langTable.append(LangDef("is", "", "Icelandic", QObject::tr("Icelandic"))); |
300 | m_langTable.append(LangDef("io", "", "Ido", QObject::tr("Ido"))); |
||
21294 | craig | 301 | m_langTable.append(LangDef("ig", "", "Igbo", QObject::tr("Igbo"))); |
302 | m_langTable.append(LangDef("ijo", "", "Ijo", QObject::tr("Ijo"))); |
||
303 | m_langTable.append(LangDef("ilo", "", "Ilokano", QObject::tr("Ilokano"))); |
||
21909 | craig | 304 | m_langTable.append(LangDef("id", "", "Indonesian", QObject::tr("Indonesian"))); |
21294 | craig | 305 | m_langTable.append(LangDef("inh", "", "Ingush", QObject::tr("Ingush"))); |
21909 | craig | 306 | m_langTable.append(LangDef("ia", "", "Interlingua", QObject::tr("Interlingua"))); |
307 | m_langTable.append(LangDef("iu", "", "Inuktitut", QObject::tr("Inuktitut"))); |
||
308 | m_langTable.append(LangDef("ik", "", "Inupiaq", QObject::tr("Inupiaq"))); |
||
309 | m_langTable.append(LangDef("ga", "", "Irish", QObject::tr("Irish"))); |
||
310 | m_langTable.append(LangDef("sga", "", "Irish Old (to 900)", QObject::tr("Irish Old (to 900)"))); |
||
21908 | craig | 311 | m_langTable.append(LangDef("it", "it_IT", "Italian", QObject::tr("Italian"))); |
21909 | craig | 312 | m_langTable.append(LangDef("ijc", "", "Izon", QObject::tr("Izon"))); |
313 | m_langTable.append(LangDef("jam", "", "Jamaican Creole English", QObject::tr("Jamaican Creole English"))); |
||
21908 | craig | 314 | m_langTable.append(LangDef("ja", "", "Japanese", QObject::tr("Japanese"))); |
21294 | craig | 315 | m_langTable.append(LangDef("jv", "", "Javanese", QObject::tr("Javanese"))); |
21909 | craig | 316 | m_langTable.append(LangDef("dyu", "", "Jula", QObject::tr("Jula"))); |
317 | m_langTable.append(LangDef("quc", "", "K'iche'", QObject::tr("K'iche'"))); |
||
318 | m_langTable.append(LangDef("kbd", "", "Kabardian", QObject::tr("Kabardian"))); |
||
21294 | craig | 319 | m_langTable.append(LangDef("kab", "", "Kabyle", QObject::tr("Kabyle"))); |
21909 | craig | 320 | m_langTable.append(LangDef("kl", "", "Kalaallisut", QObject::tr("Kalaallisut"))); |
321 | m_langTable.append(LangDef("xal", "", "Kalmyk", QObject::tr("Kalmyk"))); |
||
322 | m_langTable.append(LangDef("kln", "", "Kalenjin", QObject::tr("Kalenjin"))); |
||
21294 | craig | 323 | m_langTable.append(LangDef("kam", "", "Kamba (Kenya)", QObject::tr("Kamba (Kenya)"))); |
21909 | craig | 324 | m_langTable.append(LangDef("bjj", "", "Kanauji", QObject::tr("Kanauji"))); |
22867 | jghali | 325 | m_langTable.append(LangDef("kn", "kn_IN", "Kannada", QObject::tr("Kannada"))); |
21909 | craig | 326 | m_langTable.append(LangDef("kr", "", "Kanuri", QObject::tr("Kanuri"))); |
327 | m_langTable.append(LangDef("pam", "", "Kapampangan", QObject::tr("Kapampangan"))); |
||
328 | m_langTable.append(LangDef("kdr", "", "Karaim", QObject::tr("Karaim"))); |
||
329 | m_langTable.append(LangDef("kaa", "", "Karakalpak", QObject::tr("Karakalpak"))); |
||
330 | m_langTable.append(LangDef("krl", "", "Karelian", QObject::tr("Karelian"))); |
||
21908 | craig | 331 | m_langTable.append(LangDef("kar", "", "Karen", QObject::tr("Karen"))); |
21294 | craig | 332 | m_langTable.append(LangDef("kfr", "", "Kachchi", QObject::tr("Kachchi"))); |
21909 | craig | 333 | m_langTable.append(LangDef("ks", "", "Kashmiri", QObject::tr("Kashmiri"))); |
334 | m_langTable.append(LangDef("csb", "", "Kashubian", QObject::tr("Kashubian"))); |
||
335 | m_langTable.append(LangDef("kyu", "", "Kayah", QObject::tr("Kayah"))); |
||
336 | m_langTable.append(LangDef("kk", "", "Kazakh", QObject::tr("Kazakh"))); |
||
337 | m_langTable.append(LangDef("kjh", "", "Khakass", QObject::tr("Khakass"))); |
||
338 | m_langTable.append(LangDef("kht", "", "Khamti", QObject::tr("Khamti"))); |
||
21908 | craig | 339 | m_langTable.append(LangDef("kha", "", "Khasi", QObject::tr("Khasi"))); |
21909 | craig | 340 | m_langTable.append(LangDef("km", "", "Khmer", QObject::tr("Khmer"))); |
21294 | craig | 341 | m_langTable.append(LangDef("khw", "", "Khowar", QObject::tr("Khowar"))); |
342 | m_langTable.append(LangDef("ki", "", "Kikuyu", QObject::tr("Kikuyu"))); |
||
21909 | craig | 343 | m_langTable.append(LangDef("sjd", "", "Kildin Sami", QObject::tr("Kildin Sami"))); |
21294 | craig | 344 | m_langTable.append(LangDef("kmb", "", "Kimbundu", QObject::tr("Kimbundu"))); |
21909 | craig | 345 | m_langTable.append(LangDef("rw", "", "Kinyarwanda", QObject::tr("Kinyarwanda"))); |
346 | m_langTable.append(LangDef("mwk", "", "Kita Maninkakan", QObject::tr("Kita Maninkakan"))); |
||
347 | m_langTable.append(LangDef("kex", "", "Kituba (Congo)", QObject::tr("Kituba (Congo)"))); |
||
348 | m_langTable.append(LangDef("kex", "", "Kokni", QObject::tr("Kokni"))); |
||
23500 | jghali | 349 | m_langTable.append(LangDef("ksh", "", "Kölsch", QObject::tr("K\303\266lsch"))); |
21909 | craig | 350 | m_langTable.append(LangDef("kv", "", "Komi", QObject::tr("Komi"))); |
351 | m_langTable.append(LangDef("koi", "", "Komi-Permyak", QObject::tr("Komi-Permyak"))); |
||
352 | m_langTable.append(LangDef("kpv", "", "Komi-Zyrian", QObject::tr("Komi-Zyrian"))); |
||
21908 | craig | 353 | m_langTable.append(LangDef("kmw", "", "Komo (Congo)", QObject::tr("Komo (Congo)"))); |
21909 | craig | 354 | m_langTable.append(LangDef("xom", "", "Komo (Sudan)", QObject::tr("Komo (Sudan)"))); |
355 | m_langTable.append(LangDef("kxc", "", "Komso", QObject::tr("Komso"))); |
||
356 | m_langTable.append(LangDef("kg", "", "Kongo", QObject::tr("Kongo"))); |
||
357 | m_langTable.append(LangDef("kok", "", "Konkani", QObject::tr("Konkani"))); |
||
358 | m_langTable.append(LangDef("kqy", "", "Koorete", QObject::tr("Koorete"))); |
||
21908 | craig | 359 | m_langTable.append(LangDef("ko", "", "Korean", QObject::tr("Korean"))); |
21909 | craig | 360 | m_langTable.append(LangDef("kpy", "", "Koryak", QObject::tr("Koryak"))); |
361 | m_langTable.append(LangDef("mku", "", "Konyanka Maninka", QObject::tr("Konyanka Maninka"))); |
||
21908 | craig | 362 | m_langTable.append(LangDef("kpe", "", "Kpelle", QObject::tr("Kpelle"))); |
21294 | craig | 363 | m_langTable.append(LangDef("kri", "", "Krio", QObject::tr("Krio"))); |
21909 | craig | 364 | m_langTable.append(LangDef("kxu", "", "Kui (India)", QObject::tr("Kui (India)"))); |
365 | m_langTable.append(LangDef("kvd", "", "Kui (Indonesia)", QObject::tr("Kui (Indonesia)"))); |
||
366 | m_langTable.append(LangDef("kfy", "", "Kumaoni", QObject::tr("Kumaoni"))); |
||
367 | m_langTable.append(LangDef("kum", "", "Kumyk", QObject::tr("Kumyk"))); |
||
368 | m_langTable.append(LangDef("zum", "", "Kumzari", QObject::tr("Kumzari"))); |
||
369 | m_langTable.append(LangDef("ku", "", "Kurdish", QObject::tr("Kurdish"))); |
||
370 | m_langTable.append(LangDef("ckb", "", "Kurdish (Sorani)", QObject::tr("Kurdish (Sorani)"))); |
||
21908 | craig | 371 | m_langTable.append(LangDef("kru", "", "Kurukh", QObject::tr("Kurukh"))); |
21909 | craig | 372 | m_langTable.append(LangDef("kdt", "", "Kuy", QObject::tr("Kuy"))); |
373 | m_langTable.append(LangDef("kj", "", "Kwanyama", QObject::tr("Kwanyama"))); |
||
21294 | craig | 374 | m_langTable.append(LangDef("ky", "", "Kyrgyz", QObject::tr("Kyrgyz"))); |
21909 | craig | 375 | m_langTable.append(LangDef("lbj", "", "Ladakhi", QObject::tr("Ladakhi"))); |
376 | m_langTable.append(LangDef("lld", "", "Ladin", QObject::tr("Ladin"))); |
||
21294 | craig | 377 | m_langTable.append(LangDef("lad", "", "Ladino", QObject::tr("Ladino"))); |
378 | m_langTable.append(LangDef("lbe", "", "Lak", QObject::tr("Lak"))); |
||
379 | m_langTable.append(LangDef("lki", "", "Laki", QObject::tr("Laki"))); |
||
380 | m_langTable.append(LangDef("lmn", "", "Lambani", QObject::tr("Lambani"))); |
||
21909 | craig | 381 | m_langTable.append(LangDef("ljp", "", "Lampung Api", QObject::tr("Lampung Api"))); |
21294 | craig | 382 | m_langTable.append(LangDef("lmo", "", "Lombard", QObject::tr("Lombard"))); |
21909 | craig | 383 | m_langTable.append(LangDef("lo", "", "Lao", QObject::tr("Lao"))); |
384 | m_langTable.append(LangDef("la", "", "Latin", QObject::tr("Latin"))); |
||
385 | m_langTable.append(LangDef("lv", "", "Latvian", QObject::tr("Latvian"))); |
||
386 | m_langTable.append(LangDef("lzz", "", "Laz", QObject::tr("Laz"))); |
||
387 | m_langTable.append(LangDef("lez", "", "Lezgi", QObject::tr("Lezgi"))); |
||
388 | m_langTable.append(LangDef("lij", "", "Ligurian", QObject::tr("Ligurian"))); |
||
389 | m_langTable.append(LangDef("lif", "", "Limbu", QObject::tr("Limbu"))); |
||
390 | m_langTable.append(LangDef("li", "", "Limburgish", QObject::tr("Limburgish"))); |
||
21908 | craig | 391 | m_langTable.append(LangDef("ln", "", "Lingala", QObject::tr("Lingala"))); |
21909 | craig | 392 | m_langTable.append(LangDef("lis", "", "Lisu", QObject::tr("Lisu"))); |
21294 | craig | 393 | m_langTable.append(LangDef("lt", "lt_LT", "Lithuanian", QObject::tr("Lithuanian"))); |
21909 | craig | 394 | m_langTable.append(LangDef("jbo", "", "Lojban", QObject::tr("Lojban"))); |
395 | m_langTable.append(LangDef("ngl", "", "Lomwe", QObject::tr("Lomwe"))); |
||
396 | m_langTable.append(LangDef("nds", "", "Low German", QObject::tr("Low German"))); |
||
397 | m_langTable.append(LangDef("mhr", "", "Low Mari", QObject::tr("Low Mari"))); |
||
398 | m_langTable.append(LangDef("dsb", "", "Lower Sorbian", QObject::tr("Lower Sorbian"))); |
||
399 | m_langTable.append(LangDef("lb", "", "Luxembourgish", QObject::tr("Luxembourgish"))); |
||
23500 | jghali | 400 | m_langTable.append(LangDef("khb", "", "Lü", QObject::tr("L\303\274"))); |
21909 | craig | 401 | m_langTable.append(LangDef("lua", "", "Luba-Kasai", QObject::tr("Luba-Kasai"))); |
21908 | craig | 402 | m_langTable.append(LangDef("lu", "", "Luba-Katanga", QObject::tr("Luba-Katanga"))); |
21294 | craig | 403 | m_langTable.append(LangDef("luo", "", "Luo (Kenya and Tanzania)",QObject::tr("Luo (Kenya and Tanzania)"))); |
21909 | craig | 404 | m_langTable.append(LangDef("lrc", "", "Luri (Northern)", QObject::tr("Luri (Northern)"))); |
21294 | craig | 405 | m_langTable.append(LangDef("luz", "", "Luri (Southern)", QObject::tr("Luri (Southern)"))); |
21909 | craig | 406 | m_langTable.append(LangDef("mk", "", "Macedonian", QObject::tr("Macedonian"))); |
21294 | craig | 407 | m_langTable.append(LangDef("mad", "", "Madurese", QObject::tr("Madurese"))); |
408 | m_langTable.append(LangDef("mag", "", "Magahi", QObject::tr("Magahi"))); |
||
21909 | craig | 409 | m_langTable.append(LangDef("knn", "", "Maharashtrian Konkani", QObject::tr("Maharashtrian Konkani"))); |
21294 | craig | 410 | m_langTable.append(LangDef("mai", "", "Maithili", QObject::tr("Maithili"))); |
21909 | craig | 411 | m_langTable.append(LangDef("mpe", "", "Majang", QObject::tr("Majang"))); |
21294 | craig | 412 | m_langTable.append(LangDef("mak", "", "Makasar", QObject::tr("Makasar"))); |
21909 | craig | 413 | m_langTable.append(LangDef("vmw", "", "Makhuwa", QObject::tr("Makhuwa"))); |
414 | m_langTable.append(LangDef("kde", "", "Makonde", QObject::tr("Makonde"))); |
||
24137 | craig | 415 | m_langTable.append(LangDef("ms", "ms_MY", "Malay", QObject::tr("Malay"))); |
21909 | craig | 416 | m_langTable.append(LangDef("mg", "", "Malagasy", QObject::tr("Malagasy"))); |
417 | m_langTable.append(LangDef("ml", "ml_IN", "Malayalam", QObject::tr("Malayalam"))); |
||
418 | m_langTable.append(LangDef("dv", "", "Maldivian", QObject::tr("Maldivian"))); |
||
419 | m_langTable.append(LangDef("mdy", "", "Male (Ethiopia)", QObject::tr("Male (Ethiopia)"))); |
||
420 | m_langTable.append(LangDef("mdc", "", "Male (Papua New Guinea)", QObject::tr("Male (Papua New Guinea)"))); |
||
421 | m_langTable.append(LangDef("mt", "", "Maltese", QObject::tr("Maltese"))); |
||
422 | m_langTable.append(LangDef("mi", "", "Maori", QObject::tr("Maori"))); |
||
21908 | craig | 423 | m_langTable.append(LangDef("man", "", "Manding", QObject::tr("Manding"))); |
21909 | craig | 424 | m_langTable.append(LangDef("mnc", "", "Manchu", QObject::tr("Manchu"))); |
21908 | craig | 425 | m_langTable.append(LangDef("mdr", "", "Mandar", QObject::tr("Mandar"))); |
21909 | craig | 426 | m_langTable.append(LangDef("mnk", "", "Mandinka", QObject::tr("Mandinka"))); |
427 | m_langTable.append(LangDef("mni", "", "Manipuri", QObject::tr("Manipuri"))); |
||
428 | m_langTable.append(LangDef("emk", "", "Maninkakan (Eastern)", QObject::tr("Maninkakan (Eastern)"))); |
||
429 | m_langTable.append(LangDef("mlq", "", "Maninkakan (Western)", QObject::tr("Maninkakan (Western)"))); |
||
430 | m_langTable.append(LangDef("mns", "", "Mansi", QObject::tr("Mansi"))); |
||
431 | m_langTable.append(LangDef("gv", "", "Manx", QObject::tr("Manx"))); |
||
22867 | jghali | 432 | m_langTable.append(LangDef("mr", "mr_IN", "Marathi", QObject::tr("Marathi"))); |
21909 | craig | 433 | m_langTable.append(LangDef("mh", "", "Marshallese", QObject::tr("Marshallese"))); |
434 | m_langTable.append(LangDef("mwr", "", "Marwari", QObject::tr("Marwari"))); |
||
435 | m_langTable.append(LangDef("mve", "", "Marwari (Pakistan)", QObject::tr("Marwari (Pakistan)"))); |
||
436 | m_langTable.append(LangDef("mzn", "", "Mazanderani", QObject::tr("Mazanderani"))); |
||
21908 | craig | 437 | m_langTable.append(LangDef("men", "", "Mende (Sierra Leone)", QObject::tr("Mende (Sierra Leone)"))); |
21909 | craig | 438 | m_langTable.append(LangDef("mym", "", "Me'en", QObject::tr("Me'en"))); |
21908 | craig | 439 | m_langTable.append(LangDef("mer", "", "Meru", QObject::tr("Meru"))); |
21909 | craig | 440 | m_langTable.append(LangDef("wry", "", "Merwari", QObject::tr("Merwari"))); |
441 | m_langTable.append(LangDef("mtr", "", "Mewari", QObject::tr("Mewari"))); |
||
442 | m_langTable.append(LangDef("rwr", "", "Mewari (India)", QObject::tr("Mewari (India)"))); |
||
443 | m_langTable.append(LangDef("wtm", "", "Mewati", QObject::tr("Mewati"))); |
||
21908 | craig | 444 | m_langTable.append(LangDef("min", "", "Minangkabau", QObject::tr("Minangkabau"))); |
21909 | craig | 445 | m_langTable.append(LangDef("mwl", "", "Mirandese", QObject::tr("Mirandese"))); |
446 | m_langTable.append(LangDef("lus", "", "Mizo", QObject::tr("Mizo"))); |
||
21908 | craig | 447 | m_langTable.append(LangDef("mnw", "", "Mon", QObject::tr("Mon"))); |
21909 | craig | 448 | m_langTable.append(LangDef("moh", "", "Mohawk", QObject::tr("Mohawk"))); |
449 | m_langTable.append(LangDef("mdf", "", "Moksha", QObject::tr("Moksha"))); |
||
21908 | craig | 450 | m_langTable.append(LangDef("mo", "", "Moldavian", QObject::tr("Moldavian"))); |
21909 | craig | 451 | m_langTable.append(LangDef("mn_MN", "", "Mongolian", QObject::tr("Mongolian"))); |
452 | m_langTable.append(LangDef("mfe", "", "Morisyen", QObject::tr("Morisyen"))); |
||
21908 | craig | 453 | m_langTable.append(LangDef("mos", "", "Mossi", QObject::tr("Mossi"))); |
21909 | craig | 454 | m_langTable.append(LangDef("unr", "", "Mundari", QObject::tr("Mundari"))); |
455 | m_langTable.append(LangDef("nqo", "", "N'Ko", QObject::tr("N'Ko"))); |
||
456 | m_langTable.append(LangDef("nah", "", "Nahuatl", QObject::tr("Nahuatl"))); |
||
457 | m_langTable.append(LangDef("gld", "", "Nanai", QObject::tr("Nanai"))); |
||
458 | m_langTable.append(LangDef("nsk", "", "Naskapi", QObject::tr("Naskapi"))); |
||
21908 | craig | 459 | m_langTable.append(LangDef("na", "", "Nauru", QObject::tr("Nauru"))); |
21909 | craig | 460 | m_langTable.append(LangDef("nv", "", "Navajo", QObject::tr("Navajo"))); |
461 | m_langTable.append(LangDef("ndc", "", "Ndau", QObject::tr("Ndau"))); |
||
462 | m_langTable.append(LangDef("nd", "", "Ndebele North", QObject::tr("North Ndebele"))); |
||
463 | m_langTable.append(LangDef("nr", "", "Ndebele South", QObject::tr("South Ndebele"))); |
||
464 | m_langTable.append(LangDef("ng", "", "Ndonga", QObject::tr("Ndonga"))); |
||
21908 | craig | 465 | m_langTable.append(LangDef("nap", "", "Neapolitan", QObject::tr("Neapolitan"))); |
21294 | craig | 466 | m_langTable.append(LangDef("ne_NP", "", "Nepali", QObject::tr("Nepali"))); |
467 | m_langTable.append(LangDef("new", "", "Newari", QObject::tr("Newari"))); |
||
468 | m_langTable.append(LangDef("nga", "", "Ngabaka", QObject::tr("Ngabaka"))); |
||
21909 | craig | 469 | m_langTable.append(LangDef("fuv", "", "Nigerian Fulfulde", QObject::tr("Nigerian Fulfulde"))); |
470 | m_langTable.append(LangDef("noe", "", "Nimadi", QObject::tr("Nimadi"))); |
||
471 | m_langTable.append(LangDef("dap", "", "Nisi (India)", QObject::tr("Nisi (India)"))); |
||
472 | m_langTable.append(LangDef("yso", "", "Nisi (China)", QObject::tr("Nisi (China)"))); |
||
21908 | craig | 473 | m_langTable.append(LangDef("niu", "", "Niuean", QObject::tr("Niuean"))); |
21909 | craig | 474 | m_langTable.append(LangDef("nog", "", "Nogai", QObject::tr("Nogai"))); |
475 | m_langTable.append(LangDef("no", "no_NO", "Norwegian", QObject::tr("Norwegian"))); |
||
23500 | jghali | 476 | m_langTable.append(LangDef("nb", "nb_NO", "Norwegian (Bokmål)", QObject::tr("Norwegian (Bokm\303\245l)"))); |
23180 | jghali | 477 | m_langTable.append(LangDef("nn", "nn_NO", "Norwegian (Nynorsk)", QObject::tr("Norwegian (Nynorsk)"))); |
21294 | craig | 478 | m_langTable.append(LangDef("nov", "", "Novial", QObject::tr("Novial"))); |
479 | m_langTable.append(LangDef("nym", "", "Nyamwezi", QObject::tr("Nyamwezi"))); |
||
480 | m_langTable.append(LangDef("nyn", "", "Nyankole", QObject::tr("Nyankole"))); |
||
21909 | craig | 481 | m_langTable.append(LangDef("ie", "", "Occidental", QObject::tr("Occidental"))); |
21294 | craig | 482 | m_langTable.append(LangDef("oc", "", "Occitan (post 1500)", QObject::tr("Occitan (post 1500)"))); |
483 | m_langTable.append(LangDef("oj", "", "Ojibwa", QObject::tr("Ojibwa"))); |
||
484 | m_langTable.append(LangDef("ojs", "", "Oji-Cree", QObject::tr("Oji-Cree"))); |
||
485 | m_langTable.append(LangDef("om", "", "Oromo", QObject::tr("Oromo"))); |
||
22867 | jghali | 486 | m_langTable.append(LangDef("or", "or_IN", "Oriya", QObject::tr("Oriya"))); |
21294 | craig | 487 | m_langTable.append(LangDef("os", "", "Ossetian", QObject::tr("Ossetian"))); |
21909 | craig | 488 | m_langTable.append(LangDef("blk", "", "Pa'O", QObject::tr("Pa'O"))); |
489 | m_langTable.append(LangDef("pce", "", "Palaung (Ruching)", QObject::tr("Palaung (Ruching)"))); |
||
490 | m_langTable.append(LangDef("pll", "", "Palaung (Shwe)", QObject::tr("Palaung (Shwe)"))); |
||
491 | m_langTable.append(LangDef("pi", "", "Pali", QObject::tr("Pali"))); |
||
492 | m_langTable.append(LangDef("plp", "", "Palpa", QObject::tr("Palpa"))); |
||
22867 | jghali | 493 | m_langTable.append(LangDef("pa", "pa_IN", "Panjabi", QObject::tr("Panjabi"))); |
21909 | craig | 494 | m_langTable.append(LangDef("pnb", "", "Panjabi Western", QObject::tr("Panjabi Western"))); |
21294 | craig | 495 | m_langTable.append(LangDef("pag", "", "Pangasinan", QObject::tr("Pangasinan"))); |
21909 | craig | 496 | m_langTable.append(LangDef("ps", "", "Pashto", QObject::tr("Pashto"))); |
21294 | craig | 497 | m_langTable.append(LangDef("pdc", "", "Pennsylvania German", QObject::tr("Pennsylvania German"))); |
21909 | craig | 498 | m_langTable.append(LangDef("fa", "", "Persian", QObject::tr("Persian"))); |
499 | m_langTable.append(LangDef("fa_AF", "", "Persian (Afghanistan)", QObject::tr("Persian (Afghanistan)"))); |
||
500 | m_langTable.append(LangDef("fa_IR", "", "Persian (Iran)", QObject::tr("Persian"))); |
||
21294 | craig | 501 | m_langTable.append(LangDef("phk", "", "Phake", QObject::tr("Phake"))); |
502 | m_langTable.append(LangDef("pih", "", "Pitcairn-Norfolk", QObject::tr("Pitcairn-Norfolk"))); |
||
21909 | craig | 503 | m_langTable.append(LangDef("pcd", "", "Picard", QObject::tr("Picard"))); |
504 | m_langTable.append(LangDef("pms", "", "Piedmontese", QObject::tr("Piedmontese"))); |
||
21908 | craig | 505 | m_langTable.append(LangDef("pl", "pl_PL", "Polish", QObject::tr("Polish"))); |
21909 | craig | 506 | m_langTable.append(LangDef("pap", "", "Papiamento", QObject::tr("Papiamento"))); |
21294 | craig | 507 | m_langTable.append(LangDef("pt", "pt_PT", "Portuguese", QObject::tr("Portuguese"))); |
508 | m_langTable.append(LangDef("pt_BR", "", "Portuguese (BR)", QObject::tr("Portuguese (BR)"))); |
||
21909 | craig | 509 | m_langTable.append(LangDef("kjp", "", "Pwo Eastern Karen", QObject::tr("Pwo Eastern Karen"))); |
21294 | craig | 510 | m_langTable.append(LangDef("pwo", "", "Pwo Western Karen", QObject::tr("Pwo Western Karen"))); |
21909 | craig | 511 | m_langTable.append(LangDef("bto", "", "Rinconada Bikol", QObject::tr("Rinconada Bikol"))); |
21294 | craig | 512 | m_langTable.append(LangDef("qu", "", "Quechua", QObject::tr("Quechua"))); |
21909 | craig | 513 | m_langTable.append(LangDef("rki", "", "Rakhine", QObject::tr("Rakhine"))); |
21294 | craig | 514 | m_langTable.append(LangDef("raj", "", "Rajasthani", QObject::tr("Rajasthani"))); |
515 | m_langTable.append(LangDef("rej", "", "Rejang", QObject::tr("Rejang"))); |
||
516 | m_langTable.append(LangDef("ria", "", "Riang (India)", QObject::tr("Riang (India)"))); |
||
517 | m_langTable.append(LangDef("ril", "", "Riang (Myanmar)", QObject::tr("Riang (Myanmar)"))); |
||
21909 | craig | 518 | m_langTable.append(LangDef("ro", "", "Romanian", QObject::tr("Romanian"))); |
21908 | craig | 519 | m_langTable.append(LangDef("rm", "", "Romansh", QObject::tr("Romansh"))); |
21909 | craig | 520 | m_langTable.append(LangDef("rom", "", "Romany", QObject::tr("Romany"))); |
21908 | craig | 521 | m_langTable.append(LangDef("rn", "", "Rundi", QObject::tr("Rundi"))); |
21294 | craig | 522 | m_langTable.append(LangDef("ru", "ru_RU", "Russian", QObject::tr("Russian"))); |
21909 | craig | 523 | m_langTable.append(LangDef("bxr", "ru_RU", "Russian Buriat", QObject::tr("Russian Buriat"))); |
21294 | craig | 524 | m_langTable.append(LangDef("rue", "", "Rusyn", QObject::tr("Rusyn"))); |
21909 | craig | 525 | m_langTable.append(LangDef("ksw", "", "S'gaw Karen", QObject::tr("S'gaw Karen"))); |
526 | m_langTable.append(LangDef("sck", "", "Sadri", QObject::tr("Sadri"))); |
||
527 | m_langTable.append(LangDef("msc", "", "Sasak", QObject::tr("Sasak"))); |
||
528 | m_langTable.append(LangDef("sm", "", "Samoan", QObject::tr("Samoan"))); |
||
529 | m_langTable.append(LangDef("sgs", "", "Samogitian", QObject::tr("Samogitian"))); |
||
530 | m_langTable.append(LangDef("se", "", "Sami (Northern)", QObject::tr("Sami (Northern)"))); |
||
531 | m_langTable.append(LangDef("sma", "", "Sami (Southern)", QObject::tr("Sami (Southern)"))); |
||
532 | m_langTable.append(LangDef("smj", "", "Sami (Lule)", QObject::tr("Sami (Lule)"))); |
||
533 | m_langTable.append(LangDef("sms", "", "Sami (Skolt)", QObject::tr("Sami (Skolt)"))); |
||
534 | m_langTable.append(LangDef("sg", "", "Sango", QObject::tr("Sango"))); |
||
535 | m_langTable.append(LangDef("msc", "", "Sankaran Maninka", QObject::tr("Sankaran Maninka"))); |
||
21294 | craig | 536 | m_langTable.append(LangDef("sa", "", "Sanskrit", QObject::tr("Sanskrit"))); |
537 | m_langTable.append(LangDef("sat", "", "Santali", QObject::tr("Santali"))); |
||
538 | m_langTable.append(LangDef("sc", "", "Sardinian", QObject::tr("Sardinian"))); |
||
21909 | craig | 539 | m_langTable.append(LangDef("stq", "", "Saterfriesisch", QObject::tr("Saterfriesisch"))); |
21294 | craig | 540 | m_langTable.append(LangDef("sco", "", "Scots", QObject::tr("Scots"))); |
21909 | craig | 541 | m_langTable.append(LangDef("gd", "gd_GB", "Scottish Gaelic", QObject::tr("Scottish Gaelic"))); |
542 | m_langTable.append(LangDef("sgw", "", "Sebat Bet Gurage", QObject::tr("Sebat Bet Gurage"))); |
||
543 | m_langTable.append(LangDef("sel", "", "Selkup", QObject::tr("Selkup"))); |
||
21908 | craig | 544 | m_langTable.append(LangDef("seh", "", "Sena", QObject::tr("Sena"))); |
21909 | craig | 545 | m_langTable.append(LangDef("skr", "", "Seraiki", QObject::tr("Seraiki"))); |
546 | m_langTable.append(LangDef("sr", "", "Serbian", QObject::tr("Serbian"))); |
||
547 | m_langTable.append(LangDef("sr-Latn", "sr-Latn", "Serbian (Latin)", QObject::tr("Serbian (Latin)"))); |
||
21294 | craig | 548 | m_langTable.append(LangDef("shn", "", "Shan", QObject::tr("Shan"))); |
21909 | craig | 549 | m_langTable.append(LangDef("srr", "", "Serer", QObject::tr("Serer"))); |
550 | m_langTable.append(LangDef("swv", "", "Shekhawati", QObject::tr("Shekhawati"))); |
||
551 | m_langTable.append(LangDef("sn", "", "Shona", QObject::tr("Shona"))); |
||
552 | m_langTable.append(LangDef("nco", "", "Sibe", QObject::tr("Sibe"))); |
||
553 | m_langTable.append(LangDef("scn", "", "Sicilian", QObject::tr("Sicilian"))); |
||
554 | m_langTable.append(LangDef("sid", "", "Sidamo", QObject::tr("Sidamo"))); |
||
555 | m_langTable.append(LangDef("szl", "", "Silesian", QObject::tr("Silesian"))); |
||
556 | m_langTable.append(LangDef("stv", "", "Silt'e", QObject::tr("Silt'e"))); |
||
557 | m_langTable.append(LangDef("sd", "", "Sindhi", QObject::tr("Sindhi"))); |
||
21908 | craig | 558 | m_langTable.append(LangDef("si", "", "Sinhala", QObject::tr("Sinhala"))); |
21909 | craig | 559 | m_langTable.append(LangDef("scs", "", "Slavey (North)", QObject::tr("Slavey (North)"))); |
560 | m_langTable.append(LangDef("xsl", "", "Slavey (South)", QObject::tr("Slavey (South)"))); |
||
21294 | craig | 561 | m_langTable.append(LangDef("sk", "sk_SK", "Slovak", QObject::tr("Slovak"))); |
562 | m_langTable.append(LangDef("sl", "sl_SL", "Slovenian", QObject::tr("Slovenian"))); |
||
21909 | craig | 563 | m_langTable.append(LangDef("gru", "", "Sodo Gurage", QObject::tr("Sodo Gurage"))); |
21294 | craig | 564 | m_langTable.append(LangDef("so", "", "Somali", QObject::tr("Somali"))); |
21909 | craig | 565 | m_langTable.append(LangDef("xog", "", "Soga", QObject::tr("Soga"))); |
21294 | craig | 566 | m_langTable.append(LangDef("sop", "", "Songe", QObject::tr("Songe"))); |
21909 | craig | 567 | m_langTable.append(LangDef("snk", "", "Soninke", QObject::tr("Soninke"))); |
568 | m_langTable.append(LangDef("nso", "", "Sotho Northern", QObject::tr("Sotho Northern"))); |
||
21294 | craig | 569 | m_langTable.append(LangDef("st", "", "Sotho Southern", QObject::tr("Sotho Southern"))); |
21909 | craig | 570 | m_langTable.append(LangDef("es", "es_ES", "Spanish", QObject::tr("Spanish"))); |
23485 | jghali | 571 | m_langTable.append(LangDef("es", "es_ANY", "Spanish (Generic)", QObject::tr("Spanish (Generic)"))); |
21909 | craig | 572 | m_langTable.append(LangDef("es_AR", "", "Spanish (Argentina)", QObject::tr("Spanish (Argentina)"))); |
573 | m_langTable.append(LangDef("es_LA", "", "Spanish (Latin)", QObject::tr("Spanish (Latin)"))); |
||
574 | m_langTable.append(LangDef("aii", "", "Swadaya Aramaic", QObject::tr("Swadaya Aramaic"))); |
||
575 | m_langTable.append(LangDef("suk", "", "Sukama", QObject::tr("Sukama"))); |
||
21908 | craig | 576 | m_langTable.append(LangDef("su", "", "Sundanese", QObject::tr("Sundanese"))); |
21294 | craig | 577 | m_langTable.append(LangDef("suq", "", "Suri", QObject::tr("Suri"))); |
578 | m_langTable.append(LangDef("sva", "", "Svan", QObject::tr("Svan"))); |
||
579 | m_langTable.append(LangDef("sw", "", "Swahili", QObject::tr("Swahili"))); |
||
22837 | jghali | 580 | m_langTable.append(LangDef("sv", "sv_SE", "Swedish", QObject::tr("Swedish"))); |
581 | m_langTable.append(LangDef("sv_FI", "", "Swedish (Finland)", QObject::tr("Swedish (Finland)"))); |
||
21909 | craig | 582 | m_langTable.append(LangDef("ss", "", "Swati", QObject::tr("Swati"))); |
21294 | craig | 583 | m_langTable.append(LangDef("syl", "", "Sylheti", QObject::tr("Sylheti"))); |
584 | m_langTable.append(LangDef("syr", "", "Syriac", QObject::tr("Syriac"))); |
||
23500 | jghali | 585 | m_langTable.append(LangDef("tyz", "", "TÃ y", QObject::tr("T\303\240y"))); |
21294 | craig | 586 | m_langTable.append(LangDef("tab", "", "Tabasaran", QObject::tr("Tabasaran"))); |
21909 | craig | 587 | m_langTable.append(LangDef("tl", "", "Tagalog", QObject::tr("Tagalog"))); |
588 | m_langTable.append(LangDef("ty", "", "Tahitian", QObject::tr("Tahitian"))); |
||
23500 | jghali | 589 | m_langTable.append(LangDef("tdd", "", "Tai Nüa", QObject::tr("Tai N\303\274a"))); |
21909 | craig | 590 | m_langTable.append(LangDef("tg", "", "Tajik", QObject::tr("Tajik"))); |
591 | m_langTable.append(LangDef("tmh", "", "Tamashek", QObject::tr("Tamashek"))); |
||
22867 | jghali | 592 | m_langTable.append(LangDef("ta", "ta_IN", "Tamil", QObject::tr("Tamil"))); |
21909 | craig | 593 | m_langTable.append(LangDef("tt", "", "Tatar", QObject::tr("Tatar"))); |
21294 | craig | 594 | m_langTable.append(LangDef("te", "te_IN", "Telugu", QObject::tr("Telugu"))); |
595 | m_langTable.append(LangDef("tem", "", "Temne", QObject::tr("Temne"))); |
||
596 | m_langTable.append(LangDef("tet", "", "Tetum", QObject::tr("Tetum"))); |
||
597 | m_langTable.append(LangDef("th", "th_TH", "Thai", QObject::tr("Thai"))); |
||
21909 | craig | 598 | m_langTable.append(LangDef("nod", "", "Thai Northern", QObject::tr("Thai Northern"))); |
599 | m_langTable.append(LangDef("bo", "", "Tibetan", QObject::tr("Tibetan"))); |
||
600 | m_langTable.append(LangDef("tig", "", "Tigre", QObject::tr("Tigre"))); |
||
21908 | craig | 601 | m_langTable.append(LangDef("ti", "", "Tigrinya", QObject::tr("Tigrinya"))); |
21294 | craig | 602 | m_langTable.append(LangDef("tiv", "", "Tiv", QObject::tr("Tiv"))); |
21909 | craig | 603 | m_langTable.append(LangDef("tpi", "", "Tok Pisin", QObject::tr("Tok Pisin"))); |
604 | m_langTable.append(LangDef("to", "", "Tonga (Tonga Islands)", QObject::tr("Tonga (Tonga Islands)"))); |
||
605 | m_langTable.append(LangDef("ts", "", "Tsonga", QObject::tr("Tsonga"))); |
||
21908 | craig | 606 | m_langTable.append(LangDef("tn", "", "Tswana", QObject::tr("Tswana"))); |
21909 | craig | 607 | m_langTable.append(LangDef("tcy", "", "Tulu", QObject::tr("Tulu"))); |
608 | m_langTable.append(LangDef("tum", "", "Tumbuka", QObject::tr("Tumbuka"))); |
||
21908 | craig | 609 | m_langTable.append(LangDef("tr", "tr_TR", "Turkish", QObject::tr("Turkish"))); |
21909 | craig | 610 | m_langTable.append(LangDef("tk", "", "Turkmen", QObject::tr("Turkmen"))); |
21908 | craig | 611 | m_langTable.append(LangDef("tru", "", "Turoyo Aramaic", QObject::tr("Turoyo Aramaic"))); |
21909 | craig | 612 | m_langTable.append(LangDef("tyv", "", "Tuvin", QObject::tr("Tuvin"))); |
21908 | craig | 613 | m_langTable.append(LangDef("tw", "", "Twi", QObject::tr("Twi"))); |
21909 | craig | 614 | m_langTable.append(LangDef("uk", "uk_UA", "Ukranian", QObject::tr("Ukranian"))); |
615 | m_langTable.append(LangDef("sxu", "", "Upper Saxon", QObject::tr("Upper Saxon"))); |
||
616 | m_langTable.append(LangDef("hsb", "", "Upper Sorbian", QObject::tr("Upper Sorbian"))); |
||
21294 | craig | 617 | m_langTable.append(LangDef("udm", "", "Udmurt", QObject::tr("Udmurt"))); |
618 | m_langTable.append(LangDef("ug", "", "Uighur", QObject::tr("Uighur"))); |
||
619 | m_langTable.append(LangDef("umb", "", "Umbundu", QObject::tr("Umbundu"))); |
||
620 | m_langTable.append(LangDef("ur", "", "Urdu", QObject::tr("Urdu"))); |
||
21909 | craig | 621 | m_langTable.append(LangDef("uk", "", "Ukrainian", QObject::tr("Ukrainian"))); |
21294 | craig | 622 | m_langTable.append(LangDef("uz", "", "Uzbek", QObject::tr("Uzbek"))); |
623 | m_langTable.append(LangDef("uzn", "", "Uzbek (Northern)", QObject::tr("Uzbek (Northern)"))); |
||
624 | m_langTable.append(LangDef("uzs", "", "Uzbek (Southern)", QObject::tr("Uzbek (Southern)"))); |
||
625 | m_langTable.append(LangDef("ve", "", "Venda", QObject::tr("Venda"))); |
||
626 | m_langTable.append(LangDef("vec", "", "Venetian", QObject::tr("Venetian"))); |
||
627 | m_langTable.append(LangDef("vi", "", "Vietnamese", QObject::tr("Vietnamese"))); |
||
628 | m_langTable.append(LangDef("vls", "", "Vlaams", QObject::tr("Vlaams"))); |
||
21909 | craig | 629 | m_langTable.append(LangDef("rmy", "", "Vlax Romani", QObject::tr("Vlax Romani"))); |
23500 | jghali | 630 | m_langTable.append(LangDef("vo", "", "Volapük", QObject::tr("Volap\303\274k"))); |
631 | m_langTable.append(LangDef("vro", "", "Võro", QObject::tr("V\303\265ro"))); |
||
21909 | craig | 632 | m_langTable.append(LangDef("wbm", "", "Wa", QObject::tr("Wa"))); |
633 | m_langTable.append(LangDef("wbr", "", "Wagdi", QObject::tr("Wagdi"))); |
||
21908 | craig | 634 | m_langTable.append(LangDef("wa", "", "Walloon", QObject::tr("Walloon"))); |
635 | m_langTable.append(LangDef("war", "", "Waray (Philippines)", QObject::tr("Waray (Philippines)"))); |
||
21909 | craig | 636 | m_langTable.append(LangDef("guc", "cy_GB", "Wayuu", QObject::tr("Wayuu"))); |
637 | m_langTable.append(LangDef("cy", "cy_GB", "Welsh", QObject::tr("Welsh"))); |
||
21294 | craig | 638 | m_langTable.append(LangDef("wle", "", "Wolane", QObject::tr("Wolane"))); |
639 | m_langTable.append(LangDef("wo", "", "Wolof", QObject::tr("Wolof"))); |
||
21909 | craig | 640 | m_langTable.append(LangDef("xwo", "", "Written Oirat (Todo)", QObject::tr("Written Oirat (Todo)"))); |
21908 | craig | 641 | m_langTable.append(LangDef("xh", "", "Xhosa", QObject::tr("Xhosa"))); |
21294 | craig | 642 | m_langTable.append(LangDef("yao", "", "Yao", QObject::tr("Yao"))); |
21909 | craig | 643 | m_langTable.append(LangDef("sah", "", "Yakut", QObject::tr("Yakut"))); |
21294 | craig | 644 | m_langTable.append(LangDef("yi", "", "Yiddish", QObject::tr("Yiddish"))); |
645 | m_langTable.append(LangDef("yo", "", "Yoruba", QObject::tr("Yoruba"))); |
||
21909 | craig | 646 | m_langTable.append(LangDef("zne", "", "Zande", QObject::tr("Zande"))); |
647 | m_langTable.append(LangDef("dje", "cy_GB", "Zarma", QObject::tr("Zarma"))); |
||
648 | m_langTable.append(LangDef("zea", "", "Zeeuws", QObject::tr("Zeeuws"))); |
||
21908 | craig | 649 | m_langTable.append(LangDef("za", "", "Zhuang", QObject::tr("Zhuang"))); |
21294 | craig | 650 | m_langTable.append(LangDef("zu", "", "Zulu", QObject::tr("Zulu"))); |
663 | cbradney | 651 | } |
652 | |||
17798 | craig | 653 | void LanguageManager::generateInstalledGUILangList() |
663 | cbradney | 654 | { |
10997 | jghali | 655 | QString path = ScPaths::instance().translationDir(); |
3776 | cbradney | 656 | QString langAbbrev; |
657 | QMap<QString, langPair>::Iterator it; |
||
658 | QDir dir(path , "*.*", QDir::Name, QDir::Files | QDir::NoSymLinks); |
||
23100 | jghali | 659 | if (!dir.exists() || (dir.count() == 0)) |
660 | return; |
||
661 | |||
662 | for (uint i = 0; i < dir.count(); ++i) |
||
10617 | cbradney | 663 | { |
23100 | jghali | 664 | QFileInfo file(path + dir[i]); |
665 | if (file.suffix().toLower() != "qm") |
||
666 | continue; |
||
667 | langAbbrev = file.completeSuffix().remove(".qm"); |
||
668 | int j = langTableIndex(langAbbrev); |
||
669 | if (j < 0) |
||
670 | continue; |
||
671 | m_langTable[j].m_transAvailable = true; |
||
672 | m_langTable[j].m_transFile = file.absoluteFilePath(); |
||
673 | //qDebug()<<"Found installed GUI translation file:"<<langAbbrev<<" : "<<langTable[j].m_transFile<<langTable[j].m_transName; |
||
10617 | cbradney | 674 | } |
663 | cbradney | 675 | } |
676 | |||
17798 | craig | 677 | void LanguageManager::generateInstalledHyphLangList() |
678 | { |
||
19803 | craig | 679 | QStringList dictionaryPaths; |
680 | bool dictPathFound=findHyphDictionaries(dictionaryPaths); |
||
681 | if (!dictPathFound) |
||
17798 | craig | 682 | { |
24665 | jghali | 683 | // qDebug()<<"No preinstalled hyphenation dictionaries or paths found"; |
17798 | craig | 684 | return; |
685 | } |
||
19803 | craig | 686 | QMap<QString, QString> dictionaryMap; |
687 | findHyphDictionarySets(dictionaryPaths, dictionaryMap); |
||
23104 | jghali | 688 | if (dictionaryMap.count() == 0) |
19803 | craig | 689 | return; |
17798 | craig | 690 | |
19803 | craig | 691 | QMap<QString, QString>::iterator it = dictionaryMap.begin(); |
24665 | jghali | 692 | // qDebug()<<"Installed Hyphenation Dictionaries:"; |
19803 | craig | 693 | while (it != dictionaryMap.end()) |
17798 | craig | 694 | { |
23104 | jghali | 695 | int j = langTableIndex(it.key()); |
696 | if (j != -1) |
||
17798 | craig | 697 | { |
23104 | jghali | 698 | m_langTable[j].m_hyphAvailable = true; |
699 | m_langTable[j].m_hyphFile = it.value(); |
||
19803 | craig | 700 | //qDebug()<<"Found installed hyphenation dictionary:"<<it.key()<<" : "<<it.value(); |
17798 | craig | 701 | } |
19803 | craig | 702 | ++it; |
17798 | craig | 703 | } |
704 | } |
||
705 | |||
706 | void LanguageManager::generateInstalledSpellLangList() |
||
707 | { |
||
708 | QStringList dictionaryPaths; |
||
24778 | jghali | 709 | bool dictPathFound = findSpellingDictionaries(dictionaryPaths); |
17798 | craig | 710 | if (!dictPathFound) |
711 | { |
||
24665 | jghali | 712 | qDebug()<<"No preinstalled spelling dictionaries or paths found"; |
17798 | craig | 713 | return; |
714 | } |
||
715 | QMap<QString, QString> dictionaryMap; |
||
716 | findSpellingDictionarySets(dictionaryPaths, dictionaryMap); |
||
23104 | jghali | 717 | if (dictionaryMap.count() == 0) |
17798 | craig | 718 | return; |
719 | |||
720 | QMap<QString, QString>::iterator it = dictionaryMap.begin(); |
||
24665 | jghali | 721 | // qDebug()<<"Installed Spelling Dictionaries:"; |
17798 | craig | 722 | while (it != dictionaryMap.end()) |
723 | { |
||
23104 | jghali | 724 | int j = langTableIndex(it.key()); |
725 | if (j != -1) |
||
17798 | craig | 726 | { |
23104 | jghali | 727 | m_langTable[j].m_spellAvailable = true; |
728 | m_langTable[j].m_spellFile = it.value(); |
||
17798 | craig | 729 | // qDebug()<<"Found installed spelling dictionary:"<<it.key()<<" : "<<it.value(); |
730 | } |
||
731 | ++it; |
||
732 | } |
||
733 | } |
||
734 | |||
735 | |||
736 | |||
737 | int LanguageManager::langTableIndex(const QString &abbrev) |
||
738 | { |
||
739 | // qDebug()<<"langTableIndex: Trying to find:"<<abbrev; |
||
22164 | jghali | 740 | if (abbrev.isEmpty()) |
741 | return -1; |
||
20653 | craig | 742 | for (int i = 0; i < m_langTable.size(); ++i) |
17798 | craig | 743 | { |
744 | // qDebug()<<abbrev<<langTable[i].m_priAbbrev<<langTable[i].m_altAbbrev; |
||
23104 | jghali | 745 | if (m_langTable[i].m_priAbbrev == abbrev || m_langTable[i].m_altAbbrev == abbrev) |
17798 | craig | 746 | return i; |
747 | } |
||
748 | return -1; |
||
749 | } |
||
750 | |||
23881 | craig | 751 | QString LanguageManager::getLangFromAbbrev(QString langAbbrev, bool getTranslated) |
663 | cbradney | 752 | { |
17798 | craig | 753 | // qDebug()<<"Trying to find:"<<langAbbrev; |
754 | int i=langTableIndex(langAbbrev); |
||
755 | // qDebug()<<"Index of"<<langAbbrev<<":"<<i; |
||
24778 | jghali | 756 | if (i == -1) |
3776 | cbradney | 757 | { |
23104 | jghali | 758 | if (langAbbrev.length() > 5) |
17798 | craig | 759 | { |
760 | langAbbrev.truncate(5); |
||
23104 | jghali | 761 | i = langTableIndex(langAbbrev); |
17798 | craig | 762 | } |
763 | } |
||
23104 | jghali | 764 | if (i != -1) |
17798 | craig | 765 | { |
3776 | cbradney | 766 | if (getTranslated) |
20653 | craig | 767 | return m_langTable[i].m_transName; |
22638 | craig | 768 | return m_langTable[i].m_name; |
3776 | cbradney | 769 | } |
17798 | craig | 770 | //qDebug()<<langAbbrev<<"not found"; |
771 | return ""; |
||
663 | cbradney | 772 | } |
773 | |||
23881 | craig | 774 | QString LanguageManager::getAbbrevFromLang(const QString& lang, bool useInstalled) |
663 | cbradney | 775 | { |
20653 | craig | 776 | for (int i = 0; i < m_langTable.size(); ++i) |
3776 | cbradney | 777 | { |
17798 | craig | 778 | if (useInstalled) |
5072 | cbradney | 779 | { |
23104 | jghali | 780 | if (m_langTable[i].m_transAvailable && (m_langTable[i].m_name == lang || m_langTable[i].m_transName == lang)) |
20653 | craig | 781 | return m_langTable[i].m_priAbbrev; |
5072 | cbradney | 782 | } |
17798 | craig | 783 | else |
7617 | cbradney | 784 | { |
17798 | craig | 785 | //qDebug()<<lang<<langTable[i].m_priAbbrev<<langTable[i].m_name<<langTable[i].m_transName; |
23104 | jghali | 786 | if (m_langTable[i].m_name == lang || m_langTable[i].m_transName == lang) |
20653 | craig | 787 | return m_langTable[i].m_priAbbrev; |
7617 | cbradney | 788 | } |
789 | } |
||
5781 | cbradney | 790 | return ""; |
663 | cbradney | 791 | } |
792 | |||
23881 | craig | 793 | QString LanguageManager::getLangFromTransLang(const QString& transLang) |
13210 | jghali | 794 | { |
20653 | craig | 795 | for (int i = 0; i < m_langTable.size(); ++i) |
13210 | jghali | 796 | { |
23104 | jghali | 797 | if (m_langTable[i].m_transName == transLang) |
20653 | craig | 798 | return m_langTable[i].m_name; |
13210 | jghali | 799 | } |
800 | return ""; |
||
801 | } |
||
802 | |||
23881 | craig | 803 | QString LanguageManager::getTransLangFromLang(const QString& lang) |
12283 | cbradney | 804 | { |
20653 | craig | 805 | for (int i = 0; i < m_langTable.size(); ++i) |
12283 | cbradney | 806 | { |
23104 | jghali | 807 | if (m_langTable[i].m_name == lang) |
20653 | craig | 808 | return m_langTable[i].m_transName; |
12283 | cbradney | 809 | } |
810 | return ""; |
||
811 | } |
||
812 | |||
23881 | craig | 813 | QString LanguageManager::getShortAbbrevFromAbbrev(QString langAbbrev) |
17798 | craig | 814 | { |
815 | // qDebug()<<"Trying to find:"<<langAbbrev; |
||
17929 | jghali | 816 | int i = langTableIndex(langAbbrev); |
17798 | craig | 817 | // qDebug()<<"Index of"<<langAbbrev<<":"<<i; |
17929 | jghali | 818 | if (i == -1) |
819 | { |
||
23104 | jghali | 820 | if (langAbbrev.length() > 5) |
17798 | craig | 821 | { |
17929 | jghali | 822 | langAbbrev.truncate(5); |
823 | i=langTableIndex(langAbbrev); |
||
17798 | craig | 824 | } |
17929 | jghali | 825 | } |
826 | if (i != -1) |
||
20653 | craig | 827 | return m_langTable[i].m_priAbbrev; |
17929 | jghali | 828 | //qDebug()<<langAbbrev<<"not found"; |
829 | return ""; |
||
17798 | craig | 830 | } |
831 | |||
23881 | craig | 832 | QString LanguageManager::getShortAbbrevFromAbbrevDecomposition(const QString& langAbbrev) |
22150 | jghali | 833 | { |
834 | int tIndex = langTableIndex(langAbbrev); |
||
835 | if (tIndex >= 0) |
||
836 | return m_langTable[tIndex].m_priAbbrev; |
||
837 | |||
838 | QStringList abbrevs = getAbbrevDecomposition(langAbbrev); |
||
839 | for (int i = 1; i < abbrevs.count(); ++i) |
||
840 | { |
||
841 | tIndex = langTableIndex(abbrevs.at(i)); |
||
842 | if (tIndex >= 0) |
||
843 | return m_langTable[tIndex].m_priAbbrev; |
||
844 | } |
||
845 | |||
846 | return ""; |
||
847 | } |
||
848 | |||
23881 | craig | 849 | QString LanguageManager::getAlternativeAbbrevfromAbbrev(const QString& langAbbrev) |
17798 | craig | 850 | { |
851 | int i=langTableIndex(langAbbrev); |
||
23104 | jghali | 852 | if (i != -1) |
20653 | craig | 853 | return m_langTable[i].m_altAbbrev; |
17798 | craig | 854 | return ""; |
855 | } |
||
856 | |||
22563 | craig | 857 | QStringList LanguageManager::getAbbrevDecomposition(const QString& langAbbrev) |
22150 | jghali | 858 | { |
859 | QStringList abbrevs; |
||
860 | abbrevs.append(langAbbrev); |
||
861 | |||
862 | QString curAbbrev = langAbbrev; |
||
863 | QString delimiters = QString::fromLatin1("_."); |
||
864 | |||
865 | while (true) |
||
866 | { |
||
867 | int rightMost = 0; |
||
868 | for (int i = 0; i < delimiters.length(); i++) |
||
869 | { |
||
870 | int k = curAbbrev.lastIndexOf(delimiters[i]); |
||
871 | if (k > rightMost) |
||
872 | rightMost = k; |
||
873 | } |
||
874 | |||
875 | if (rightMost == 0) |
||
876 | break; |
||
877 | |||
878 | curAbbrev.truncate(rightMost); |
||
879 | abbrevs.append(curAbbrev); |
||
880 | } |
||
881 | return abbrevs; |
||
882 | } |
||
883 | |||
21897 | craig | 884 | void LanguageManager::fillInstalledStringList(QStringList *stringListToFill) |
663 | cbradney | 885 | { |
21897 | craig | 886 | if (!stringListToFill) |
887 | return; |
||
888 | for (int i = 0; i < m_langTable.size(); ++i) |
||
889 | stringListToFill->append(m_langTable[i].m_transName); |
||
890 | } |
||
891 | |||
892 | void LanguageManager::fillInstalledGUIStringList(QStringList *stringListToFill) |
||
893 | { |
||
894 | if (!stringListToFill) |
||
895 | return; |
||
896 | for (int i = 0; i < m_langTable.size(); ++i) |
||
663 | cbradney | 897 | { |
21897 | craig | 898 | if (m_langTable[i].m_transAvailable) |
20653 | craig | 899 | stringListToFill->append(m_langTable[i].m_transName); |
663 | cbradney | 900 | } |
901 | } |
||
902 | |||
21897 | craig | 903 | void LanguageManager::fillInstalledHyphStringList(QStringList *stringListToFill) |
663 | cbradney | 904 | { |
21897 | craig | 905 | if (!stringListToFill) |
906 | return; |
||
907 | for (int i = 0; i < m_langTable.size(); ++i) |
||
17798 | craig | 908 | { |
21897 | craig | 909 | if (m_langTable[i].m_hyphAvailable) |
910 | stringListToFill->append(m_langTable[i].m_transName); |
||
17798 | craig | 911 | } |
21897 | craig | 912 | stringListToFill->sort(); |
663 | cbradney | 913 | } |
6769 | cbradney | 914 | |
21897 | craig | 915 | void LanguageManager::fillInstalledSpellStringList(QStringList *stringListToFill) |
17798 | craig | 916 | { |
21897 | craig | 917 | if (!stringListToFill) |
918 | return; |
||
919 | for (int i = 0; i < m_langTable.size(); ++i) |
||
17798 | craig | 920 | { |
21897 | craig | 921 | if (m_langTable[i].m_spellAvailable) |
922 | stringListToFill->append(m_langTable[i].m_transName); |
||
17798 | craig | 923 | } |
924 | stringListToFill->sort(); |
||
925 | } |
||
926 | |||
22063 | jghali | 927 | bool LanguageManager::isAvailableTranslation(QString langAbbrev) |
928 | { |
||
929 | if (langAbbrev == "en" || langAbbrev == "en_GB") |
||
930 | return true; |
||
931 | |||
932 | int i = langTableIndex(langAbbrev); |
||
933 | if (i == -1) |
||
934 | { |
||
935 | if (langAbbrev.length() > 5) |
||
936 | { |
||
937 | langAbbrev.truncate(5); |
||
938 | i = langTableIndex(langAbbrev); |
||
939 | } |
||
940 | } |
||
24778 | jghali | 941 | if (i != -1) |
22063 | jghali | 942 | return m_langTable[i].m_transAvailable; |
943 | return false; |
||
944 | } |
||
945 | |||
17798 | craig | 946 | QStringList LanguageManager::languageList(bool getTranslated) |
947 | { |
||
948 | QStringList sl; |
||
20653 | craig | 949 | for (int i = 0; i < m_langTable.size(); ++i) |
17798 | craig | 950 | { |
951 | if (getTranslated) |
||
24778 | jghali | 952 | sl << m_langTable[i].m_transName; |
17798 | craig | 953 | else |
24778 | jghali | 954 | sl << m_langTable[i].m_name; |
17798 | craig | 955 | } |
956 | sl.sort(); |
||
957 | return sl; |
||
958 | } |
||
959 | |||
960 | void LanguageManager::printInstalledList() |
||
961 | { |
||
20259 | craig | 962 | QFile f; |
963 | f.open(stderr, QIODevice::WriteOnly); |
||
964 | QTextStream ts(&f); |
||
20653 | craig | 965 | for (int i = 0; i < m_langTable.size(); ++i) |
20259 | craig | 966 | { |
20653 | craig | 967 | ts << " " << m_langTable[i].m_priAbbrev.leftJustified(8) << ": " << m_langTable[i].m_name; |
24203 | craig | 968 | Qt::endl(ts); |
20259 | craig | 969 | } |
24203 | craig | 970 | Qt::endl(ts); |
20259 | craig | 971 | f.close(); |
17798 | craig | 972 | } |
973 | |||
22563 | craig | 974 | QString LanguageManager::numericSequence(const QString& seq) |
6769 | cbradney | 975 | { |
976 | QString retSeq; |
||
977 | const int nsBengali=0,nsDevanagari=1,nsGujarati=2,nsGurumukhi=3,nsKannada=4,nsMalayalam=5,nsOriya=6,nsTamil=7,nsTelugu=8,nsTibetan=9,nsLepcha=10; |
||
978 | switch (1) |
||
979 | { |
||
980 | case nsBengali: |
||
23104 | jghali | 981 | retSeq += ""; |
6769 | cbradney | 982 | break; |
983 | case nsDevanagari: |
||
23104 | jghali | 984 | retSeq += "०१२३४५६à¥à¥®à¥¯"; |
6769 | cbradney | 985 | break; |
986 | case nsGujarati: |
||
23104 | jghali | 987 | retSeq += "૦૧૨૩૪૫૬à«à«®à«¯"; |
6769 | cbradney | 988 | break; |
989 | case nsGurumukhi: |
||
23104 | jghali | 990 | retSeq += "੦੧੨੩੪੫੬à©à©®à©¯"; |
6769 | cbradney | 991 | break; |
992 | case nsKannada: |
||
23104 | jghali | 993 | retSeq += ""; |
6769 | cbradney | 994 | break; |
995 | case nsMalayalam: |
||
23104 | jghali | 996 | retSeq += ""; |
6769 | cbradney | 997 | break; |
998 | case nsOriya: |
||
23104 | jghali | 999 | retSeq += ""; |
6769 | cbradney | 1000 | break; |
1001 | case nsTamil: |
||
23104 | jghali | 1002 | retSeq += ""; |
6769 | cbradney | 1003 | break; |
1004 | case nsTelugu: |
||
23104 | jghali | 1005 | retSeq += ""; |
6769 | cbradney | 1006 | break; |
1007 | case nsTibetan: |
||
23104 | jghali | 1008 | retSeq += ""; |
6769 | cbradney | 1009 | break; |
1010 | case nsLepcha: |
||
23104 | jghali | 1011 | retSeq += ""; |
6769 | cbradney | 1012 | break; |
1013 | default: |
||
24778 | jghali | 1014 | retSeq = "0123456789"; |
6769 | cbradney | 1015 | break; |
1016 | } |
||
1017 | return retSeq; |
||
1018 | } |
||
1019 | |||
17798 | craig | 1020 | bool LanguageManager::findSpellingDictionaries(QStringList &sl) |
17550 | craig | 1021 | { |
24778 | jghali | 1022 | sl = ScPaths::instance().spellDirs(); |
22639 | craig | 1023 | return sl.count() != 0; |
17550 | craig | 1024 | } |
1025 | |||
17798 | craig | 1026 | void LanguageManager::findSpellingDictionarySets(QStringList &dictionaryPaths, QMap<QString, QString> &dictionaryMap) |
17550 | craig | 1027 | { |
24778 | jghali | 1028 | for (int i = 0; i < dictionaryPaths.count(); ++i) |
17550 | craig | 1029 | { |
1030 | // Find the dic and aff files in the location |
||
1031 | QDir dictLocation(dictionaryPaths.at(i)); |
||
1032 | QStringList dictFilters("*.dic"); |
||
1033 | QStringList dictList(dictLocation.entryList(dictFilters, QDir::Files, QDir::Name)); |
||
24777 | jghali | 1034 | dictList.replaceInStrings(".dic", ""); |
1035 | dictList.removeDuplicates(); |
||
17550 | craig | 1036 | |
1037 | //Ensure we have aff+dic file pairs, remove any hyphenation dictionaries from the list |
||
22838 | jghali | 1038 | for (const QString& dictName : qAsConst(dictList)) |
17550 | craig | 1039 | { |
22838 | jghali | 1040 | if (!QFile::exists(dictionaryPaths.at(i) + dictName + ".aff")) |
1041 | continue; |
||
1042 | |||
1043 | if (dictionaryMap.contains(dictName)) |
||
1044 | continue; |
||
1045 | |||
23104 | jghali | 1046 | if (dictName.length() <= 5) |
17550 | craig | 1047 | { |
22838 | jghali | 1048 | //QString shortAbbrev(LanguageManager::getShortAbbrevFromAbbrev(dictName)); |
1049 | //qDebug()<<"findSpellingDictionarySets"<<dictName<<shortAbbrev; |
||
24778 | jghali | 1050 | dictionaryMap.insert(dictName, dictionaryPaths.at(i) + dictName); |
22838 | jghali | 1051 | //dictionaryMap.insert(shortAbbrev, dictionaryPaths.at(i)+dictName); |
17550 | craig | 1052 | } |
22838 | jghali | 1053 | //qDebug()<<"Spell Finder:"<<dictName<<dictionaryPaths.at(i)+dictName; |
23104 | jghali | 1054 | if (dictName.length() > 5) |
22838 | jghali | 1055 | { |
1056 | QString shortAbbrev(LanguageManager::getShortAbbrevFromAbbrev(dictName)); |
||
1057 | //qDebug()<<shortAbbrev; |
||
24778 | jghali | 1058 | dictionaryMap.insert(shortAbbrev, dictionaryPaths.at(i) + dictName); |
22838 | jghali | 1059 | } |
17550 | craig | 1060 | } |
1061 | // qDebug()<<"Number of dictionaries/AFFs found in"<<dictionaryPaths.at(i)<<":"<<dictList.count(); |
||
1062 | } |
||
24778 | jghali | 1063 | |
17798 | craig | 1064 | //Now rescan dictionary map for any extra languages we can support with the files we have |
1065 | QMap<QString, QString>::iterator it = dictionaryMap.begin(); |
||
1066 | while (it != dictionaryMap.end()) |
||
1067 | { |
||
1068 | QString lang(it.key()); |
||
23104 | jghali | 1069 | if (lang.length() == 5) |
17798 | craig | 1070 | { |
1071 | QString shortAbbrev(LanguageManager::getShortAbbrevFromAbbrev(lang)); |
||
1072 | if (!dictionaryMap.contains(shortAbbrev)) |
||
1073 | { |
||
1074 | //qDebug()<<"Adding extra spelling definitions for:"<<lang<<":"<<shortAbbrev; |
||
1075 | dictionaryMap.insert(shortAbbrev, it.value()); |
||
1076 | } |
||
1077 | //else |
||
1078 | //qDebug()<<"Short abbreviation:"<<shortAbbrev<<"already exists for:"<<lang; |
||
1079 | } |
||
23104 | jghali | 1080 | if (lang.length() == 2) |
17798 | craig | 1081 | { |
1082 | QString altAbbrev(LanguageManager::getAlternativeAbbrevfromAbbrev(lang)); |
||
1083 | if (!dictionaryMap.contains(altAbbrev)) |
||
1084 | { |
||
1085 | //qDebug()<<"Adding extra spelling definitions for:"<<lang<<":"<<altAbbrev; |
||
1086 | dictionaryMap.insert(altAbbrev, it.value()); |
||
1087 | } |
||
1088 | //else |
||
1089 | //qDebug()<<"Alt. abbreviation:"<<altAbbrev<<"already exists for:"<<lang; |
||
1090 | } |
||
1091 | ++it; |
||
1092 | } |
||
17550 | craig | 1093 | } |
1094 | |||
19800 | craig | 1095 | bool LanguageManager::findHyphDictionaries(QStringList& sl) |
1096 | { |
||
24778 | jghali | 1097 | sl = ScPaths::instance().hyphDirs(); |
22639 | craig | 1098 | return sl.count() != 0; |
19800 | craig | 1099 | } |
1100 | |||
1101 | void LanguageManager::findHyphDictionarySets(QStringList& dictionaryPaths, QMap<QString, QString>& dictionaryMap) |
||
1102 | { |
||
24778 | jghali | 1103 | for (int i = 0; i < dictionaryPaths.count(); ++i) |
19800 | craig | 1104 | { |
1105 | // Find the dic and aff files in the location |
||
1106 | QDir dictLocation(dictionaryPaths.at(i)); |
||
1107 | QStringList dictFilters("hyph*.dic"); |
||
24778 | jghali | 1108 | if (dictionaryPaths.at(i) == ScPaths::userDictDir(ScPaths::Hyph, false)) |
22838 | jghali | 1109 | dictFilters.append("*.dic"); |
19800 | craig | 1110 | QStringList dictList(dictLocation.entryList(dictFilters, QDir::Files, QDir::Name)); |
24778 | jghali | 1111 | dictList.replaceInStrings(".dic", ""); |
22838 | jghali | 1112 | |
1113 | for (const QString& dn : qAsConst(dictList)) |
||
19800 | craig | 1114 | { |
20367 | craig | 1115 | // qDebug()<<dn; |
1116 | QString dictName; |
||
1117 | if (dn.startsWith("hyph_")) |
||
24778 | jghali | 1118 | dictName = dn.section('_', 1); |
20367 | craig | 1119 | else |
22838 | jghali | 1120 | dictName = dn; |
1121 | if (dictionaryMap.contains(dictName)) |
||
1122 | continue; |
||
23104 | jghali | 1123 | if (dictName.length() <= 2) |
19800 | craig | 1124 | { |
24778 | jghali | 1125 | dictionaryMap.insert(dictName, dictionaryPaths.at(i) + dn + ".dic"); |
19800 | craig | 1126 | } |
23104 | jghali | 1127 | if (dictName.length() > 2) |
22838 | jghali | 1128 | { |
1129 | QString shortAbbrev(LanguageManager::getShortAbbrevFromAbbrev(dictName)); |
||
24778 | jghali | 1130 | dictionaryMap.insert(shortAbbrev, dictionaryPaths.at(i) + dn + ".dic"); |
22838 | jghali | 1131 | } |
19800 | craig | 1132 | } |
1133 | } |
||
1134 | } |
||
1135 | |||
7669 | cbradney | 1136 | LanguageManager::~LanguageManager() |
1137 | { |
||
20653 | craig | 1138 | m_langTable.clear(); |
7669 | cbradney | 1139 | } |
1140 | |||
23881 | craig | 1141 | QString LanguageManager::getHyphFilename(const QString & langAbbrev) |
17798 | craig | 1142 | { |
22164 | jghali | 1143 | int j = langTableIndex(langAbbrev); |
23104 | jghali | 1144 | if (j != -1 && m_langTable[j].m_hyphAvailable) |
17798 | craig | 1145 | { |
1146 | // qDebug()<<"Found requested hyphenation dictionary:"<<langAbbrev<<" : "<<langTable[j].m_hyphFile; |
||
20653 | craig | 1147 | return m_langTable[j].m_hyphFile; |
17798 | craig | 1148 | } |
1149 | return QString(); |
||
1150 | } |