Merge pull request #1295 from rouault/fix_1293
[openjpeg.git] / thirdparty / astyle / ASLocalizer.cpp
1 // ASLocalizer.cpp
2 // Copyright (c) 2017 by Jim Pattee <jimp03@email.com>.
3 // This code is licensed under the MIT License.
4 // License.md describes the conditions under which this software may be distributed.
5 //
6 // File encoding for this file is UTF-8 WITHOUT a byte order mark (BOM).
7 //    русский     中文(简体)    日本語     한국의
8 //
9 // Windows:
10 // Add the required "Language" to the system.
11 // The settings do NOT need to be changed to the added language.
12 // Change the "Region" settings.
13 // Change both the "Format" and the "Current Language..." settings.
14 // A restart is required if the codepage has changed.
15 //              Windows problems:
16 //              Hindi    - no available locale, language pack removed
17 //              Japanese - language pack install error
18 //              Ukranian - displays a ? instead of i
19 //
20 // Linux:
21 // Change the LANG environment variable: LANG=fr_FR.UTF-8.
22 // setlocale() will use the LANG environment variable on Linux.
23 //
24 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
25  *
26  *   To add a new language to this source module:
27  *
28  *   Add a new translation class to ASLocalizer.h.
29  *   Update the WinLangCode array in ASLocalizer.cpp.
30  *   Add the language code to setTranslationClass() in ASLocalizer.cpp.
31  *   Add the English-Translation pair to the constructor in ASLocalizer.cpp.
32  *
33  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
34  */
35
36 //----------------------------------------------------------------------------
37 // headers
38 //----------------------------------------------------------------------------
39
40 #include "ASLocalizer.h"
41
42 #ifdef _WIN32
43         #include <windows.h>
44 #endif
45
46 #ifdef __VMS
47         #define __USE_STD_IOSTREAM 1
48         #include <assert>
49 #else
50         #include <cassert>
51 #endif
52
53 #include <cstdio>
54 #include <iostream>
55 #include <clocale>              // needed by some compilers
56 #include <cstdlib>
57 #include <typeinfo>
58
59 #ifdef _MSC_VER
60         #pragma warning(disable: 4996)  // secure version deprecation warnings
61 #endif
62
63 #ifdef __BORLANDC__
64         #pragma warn -8104          // Local Static with constructor dangerous for multi-threaded apps
65 #endif
66
67 #ifdef __INTEL_COMPILER
68         #pragma warning(disable:  383)  // value copied to temporary, reference to temporary used
69         #pragma warning(disable:  981)  // operands are evaluated in unspecified order
70 #endif
71
72 #ifdef __clang__
73         #pragma clang diagnostic ignored "-Wdeprecated-declarations"  // wcstombs
74 #endif
75
76 namespace astyle {
77
78 #ifndef ASTYLE_LIB
79
80 //----------------------------------------------------------------------------
81 // ASLocalizer class methods.
82 //----------------------------------------------------------------------------
83
84 ASLocalizer::ASLocalizer()
85 // Set the locale information.
86 {
87         // set language default values to english (ascii)
88         // this will be used if a locale or a language cannot be found
89         m_localeName = "UNKNOWN";
90         m_langID = "en";
91         m_lcid = 0;
92         m_subLangID.clear();
93         m_translation = nullptr;
94
95         // Not all compilers support the C++ function locale::global(locale(""));
96         char* localeName = setlocale(LC_ALL, "");
97         if (localeName == nullptr)              // use the english (ascii) defaults
98         {
99                 fprintf(stderr, "\n%s\n\n", "Cannot set native locale, reverting to English");
100                 setTranslationClass();
101                 return;
102         }
103         // set the class variables
104 #ifdef _WIN32
105         size_t lcid = GetUserDefaultLCID();
106         setLanguageFromLCID(lcid);
107 #else
108         setLanguageFromName(localeName);
109 #endif
110 }
111
112 ASLocalizer::~ASLocalizer()
113 // Delete dynamically allocated memory.
114 {
115         delete m_translation;
116 }
117
118 #ifdef _WIN32
119
120 struct WinLangCode
121 {
122         size_t winLang;
123         char canonicalLang[3];
124 };
125
126 static WinLangCode wlc[] =
127 // primary language identifier http://msdn.microsoft.com/en-us/library/aa912554.aspx
128 // sublanguage identifier http://msdn.microsoft.com/en-us/library/aa913256.aspx
129 // language ID http://msdn.microsoft.com/en-us/library/ee797784%28v=cs.20%29.aspx
130 {
131         { LANG_BULGARIAN,  "bg" },              //      bg-BG   1251
132         { LANG_CHINESE,    "zh" },              //      zh-CHS, zh-CHT
133         { LANG_DUTCH,      "nl" },              //      nl-NL   1252
134         { LANG_ENGLISH,    "en" },              //      en-US   1252
135         { LANG_ESTONIAN,   "et" },              //      et-EE
136         { LANG_FINNISH,    "fi" },              //      fi-FI   1252
137         { LANG_FRENCH,     "fr" },              //      fr-FR   1252
138         { LANG_GERMAN,     "de" },              //      de-DE   1252
139         { LANG_GREEK,      "el" },              //      el-GR   1253
140         { LANG_HINDI,      "hi" },              //      hi-IN
141         { LANG_HUNGARIAN,  "hu" },              //      hu-HU   1250
142         { LANG_ITALIAN,    "it" },              //      it-IT   1252
143         { LANG_JAPANESE,   "ja" },              //      ja-JP
144         { LANG_KOREAN,     "ko" },              //      ko-KR
145         { LANG_NORWEGIAN,  "nn" },              //      nn-NO   1252
146         { LANG_POLISH,     "pl" },              //      pl-PL   1250
147         { LANG_PORTUGUESE, "pt" },              //      pt-PT   1252
148         { LANG_ROMANIAN,   "ro" },              //      ro-RO   1250
149         { LANG_RUSSIAN,    "ru" },              //      ru-RU   1251
150         { LANG_SPANISH,    "es" },              //      es-ES   1252
151         { LANG_SWEDISH,    "sv" },              //      sv-SE   1252
152         { LANG_UKRAINIAN,  "uk" },              //      uk-UA   1251
153 };
154
155 void ASLocalizer::setLanguageFromLCID(size_t lcid)
156 // Windows get the language to use from the user locale.
157 // NOTE: GetUserDefaultLocaleName() gets nearly the same name as Linux.
158 //       But it needs Windows Vista or higher.
159 //       Same with LCIDToLocaleName().
160 {
161         m_lcid = lcid;
162         m_langID = "en";        // default to english
163
164         size_t lang = PRIMARYLANGID(LANGIDFROMLCID(m_lcid));
165         size_t sublang = SUBLANGID(LANGIDFROMLCID(m_lcid));
166         // find language in the wlc table
167         size_t count = sizeof(wlc) / sizeof(wlc[0]);
168         for (size_t i = 0; i < count; i++)
169         {
170                 if (wlc[i].winLang == lang)
171                 {
172                         m_langID = wlc[i].canonicalLang;
173                         break;
174                 }
175         }
176         if (m_langID == "zh")
177         {
178                 if (sublang == SUBLANG_CHINESE_SIMPLIFIED || sublang == SUBLANG_CHINESE_SINGAPORE)
179                         m_subLangID = "CHS";
180                 else
181                         m_subLangID = "CHT";    // default
182         }
183         setTranslationClass();
184 }
185
186 #endif  // _win32
187
188 string ASLocalizer::getLanguageID() const
189 // Returns the language ID in m_langID.
190 {
191         return m_langID;
192 }
193
194 const Translation* ASLocalizer::getTranslationClass() const
195 // Returns the name of the translation class in m_translation.  Used for testing.
196 {
197         assert(m_translation);
198         return m_translation;
199 }
200
201 void ASLocalizer::setLanguageFromName(const char* langID)
202 // Linux set the language to use from the langID.
203 //
204 // the language string has the following form
205 //
206 //      lang[_LANG][.encoding][@modifier]
207 //
208 // (see environ(5) in the Open Unix specification)
209 //
210 // where lang is the primary language, LANG is a sublang/territory,
211 // encoding is the charset to use and modifier "allows the user to select
212 // a specific instance of localization data within a single category"
213 //
214 // for example, the following strings are valid:
215 //      fr
216 //      fr_FR
217 //      de_DE.iso88591
218 //      de_DE@euro
219 //      de_DE.iso88591@euro
220 {
221         // the constants describing the format of lang_LANG locale string
222         m_lcid = 0;
223         string langStr = langID;
224         m_langID = langStr.substr(0, 2);
225
226         // need the sublang for chinese
227         if (m_langID == "zh" && langStr[2] == '_')
228         {
229                 string subLang = langStr.substr(3, 2);
230                 if (subLang == "CN" || subLang == "SG")
231                         m_subLangID = "CHS";
232                 else
233                         m_subLangID = "CHT";    // default
234         }
235         setTranslationClass();
236 }
237
238 const char* ASLocalizer::settext(const char* textIn) const
239 // Call the settext class and return the value.
240 {
241         assert(m_translation);
242         const string stringIn = textIn;
243         return m_translation->translate(stringIn).c_str();
244 }
245
246 void ASLocalizer::setTranslationClass()
247 // Return the required translation class.
248 // Sets the class variable m_translation from the value of m_langID.
249 // Get the language ID at http://msdn.microsoft.com/en-us/library/ee797784%28v=cs.20%29.aspx
250 {
251         assert(m_langID.length());
252         // delete previously set (--ascii option)
253         if (m_translation != nullptr)
254         {
255                 delete m_translation;
256                 m_translation = nullptr;
257         }
258         if (m_langID == "bg")
259                 m_translation = new Bulgarian;
260         else if (m_langID == "zh" && m_subLangID == "CHS")
261                 m_translation = new ChineseSimplified;
262         else if (m_langID == "zh" && m_subLangID == "CHT")
263                 m_translation = new ChineseTraditional;
264         else if (m_langID == "nl")
265                 m_translation = new Dutch;
266         else if (m_langID == "en")
267                 m_translation = new English;
268         else if (m_langID == "et")
269                 m_translation = new Estonian;
270         else if (m_langID == "fi")
271                 m_translation = new Finnish;
272         else if (m_langID == "fr")
273                 m_translation = new French;
274         else if (m_langID == "de")
275                 m_translation = new German;
276         else if (m_langID == "el")
277                 m_translation = new Greek;
278         else if (m_langID == "hi")
279                 m_translation = new Hindi;
280         else if (m_langID == "hu")
281                 m_translation = new Hungarian;
282         else if (m_langID == "it")
283                 m_translation = new Italian;
284         else if (m_langID == "ja")
285                 m_translation = new Japanese;
286         else if (m_langID == "ko")
287                 m_translation = new Korean;
288         else if (m_langID == "nn")
289                 m_translation = new Norwegian;
290         else if (m_langID == "pl")
291                 m_translation = new Polish;
292         else if (m_langID == "pt")
293                 m_translation = new Portuguese;
294         else if (m_langID == "ro")
295                 m_translation = new Romanian;
296         else if (m_langID == "ru")
297                 m_translation = new Russian;
298         else if (m_langID == "es")
299                 m_translation = new Spanish;
300         else if (m_langID == "sv")
301                 m_translation = new Swedish;
302         else if (m_langID == "uk")
303                 m_translation = new Ukrainian;
304         else    // default
305                 m_translation = new English;
306 }
307
308 //----------------------------------------------------------------------------
309 // Translation base class methods.
310 //----------------------------------------------------------------------------
311
312 void Translation::addPair(const string& english, const wstring& translated)
313 // Add a string pair to the translation vector.
314 {
315         pair<string, wstring> entry(english, translated);
316         m_translation.emplace_back(entry);
317 }
318
319 string Translation::convertToMultiByte(const wstring& wideStr) const
320 // Convert wchar_t to a multibyte string using the currently assigned locale.
321 // Return an empty string if an error occurs.
322 {
323         static bool msgDisplayed = false;
324         // get length of the output excluding the nullptr and validate the parameters
325         size_t mbLen = wcstombs(nullptr, wideStr.c_str(), 0);
326         if (mbLen == string::npos)
327         {
328                 if (!msgDisplayed)
329                 {
330                         fprintf(stderr, "\n%s\n\n", "Cannot convert to multi-byte string, reverting to English");
331                         msgDisplayed = true;
332                 }
333                 return "";
334         }
335         // convert the characters
336         char* mbStr = new (nothrow) char[mbLen + 1];
337         if (mbStr == nullptr)
338         {
339                 if (!msgDisplayed)
340                 {
341                         fprintf(stderr, "\n%s\n\n", "Bad memory alloc for multi-byte string, reverting to English");
342                         msgDisplayed = true;
343                 }
344                 return "";
345         }
346         wcstombs(mbStr, wideStr.c_str(), mbLen + 1);
347         // return the string
348         string mbTranslation = mbStr;
349         delete[] mbStr;
350         return mbTranslation;
351 }
352
353 size_t Translation::getTranslationVectorSize() const
354 // Return the translation vector size.  Used for testing.
355 {
356         return m_translation.size();
357 }
358
359 bool Translation::getWideTranslation(const string& stringIn, wstring& wideOut) const
360 // Get the wide translation string. Used for testing.
361 {
362         for (size_t i = 0; i < m_translation.size(); i++)
363         {
364                 if (m_translation[i].first == stringIn)
365                 {
366                         wideOut = m_translation[i].second;
367                         return true;
368                 }
369         }
370         // not found
371         wideOut = L"";
372         return false;
373 }
374
375 string& Translation::translate(const string& stringIn) const
376 // Translate a string.
377 // Return a mutable string so the method can have a "const" designation.
378 // This allows "settext" to be called from a "const" method.
379 {
380         m_mbTranslation.clear();
381         for (size_t i = 0; i < m_translation.size(); i++)
382         {
383                 if (m_translation[i].first == stringIn)
384                 {
385                         m_mbTranslation = convertToMultiByte(m_translation[i].second);
386                         break;
387                 }
388         }
389         // not found, return english
390         if (m_mbTranslation.empty())
391                 m_mbTranslation = stringIn;
392         return m_mbTranslation;
393 }
394
395 //----------------------------------------------------------------------------
396 // Translation class methods.
397 // These classes have only a constructor which builds the language vector.
398 //----------------------------------------------------------------------------
399
400 Bulgarian::Bulgarian()  // български
401 // build the translation vector in the Translation base class
402 {
403         addPair("Formatted  %s\n", L"Форматиран  %s\n");              // should align with unchanged
404         addPair("Unchanged  %s\n", L"Непроменен  %s\n");              // should align with formatted
405         addPair("Directory  %s\n", L"директория  %s\n");
406         addPair("Exclude  %s\n", L"Изключвам  %s\n");
407         addPair("Exclude (unmatched)  %s\n", L"Изключване (несравнимо)  %s\n");
408         addPair(" %s formatted   %s unchanged   ", L" %s форматиран   %s hепроменен   ");
409         addPair(" seconds   ", L" секунди   ");
410         addPair("%d min %d sec   ", L"%d мин %d сек   ");
411         addPair("%s lines\n", L"%s линии\n");
412         addPair("Using default options file %s\n", L"Използване на файла възможности по подразбиране %s\n");
413         addPair("Opening HTML documentation %s\n", L"Откриване HTML документация %s\n");
414         addPair("Invalid option file options:", L"Невалидни опции опция файлове:");
415         addPair("Invalid command line options:", L"Невалидни опции за командния ред:");
416         addPair("For help on options type 'astyle -h'", L"За помощ относно възможностите тип 'astyle -h'");
417         addPair("Cannot open options file", L"Не може да се отвори файл опции");
418         addPair("Cannot open directory", L"Не може да се отвори директория");
419         addPair("Cannot open HTML file %s\n", L"Не може да се отвори HTML файл %s\n");
420         addPair("Command execute failure", L"Command изпълни недостатъчност");
421         addPair("Command is not installed", L"Command не е инсталиран");
422         addPair("Missing filename in %s\n", L"Липсва името на файла в %s\n");
423         addPair("Recursive option with no wildcard", L"Рекурсивно опция, без маска");
424         addPair("Did you intend quote the filename", L"Знаете ли намерение да цитирам името на файла");
425         addPair("No file to process %s\n", L"Не файл за обработка %s\n");
426         addPair("Did you intend to use --recursive", L"Знаете ли възнамерявате да използвате --recursive");
427         addPair("Cannot process UTF-32 encoding", L"Не може да са UTF-32 кодиране");
428         addPair("\nArtistic Style has terminated", L"\nArtistic Style е прекратено");
429 }
430
431 ChineseSimplified::ChineseSimplified()  // 中文(简体)
432 // build the translation vector in the Translation base class
433 {
434         addPair("Formatted  %s\n", L"格式化  %s\n");         // should align with unchanged
435         addPair("Unchanged  %s\n", L"未改变  %s\n");         // should align with formatted
436         addPair("Directory  %s\n", L"目录  %s\n");
437         addPair("Exclude  %s\n", L"排除  %s\n");
438         addPair("Exclude (unmatched)  %s\n", L"排除(无匹配项)  %s\n");
439         addPair(" %s formatted   %s unchanged   ", L" %s 格式化   %s 未改变   ");
440         addPair(" seconds   ", L" 秒   ");
441         addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
442         addPair("%s lines\n", L"%s 行\n");
443         addPair("Using default options file %s\n", L"使用默认配置文件 %s\n");
444         addPair("Opening HTML documentation %s\n", L"打开HTML文档 %s\n");
445         addPair("Invalid option file options:", L"无效的配置文件选项:");
446         addPair("Invalid command line options:", L"无效的命令行选项:");
447         addPair("For help on options type 'astyle -h'", L"输入 'astyle -h' 以获得有关命令行的帮助");
448         addPair("Cannot open options file", L"无法打开配置文件");
449         addPair("Cannot open directory", L"无法打开目录");
450         addPair("Cannot open HTML file %s\n", L"无法打开HTML文件 %s\n");
451         addPair("Command execute failure", L"执行命令失败");
452         addPair("Command is not installed", L"未安装命令");
453         addPair("Missing filename in %s\n", L"在%s缺少文件名\n");
454         addPair("Recursive option with no wildcard", L"递归选项没有通配符");
455         addPair("Did you intend quote the filename", L"你打算引用文件名");
456         addPair("No file to process %s\n", L"没有文件可处理 %s\n");
457         addPair("Did you intend to use --recursive", L"你打算使用 --recursive");
458         addPair("Cannot process UTF-32 encoding", L"不能处理UTF-32编码");
459         addPair("\nArtistic Style has terminated", L"\nArtistic Style 已经终止运行");
460 }
461
462 ChineseTraditional::ChineseTraditional()        // 中文(繁體)
463 // build the translation vector in the Translation base class
464 {
465         addPair("Formatted  %s\n", L"格式化  %s\n");         // should align with unchanged
466         addPair("Unchanged  %s\n", L"未改變  %s\n");         // should align with formatted
467         addPair("Directory  %s\n", L"目錄  %s\n");
468         addPair("Exclude  %s\n", L"排除  %s\n");
469         addPair("Exclude (unmatched)  %s\n", L"排除(無匹配項)  %s\n");
470         addPair(" %s formatted   %s unchanged   ", L" %s 格式化   %s 未改變   ");
471         addPair(" seconds   ", L" 秒   ");
472         addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
473         addPair("%s lines\n", L"%s 行\n");
474         addPair("Using default options file %s\n", L"使用默認配置文件 %s\n");
475         addPair("Opening HTML documentation %s\n", L"打開HTML文檔 %s\n");
476         addPair("Invalid option file options:", L"無效的配置文件選項:");
477         addPair("Invalid command line options:", L"無效的命令行選項:");
478         addPair("For help on options type 'astyle -h'", L"輸入'astyle -h'以獲得有關命令行的幫助:");
479         addPair("Cannot open options file", L"無法打開配置文件");
480         addPair("Cannot open directory", L"無法打開目錄");
481         addPair("Cannot open HTML file %s\n", L"無法打開HTML文件 %s\n");
482         addPair("Command execute failure", L"執行命令失敗");
483         addPair("Command is not installed", L"未安裝命令");
484         addPair("Missing filename in %s\n", L"在%s缺少文件名\n");
485         addPair("Recursive option with no wildcard", L"遞歸選項沒有通配符");
486         addPair("Did you intend quote the filename", L"你打算引用文件名");
487         addPair("No file to process %s\n", L"沒有文件可處理 %s\n");
488         addPair("Did you intend to use --recursive", L"你打算使用 --recursive");
489         addPair("Cannot process UTF-32 encoding", L"不能處理UTF-32編碼");
490         addPair("\nArtistic Style has terminated", L"\nArtistic Style 已經終止運行");
491 }
492
493 Dutch::Dutch()  // Nederlandse
494 // build the translation vector in the Translation base class
495 {
496         addPair("Formatted  %s\n", L"Geformatteerd  %s\n");     // should align with unchanged
497         addPair("Unchanged  %s\n", L"Onveranderd    %s\n");     // should align with formatted
498         addPair("Directory  %s\n", L"Directory  %s\n");
499         addPair("Exclude  %s\n", L"Uitsluiten  %s\n");
500         addPair("Exclude (unmatched)  %s\n", L"Uitgesloten (ongeëvenaarde)  %s\n");
501         addPair(" %s formatted   %s unchanged   ", L" %s geformatteerd   %s onveranderd   ");
502         addPair(" seconds   ", L" seconden   ");
503         addPair("%d min %d sec   ", L"%d min %d sec   ");
504         addPair("%s lines\n", L"%s lijnen\n");
505         addPair("Using default options file %s\n", L"Met behulp van standaard opties bestand %s\n");
506         addPair("Opening HTML documentation %s\n", L"Het openen van HTML-documentatie %s\n");
507         addPair("Invalid option file options:", L"Ongeldige optie file opties:");
508         addPair("Invalid command line options:", L"Ongeldige command line opties:");
509         addPair("For help on options type 'astyle -h'", L"Voor hulp bij 'astyle-h' opties het type");
510         addPair("Cannot open options file", L"Kan niet worden geopend options bestand");
511         addPair("Cannot open directory", L"Kan niet open directory");
512         addPair("Cannot open HTML file %s\n", L"Kan HTML-bestand niet openen %s\n");
513         addPair("Command execute failure", L"Voeren commando falen");
514         addPair("Command is not installed", L"Command is niet geïnstalleerd");
515         addPair("Missing filename in %s\n", L"Ontbrekende bestandsnaam in %s\n");
516         addPair("Recursive option with no wildcard", L"Recursieve optie met geen wildcard");
517         addPair("Did you intend quote the filename", L"Heeft u van plan citaat van de bestandsnaam");
518         addPair("No file to process %s\n", L"Geen bestand te verwerken %s\n");
519         addPair("Did you intend to use --recursive", L"Hebt u van plan bent te gebruiken --recursive");
520         addPair("Cannot process UTF-32 encoding", L"Kan niet verwerken UTF-32 codering");
521         addPair("\nArtistic Style has terminated", L"\nArtistic Style heeft beëindigd");
522 }
523
524 English::English()
525 // this class is NOT translated
526 {}
527
528 Estonian::Estonian()    // Eesti
529 // build the translation vector in the Translation base class
530 {
531         addPair("Formatted  %s\n", L"Formaadis  %s\n");         // should align with unchanged
532         addPair("Unchanged  %s\n", L"Muutumatu  %s\n");         // should align with formatted
533         addPair("Directory  %s\n", L"Kataloog  %s\n");
534         addPair("Exclude  %s\n", L"Välista  %s\n");
535         addPair("Exclude (unmatched)  %s\n", L"Välista (tasakaalustamata)  %s\n");
536         addPair(" %s formatted   %s unchanged   ", L" %s formaadis   %s muutumatu   ");
537         addPair(" seconds   ", L" sekundit   ");
538         addPair("%d min %d sec   ", L"%d min %d sek   ");
539         addPair("%s lines\n", L"%s read\n");
540         addPair("Using default options file %s\n", L"Kasutades selliseid vaikimisi valikuid faili %s\n");
541         addPair("Opening HTML documentation %s\n", L"Avamine HTML dokumentatsioon %s\n");
542         addPair("Invalid option file options:", L"Vale valik faili võimalusi:");
543         addPair("Invalid command line options:", L"Vale käsureavõtmetega:");
544         addPair("For help on options type 'astyle -h'", L"Abiks võimaluste tüüp 'astyle -h'");
545         addPair("Cannot open options file", L"Ei saa avada võimalusi faili");
546         addPair("Cannot open directory", L"Ei saa avada kataloogi");
547         addPair("Cannot open HTML file %s\n", L"Ei saa avada HTML-faili %s\n");
548         addPair("Command execute failure", L"Käsk täita rike");
549         addPair("Command is not installed", L"Käsk ei ole paigaldatud");
550         addPair("Missing filename in %s\n", L"Kadunud failinimi %s\n");
551         addPair("Recursive option with no wildcard", L"Rekursiivne võimalus ilma metamärgi");
552         addPair("Did you intend quote the filename", L"Kas te kavatsete tsiteerida failinimi");
553         addPair("No file to process %s\n", L"No faili töötlema %s\n");
554         addPair("Did you intend to use --recursive", L"Kas te kavatsete kasutada --recursive");
555         addPair("Cannot process UTF-32 encoding", L"Ei saa töödelda UTF-32 kodeeringus");
556         addPair("\nArtistic Style has terminated", L"\nArtistic Style on lõpetatud");
557 }
558
559 Finnish::Finnish()      // Suomeksi
560 // build the translation vector in the Translation base class
561 {
562         addPair("Formatted  %s\n", L"Muotoiltu  %s\n"); // should align with unchanged
563         addPair("Unchanged  %s\n", L"Ennallaan  %s\n"); // should align with formatted
564         addPair("Directory  %s\n", L"Directory  %s\n");
565         addPair("Exclude  %s\n", L"Sulkea  %s\n");
566         addPair("Exclude (unmatched)  %s\n", L"Sulkea (verraton)  %s\n");
567         addPair(" %s formatted   %s unchanged   ", L" %s muotoiltu   %s ennallaan   ");
568         addPair(" seconds   ", L" sekuntia   ");
569         addPair("%d min %d sec   ", L"%d min %d sek   ");
570         addPair("%s lines\n", L"%s linjat\n");
571         addPair("Using default options file %s\n", L"Käyttämällä oletusasetuksia tiedosto %s\n");
572         addPair("Opening HTML documentation %s\n", L"Avaaminen HTML asiakirjat %s\n");
573         addPair("Invalid option file options:", L"Virheellinen vaihtoehto tiedosto vaihtoehtoja:");
574         addPair("Invalid command line options:", L"Virheellinen komentorivin:");
575         addPair("For help on options type 'astyle -h'", L"Apua vaihtoehdoista tyyppi 'astyle -h'");
576         addPair("Cannot open options file", L"Ei voi avata vaihtoehtoja tiedostoa");
577         addPair("Cannot open directory", L"Ei Open Directory");
578         addPair("Cannot open HTML file %s\n", L"Ei voi avata HTML-tiedoston %s\n");
579         addPair("Command execute failure", L"Suorita komento vika");
580         addPair("Command is not installed", L"Komento ei ole asennettu");
581         addPair("Missing filename in %s\n", L"Puuttuvat tiedostonimi %s\n");
582         addPair("Recursive option with no wildcard", L"Rekursiivinen vaihtoehto ilman wildcard");
583         addPair("Did you intend quote the filename", L"Oletko aio lainata tiedostonimi");
584         addPair("No file to process %s\n", L"Ei tiedostoa käsitellä %s\n");
585         addPair("Did you intend to use --recursive", L"Oliko aiot käyttää --recursive");
586         addPair("Cannot process UTF-32 encoding", L"Ei voi käsitellä UTF-32 koodausta");
587         addPair("\nArtistic Style has terminated", L"\nArtistic Style on päättynyt");
588 }
589
590 French::French()        // Française
591 // build the translation vector in the Translation base class
592 {
593         addPair("Formatted  %s\n", L"Formaté    %s\n");        // should align with unchanged
594         addPair("Unchanged  %s\n", L"Inchangée  %s\n");        // should align with formatted
595         addPair("Directory  %s\n", L"Répertoire  %s\n");
596         addPair("Exclude  %s\n", L"Exclure  %s\n");
597         addPair("Exclude (unmatched)  %s\n", L"Exclure (non appariés)  %s\n");
598         addPair(" %s formatted   %s unchanged   ", L" %s formaté   %s inchangée   ");
599         addPair(" seconds   ", L" seconde   ");
600         addPair("%d min %d sec   ", L"%d min %d sec   ");
601         addPair("%s lines\n", L"%s lignes\n");
602         addPair("Using default options file %s\n", L"Options par défaut utilisation du fichier %s\n");
603         addPair("Opening HTML documentation %s\n", L"Ouverture documentation HTML %s\n");
604         addPair("Invalid option file options:", L"Options Blancs option du fichier:");
605         addPair("Invalid command line options:", L"Blancs options ligne de commande:");
606         addPair("For help on options type 'astyle -h'", L"Pour de l'aide sur les options tapez 'astyle -h'");
607         addPair("Cannot open options file", L"Impossible d'ouvrir le fichier d'options");
608         addPair("Cannot open directory", L"Impossible d'ouvrir le répertoire");
609         addPair("Cannot open HTML file %s\n", L"Impossible d'ouvrir le fichier HTML %s\n");
610         addPair("Command execute failure", L"Exécuter échec de la commande");
611         addPair("Command is not installed", L"Commande n'est pas installé");
612         addPair("Missing filename in %s\n", L"Nom de fichier manquant dans %s\n");
613         addPair("Recursive option with no wildcard", L"Option récursive sans joker");
614         addPair("Did you intend quote the filename", L"Avez-vous l'intention de citer le nom de fichier");
615         addPair("No file to process %s\n", L"Aucun fichier à traiter %s\n");
616         addPair("Did you intend to use --recursive", L"Avez-vous l'intention d'utiliser --recursive");
617         addPair("Cannot process UTF-32 encoding", L"Impossible de traiter codage UTF-32");
618         addPair("\nArtistic Style has terminated", L"\nArtistic Style a mis fin");
619 }
620
621 German::German()        // Deutsch
622 // build the translation vector in the Translation base class
623 {
624         addPair("Formatted  %s\n", L"Formatiert   %s\n");       // should align with unchanged
625         addPair("Unchanged  %s\n", L"Unverändert  %s\n");      // should align with formatted
626         addPair("Directory  %s\n", L"Verzeichnis  %s\n");
627         addPair("Exclude  %s\n", L"Ausschließen  %s\n");
628         addPair("Exclude (unmatched)  %s\n", L"Ausschließen (unerreichte)  %s\n");
629         addPair(" %s formatted   %s unchanged   ", L" %s formatiert   %s unverändert   ");
630         addPair(" seconds   ", L" sekunden   ");
631         addPair("%d min %d sec   ", L"%d min %d sek   ");
632         addPair("%s lines\n", L"%s linien\n");
633         addPair("Using default options file %s\n", L"Mit Standard-Optionen Dat %s\n");
634         addPair("Opening HTML documentation %s\n", L"Öffnen HTML-Dokumentation %s\n");
635         addPair("Invalid option file options:", L"Ungültige Option Datei-Optionen:");
636         addPair("Invalid command line options:", L"Ungültige Kommandozeilen-Optionen:");
637         addPair("For help on options type 'astyle -h'", L"Für Hilfe zu den Optionen geben Sie 'astyle -h'");
638         addPair("Cannot open options file", L"Kann nicht geöffnet werden Optionsdatei");
639         addPair("Cannot open directory", L"Kann nicht geöffnet werden Verzeichnis");
640         addPair("Cannot open HTML file %s\n", L"Kann nicht öffnen HTML-Datei %s\n");
641         addPair("Command execute failure", L"Execute Befehl Scheitern");
642         addPair("Command is not installed", L"Befehl ist nicht installiert");
643         addPair("Missing filename in %s\n", L"Missing in %s Dateiname\n");
644         addPair("Recursive option with no wildcard", L"Rekursive Option ohne Wildcard");
645         addPair("Did you intend quote the filename", L"Haben Sie die Absicht Inhalte der Dateiname");
646         addPair("No file to process %s\n", L"Keine Datei zu verarbeiten %s\n");
647         addPair("Did you intend to use --recursive", L"Haben Sie verwenden möchten --recursive");
648         addPair("Cannot process UTF-32 encoding", L"Nicht verarbeiten kann UTF-32 Codierung");
649         addPair("\nArtistic Style has terminated", L"\nArtistic Style ist beendet");
650 }
651
652 Greek::Greek()  // ελληνικά
653 // build the translation vector in the Translation base class
654 {
655         addPair("Formatted  %s\n", L"Διαμορφωμένη  %s\n");  // should align with unchanged
656         addPair("Unchanged  %s\n", L"Αμετάβλητος   %s\n");   // should align with formatted
657         addPair("Directory  %s\n", L"Κατάλογος  %s\n");
658         addPair("Exclude  %s\n", L"Αποκλείω  %s\n");
659         addPair("Exclude (unmatched)  %s\n", L"Ausschließen (unerreichte)  %s\n");
660         addPair(" %s formatted   %s unchanged   ", L" %s σχηματοποιημένη   %s αμετάβλητες   ");
661         addPair(" seconds   ", L" δευτερόλεπτα   ");
662         addPair("%d min %d sec   ", L"%d λεπ %d δευ   ");
663         addPair("%s lines\n", L"%s γραμμές\n");
664         addPair("Using default options file %s\n", L"Χρησιμοποιώντας το αρχείο προεπιλεγμένες επιλογές %s\n");
665         addPair("Opening HTML documentation %s\n", L"Εγκαίνια έγγραφα HTML %s\n");
666         addPair("Invalid option file options:", L"Μη έγκυρες επιλογές αρχείου επιλογή:");
667         addPair("Invalid command line options:", L"Μη έγκυρη επιλογές γραμμής εντολών:");
668         addPair("For help on options type 'astyle -h'", L"Για βοήθεια σχετικά με το είδος επιλογές 'astyle -h'");
669         addPair("Cannot open options file", L"Δεν μπορείτε να ανοίξετε το αρχείο επιλογών");
670         addPair("Cannot open directory", L"Δεν μπορείτε να ανοίξετε τον κατάλογο");
671         addPair("Cannot open HTML file %s\n", L"Δεν μπορείτε να ανοίξετε το αρχείο HTML %s\n");
672         addPair("Command execute failure", L"Εντολή να εκτελέσει την αποτυχία");
673         addPair("Command is not installed", L"Η εντολή δεν έχει εγκατασταθεί");
674         addPair("Missing filename in %s\n", L"Λείπει το όνομα αρχείου σε %s\n");
675         addPair("Recursive option with no wildcard", L"Αναδρομικές επιλογή χωρίς μπαλαντέρ");
676         addPair("Did you intend quote the filename", L"Μήπως σκοπεύετε να αναφέρετε το όνομα του αρχείου");
677         addPair("No file to process %s\n", L"Δεν υπάρχει αρχείο για την επεξεργασία %s\n");
678         addPair("Did you intend to use --recursive", L"Μήπως σκοπεύετε να χρησιμοποιήσετε --recursive");
679         addPair("Cannot process UTF-32 encoding", L"δεν μπορεί να επεξεργαστεί UTF-32 κωδικοποίηση");
680         addPair("\nArtistic Style has terminated", L"\nArtistic Style έχει λήξει");
681 }
682
683 Hindi::Hindi()  // हिन्दी
684 // build the translation vector in the Translation base class
685 {
686         // NOTE: Scintilla based editors (CodeBlocks) cannot always edit Hindi.
687         //       Use Visual Studio instead.
688         addPair("Formatted  %s\n", L"स्वरूपित किया  %s\n");     // should align with unchanged
689         addPair("Unchanged  %s\n", L"अपरिवर्तित     %s\n"); // should align with formatted
690         addPair("Directory  %s\n", L"निर्देशिका  %s\n");
691         addPair("Exclude  %s\n", L"निकालना  %s\n");
692         addPair("Exclude (unmatched)  %s\n", L"अपवर्जित (बेजोड़)  %s\n");
693         addPair(" %s formatted   %s unchanged   ", L" %s स्वरूपित किया   %s अपरिवर्तित   ");
694         addPair(" seconds   ", L" सेकंड   ");
695         addPair("%d min %d sec   ", L"%d मिनट %d सेकंड   ");
696         addPair("%s lines\n", L"%s लाइनों\n");
697         addPair("Using default options file %s\n", L"डिफ़ॉल्ट विकल्प का उपयोग कर फ़ाइल %s\n");
698         addPair("Opening HTML documentation %s\n", L"एचटीएमएल प्रलेखन खोलना %s\n");
699         addPair("Invalid option file options:", L"अवैध विकल्प फ़ाइल विकल्प हैं:");
700         addPair("Invalid command line options:", L"कमांड लाइन विकल्प अवैध:");
701         addPair("For help on options type 'astyle -h'", L"विकल्पों पर मदद के लिए प्रकार 'astyle -h'");
702         addPair("Cannot open options file", L"विकल्प फ़ाइल नहीं खोल सकता है");
703         addPair("Cannot open directory", L"निर्देशिका नहीं खोल सकता");
704         addPair("Cannot open HTML file %s\n", L"HTML फ़ाइल नहीं खोल सकता %s\n");
705         addPair("Command execute failure", L"आदेश विफलता निष्पादित");
706         addPair("Command is not installed", L"कमान स्थापित नहीं है");
707         addPair("Missing filename in %s\n", L"लापता में फ़ाइलनाम %s\n");
708         addPair("Recursive option with no wildcard", L"कोई वाइल्डकार्ड साथ पुनरावर्ती विकल्प");
709         addPair("Did you intend quote the filename", L"क्या आप बोली फ़ाइलनाम का इरादा");
710         addPair("No file to process %s\n", L"कोई फ़ाइल %s प्रक्रिया के लिए\n");
711         addPair("Did you intend to use --recursive", L"क्या आप उपयोग करना चाहते हैं --recursive");
712         addPair("Cannot process UTF-32 encoding", L"UTF-32 कूटबन्धन प्रक्रिया नहीं कर सकते");
713         addPair("\nArtistic Style has terminated", L"\nArtistic Style समाप्त किया है");
714 }
715
716 Hungarian::Hungarian()  // Magyar
717 // build the translation vector in the Translation base class
718 {
719         addPair("Formatted  %s\n", L"Formázott    %s\n");      // should align with unchanged
720         addPair("Unchanged  %s\n", L"Változatlan  %s\n");      // should align with formatted
721         addPair("Directory  %s\n", L"Címjegyzék  %s\n");
722         addPair("Exclude  %s\n", L"Kizár  %s\n");
723         addPair("Exclude (unmatched)  %s\n", L"Escludere (senza pari)  %s\n");
724         addPair(" %s formatted   %s unchanged   ", L" %s formázott   %s változatlan   ");
725         addPair(" seconds   ", L" másodperc   ");
726         addPair("%d min %d sec   ", L"%d jeg %d más   ");
727         addPair("%s lines\n", L"%s vonalak\n");
728         addPair("Using default options file %s\n", L"Az alapértelmezett beállítások fájl %s\n");
729         addPair("Opening HTML documentation %s\n", L"Nyitó HTML dokumentáció %s\n");
730         addPair("Invalid option file options:", L"Érvénytelen opció fájlbeállítást:");
731         addPair("Invalid command line options:", L"Érvénytelen parancssori opciók:");
732         addPair("For help on options type 'astyle -h'", L"Ha segítségre van lehetőség típus 'astyle-h'");
733         addPair("Cannot open options file", L"Nem lehet megnyitni beállítási fájlban");
734         addPair("Cannot open directory", L"Nem lehet megnyitni könyvtár");
735         addPair("Cannot open HTML file %s\n", L"Nem lehet megnyitni a HTML fájlt %s\n");
736         addPair("Command execute failure", L"Command végre hiba");
737         addPair("Command is not installed", L"Parancs nincs telepítve");
738         addPair("Missing filename in %s\n", L"Hiányzó fájlnév %s\n");
739         addPair("Recursive option with no wildcard", L"Rekurzív kapcsolót nem wildcard");
740         addPair("Did you intend quote the filename", L"Esetleg kívánja idézni a fájlnév");
741         addPair("No file to process %s\n", L"Nincs fájl feldolgozása %s\n");
742         addPair("Did you intend to use --recursive", L"Esetleg a használni kívánt --recursive");
743         addPair("Cannot process UTF-32 encoding", L"Nem tudja feldolgozni UTF-32 kódolással");
744         addPair("\nArtistic Style has terminated", L"\nArtistic Style megszűnt");
745 }
746
747 Italian::Italian()      // Italiano
748 // build the translation vector in the Translation base class
749 {
750         addPair("Formatted  %s\n", L"Formattata  %s\n");        // should align with unchanged
751         addPair("Unchanged  %s\n", L"Immutato    %s\n");        // should align with formatted
752         addPair("Directory  %s\n", L"Elenco  %s\n");
753         addPair("Exclude  %s\n", L"Escludere  %s\n");
754         addPair("Exclude (unmatched)  %s\n", L"Escludere (senza pari)  %s\n");
755         addPair(" %s formatted   %s unchanged   ", L" %s ormattata   %s immutato   ");
756         addPair(" seconds   ", L" secondo   ");
757         addPair("%d min %d sec   ", L"%d min %d seg   ");
758         addPair("%s lines\n", L"%s linee\n");
759         addPair("Using default options file %s\n", L"Utilizzando file delle opzioni di default %s\n");
760         addPair("Opening HTML documentation %s\n", L"Apertura di documenti HTML %s\n");
761         addPair("Invalid option file options:", L"Opzione non valida file delle opzioni:");
762         addPair("Invalid command line options:", L"Opzioni della riga di comando non valido:");
763         addPair("For help on options type 'astyle -h'", L"Per informazioni sulle opzioni di tipo 'astyle-h'");
764         addPair("Cannot open options file", L"Impossibile aprire il file opzioni");
765         addPair("Cannot open directory", L"Impossibile aprire la directory");
766         addPair("Cannot open HTML file %s\n", L"Impossibile aprire il file HTML %s\n");
767         addPair("Command execute failure", L"Esegui fallimento comando");
768         addPair("Command is not installed", L"Il comando non è installato");
769         addPair("Missing filename in %s\n", L"Nome del file mancante in %s\n");
770         addPair("Recursive option with no wildcard", L"Opzione ricorsiva senza jolly");
771         addPair("Did you intend quote the filename", L"Avete intenzione citare il nome del file");
772         addPair("No file to process %s\n", L"Nessun file al processo %s\n");
773         addPair("Did you intend to use --recursive", L"Hai intenzione di utilizzare --recursive");
774         addPair("Cannot process UTF-32 encoding", L"Non è possibile processo di codifica UTF-32");
775         addPair("\nArtistic Style has terminated", L"\nArtistic Style ha terminato");
776 }
777
778 Japanese::Japanese()    // 日本語
779 // build the translation vector in the Translation base class
780 {
781         addPair("Formatted  %s\n", L"フォーマット済みの  %s\n");               // should align with unchanged
782         addPair("Unchanged  %s\n", L"変わりません        %s\n");          // should align with formatted
783         addPair("Directory  %s\n", L"ディレクトリ  %s\n");
784         addPair("Exclude  %s\n", L"除外する  %s\n");
785         addPair("Exclude (unmatched)  %s\n", L"除外する(一致しません)  %s\n");
786         addPair(" %s formatted   %s unchanged   ", L" %s フフォーマット済みの   %s 変わりません   ");
787         addPair(" seconds   ", L" 秒   ");
788         addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
789         addPair("%s lines\n", L"%s ライン\n");
790         addPair("Using default options file %s\n", L"デフォルトのオプションファイルを使用して、 %s\n");
791         addPair("Opening HTML documentation %s\n", L"オープニングHTMLドキュメント %s\n");
792         addPair("Invalid option file options:", L"無効なオプションファイルのオプション:");
793         addPair("Invalid command line options:", L"無効なコマンドラインオプション:");
794         addPair("For help on options type 'astyle -h'", L"コオプションの種類のヘルプについて'astyle- h'を入力してください");
795         addPair("Cannot open options file", L"オプションファイルを開くことができません");
796         addPair("Cannot open directory", L"ディレクトリを開くことができません。");
797         addPair("Cannot open HTML file %s\n", L"HTMLファイルを開くことができません %s\n");
798         addPair("Command execute failure", L"コマンドが失敗を実行します");
799         addPair("Command is not installed", L"コマンドがインストールされていません");
800         addPair("Missing filename in %s\n", L"%s で、ファイル名がありません\n");
801         addPair("Recursive option with no wildcard", L"無ワイルドカードを使用して再帰的なオプション");
802         addPair("Did you intend quote the filename", L"あなたはファイル名を引用するつもりでした");
803         addPair("No file to process %s\n", L"いいえファイルは処理しないように %s\n");
804         addPair("Did you intend to use --recursive", L"あなたは--recursive使用するつもりでした");
805         addPair("Cannot process UTF-32 encoding", L"UTF - 32エンコーディングを処理できません");
806         addPair("\nArtistic Style has terminated", L"\nArtistic Style 終了しました");
807 }
808
809 Korean::Korean()        // 한국의
810 // build the translation vector in the Translation base class
811 {
812         addPair("Formatted  %s\n", L"수정됨    %s\n");               // should align with unchanged
813         addPair("Unchanged  %s\n", L"변경없음  %s\n");              // should align with formatted
814         addPair("Directory  %s\n", L"디렉토리  %s\n");
815         addPair("Exclude  %s\n", L"제외됨  %s\n");
816         addPair("Exclude (unmatched)  %s\n", L"제외 (NO 일치)  %s\n");
817         addPair(" %s formatted   %s unchanged   ", L" %s 수정됨   %s 변경없음   ");
818         addPair(" seconds   ", L" 초   ");
819         addPair("%d min %d sec   ", L"%d 분 %d 초   ");
820         addPair("%s lines\n", L"%s 라인\n");
821         addPair("Using default options file %s\n", L"기본 구성 파일을 사용 %s\n");
822         addPair("Opening HTML documentation %s\n", L"HTML 문서를 열기 %s\n");
823         addPair("Invalid option file options:", L"잘못된 구성 파일 옵션 :");
824         addPair("Invalid command line options:", L"잘못된 명령줄 옵션 :");
825         addPair("For help on options type 'astyle -h'", L"도움말을 보려면 옵션 유형 'astyle - H'를 사용합니다");
826         addPair("Cannot open options file", L"구성 파일을 열 수 없습니다");
827         addPair("Cannot open directory", L"디렉토리를 열지 못했습니다");
828         addPair("Cannot open HTML file %s\n", L"HTML 파일을 열 수 없습니다 %s\n");
829         addPair("Command execute failure", L"명령 실패를 실행");
830         addPair("Command is not installed", L"명령이 설치되어 있지 않습니다");
831         addPair("Missing filename in %s\n", L"%s 에서 누락된 파일 이름\n");
832         addPair("Recursive option with no wildcard", L"와일드 카드없이 재귀 옵션");
833         addPair("Did you intend quote the filename", L"당신은 파일 이름을 인용하고자하나요");
834         addPair("No file to process %s\n", L"처리할 파일이 없습니다 %s\n");
835         addPair("Did you intend to use --recursive", L"--recursive 를 사용하고자 하십니까");
836         addPair("Cannot process UTF-32 encoding", L"UTF-32 인코딩을 처리할 수 없습니다");
837         addPair("\nArtistic Style has terminated", L"\nArtistic Style를 종료합니다");
838 }
839
840 Norwegian::Norwegian()  // Norsk
841 // build the translation vector in the Translation base class
842 {
843         addPair("Formatted  %s\n", L"Formatert  %s\n");         // should align with unchanged
844         addPair("Unchanged  %s\n", L"Uendret    %s\n");         // should align with formatted
845         addPair("Directory  %s\n", L"Katalog  %s\n");
846         addPair("Exclude  %s\n", L"Ekskluder  %s\n");
847         addPair("Exclude (unmatched)  %s\n", L"Ekskluder (uovertruffen)  %s\n");
848         addPair(" %s formatted   %s unchanged   ", L" %s formatert   %s uendret   ");
849         addPair(" seconds   ", L" sekunder   ");
850         addPair("%d min %d sec   ", L"%d min %d sek?   ");
851         addPair("%s lines\n", L"%s linjer\n");
852         addPair("Using default options file %s\n", L"Ved hjelp av standardalternativer fil %s\n");
853         addPair("Opening HTML documentation %s\n", L"Åpning HTML dokumentasjon %s\n");
854         addPair("Invalid option file options:", L"Ugyldige alternativ filalternativer:");
855         addPair("Invalid command line options:", L"Kommandolinjevalg Ugyldige:");
856         addPair("For help on options type 'astyle -h'", L"For hjelp til alternativer type 'astyle -h'");
857         addPair("Cannot open options file", L"Kan ikke åpne alternativer fil");
858         addPair("Cannot open directory", L"Kan ikke åpne katalog");
859         addPair("Cannot open HTML file %s\n", L"Kan ikke åpne HTML-fil %s\n");
860         addPair("Command execute failure", L"Command utføre svikt");
861         addPair("Command is not installed", L"Command er ikke installert");
862         addPair("Missing filename in %s\n", L"Mangler filnavn i %s\n");
863         addPair("Recursive option with no wildcard", L"Rekursiv alternativ uten wildcard");
864         addPair("Did you intend quote the filename", L"Har du tenkt sitere filnavnet");
865         addPair("No file to process %s\n", L"Ingen fil å behandle %s\n");
866         addPair("Did you intend to use --recursive", L"Har du tenkt å bruke --recursive");
867         addPair("Cannot process UTF-32 encoding", L"Kan ikke behandle UTF-32 koding");
868         addPair("\nArtistic Style has terminated", L"\nArtistic Style har avsluttet");
869 }
870
871 Polish::Polish()        // Polski
872 // build the translation vector in the Translation base class
873 {
874         addPair("Formatted  %s\n", L"Sformatowany  %s\n");      // should align with unchanged
875         addPair("Unchanged  %s\n", L"Niezmienione  %s\n");      // should align with formatted
876         addPair("Directory  %s\n", L"Katalog  %s\n");
877         addPair("Exclude  %s\n", L"Wykluczać  %s\n");
878         addPair("Exclude (unmatched)  %s\n", L"Wyklucz (niezrównany)  %s\n");
879         addPair(" %s formatted   %s unchanged   ", L" %s sformatowany   %s niezmienione   ");
880         addPair(" seconds   ", L" sekund   ");
881         addPair("%d min %d sec   ", L"%d min %d sek   ");
882         addPair("%s lines\n", L"%s linii\n");
883         addPair("Using default options file %s\n", L"Korzystanie z domyślnej opcji %s plik\n");
884         addPair("Opening HTML documentation %s\n", L"Otwarcie dokumentacji HTML %s\n");
885         addPair("Invalid option file options:", L"Nieprawidłowy opcji pliku opcji:");
886         addPair("Invalid command line options:", L"Nieprawidłowe opcje wiersza polecenia:");
887         addPair("For help on options type 'astyle -h'", L"Aby uzyskać pomoc od rodzaju opcji 'astyle -h'");
888         addPair("Cannot open options file", L"Nie można otworzyć pliku opcji");
889         addPair("Cannot open directory", L"Nie można otworzyć katalogu");
890         addPair("Cannot open HTML file %s\n", L"Nie można otworzyć pliku HTML %s\n");
891         addPair("Command execute failure", L"Wykonaj polecenia niepowodzenia");
892         addPair("Command is not installed", L"Polecenie nie jest zainstalowany");
893         addPair("Missing filename in %s\n", L"Brakuje pliku w %s\n");
894         addPair("Recursive option with no wildcard", L"Rekurencyjne opcja bez symboli");
895         addPair("Did you intend quote the filename", L"Czy zamierza Pan podać nazwę pliku");
896         addPair("No file to process %s\n", L"Brak pliku do procesu %s\n");
897         addPair("Did you intend to use --recursive", L"Czy masz zamiar używać --recursive");
898         addPair("Cannot process UTF-32 encoding", L"Nie można procesu kodowania UTF-32");
899         addPair("\nArtistic Style has terminated", L"\nArtistic Style został zakończony");
900 }
901
902 Portuguese::Portuguese()        // Português
903 // build the translation vector in the Translation base class
904 {
905         addPair("Formatted  %s\n", L"Formatado   %s\n");        // should align with unchanged
906         addPair("Unchanged  %s\n", L"Inalterado  %s\n");        // should align with formatted
907         addPair("Directory  %s\n", L"Diretório  %s\n");
908         addPair("Exclude  %s\n", L"Excluir  %s\n");
909         addPair("Exclude (unmatched)  %s\n", L"Excluir (incomparável)  %s\n");
910         addPair(" %s formatted   %s unchanged   ", L" %s formatado   %s inalterado   ");
911         addPair(" seconds   ", L" segundo   ");
912         addPair("%d min %d sec   ", L"%d min %d seg   ");
913         addPair("%s lines\n", L"%s linhas\n");
914         addPair("Using default options file %s\n", L"Usando o arquivo de opções padrão %s\n");
915         addPair("Opening HTML documentation %s\n", L"Abrindo a documentação HTML %s\n");
916         addPair("Invalid option file options:", L"Opções de arquivo inválido opção:");
917         addPair("Invalid command line options:", L"Opções de linha de comando inválida:");
918         addPair("For help on options type 'astyle -h'", L"Para obter ajuda sobre as opções de tipo 'astyle -h'");
919         addPair("Cannot open options file", L"Não é possível abrir arquivo de opções");
920         addPair("Cannot open directory", L"Não é possível abrir diretório");
921         addPair("Cannot open HTML file %s\n", L"Não é possível abrir arquivo HTML %s\n");
922         addPair("Command execute failure", L"Executar falha de comando");
923         addPair("Command is not installed", L"Comando não está instalado");
924         addPair("Missing filename in %s\n", L"Filename faltando em %s\n");
925         addPair("Recursive option with no wildcard", L"Opção recursiva sem curinga");
926         addPair("Did you intend quote the filename", L"Será que você pretende citar o nome do arquivo");
927         addPair("No file to process %s\n", L"Nenhum arquivo para processar %s\n");
928         addPair("Did you intend to use --recursive", L"Será que você pretende usar --recursive");
929         addPair("Cannot process UTF-32 encoding", L"Não pode processar a codificação UTF-32");
930         addPair("\nArtistic Style has terminated", L"\nArtistic Style terminou");
931 }
932
933 Romanian::Romanian()    // Română
934 // build the translation vector in the Translation base class
935 {
936         addPair("Formatted  %s\n", L"Formatat    %s\n");        // should align with unchanged
937         addPair("Unchanged  %s\n", L"Neschimbat  %s\n");        // should align with formatted
938         addPair("Directory  %s\n", L"Director  %s\n");
939         addPair("Exclude  %s\n", L"Excludeți  %s\n");
940         addPair("Exclude (unmatched)  %s\n", L"Excludeți (necompensată)  %s\n");
941         addPair(" %s formatted   %s unchanged   ", L" %s formatat   %s neschimbat   ");
942         addPair(" seconds   ", L" secunde   ");
943         addPair("%d min %d sec   ", L"%d min %d sec   ");
944         addPair("%s lines\n", L"%s linii\n");
945         addPair("Using default options file %s\n", L"Fișier folosind opțiunile implicite %s\n");
946         addPair("Opening HTML documentation %s\n", L"Documentație HTML deschidere %s\n");
947         addPair("Invalid option file options:", L"Opțiuni de opțiune de fișier nevalide:");
948         addPair("Invalid command line options:", L"Opțiuni de linie de comandă nevalide:");
949         addPair("For help on options type 'astyle -h'", L"Pentru ajutor cu privire la tipul de opțiuni 'astyle -h'");
950         addPair("Cannot open options file", L"Nu se poate deschide fișierul de opțiuni");
951         addPair("Cannot open directory", L"Nu se poate deschide directorul");
952         addPair("Cannot open HTML file %s\n", L"Nu se poate deschide fișierul HTML %s\n");
953         addPair("Command execute failure", L"Comandă executa eșec");
954         addPair("Command is not installed", L"Comanda nu este instalat");
955         addPair("Missing filename in %s\n", L"Lipsă nume de fișier %s\n");
956         addPair("Recursive option with no wildcard", L"Opțiunea recursiv cu nici un wildcard");
957         addPair("Did you intend quote the filename", L"V-intentionati cita numele de fișier");
958         addPair("No file to process %s\n", L"Nu există un fișier pentru a procesa %s\n");
959         addPair("Did you intend to use --recursive", L"V-ați intenționați să utilizați --recursive");
960         addPair("Cannot process UTF-32 encoding", L"Nu se poate procesa codificarea UTF-32");
961         addPair("\nArtistic Style has terminated", L"\nArtistic Style a terminat");
962 }
963
964 Russian::Russian()      // русский
965 // build the translation vector in the Translation base class
966 {
967         addPair("Formatted  %s\n", L"Форматированный  %s\n");    // should align with unchanged
968         addPair("Unchanged  %s\n", L"без изменений    %s\n");       // should align with formatted
969         addPair("Directory  %s\n", L"каталог  %s\n");
970         addPair("Exclude  %s\n", L"исключать  %s\n");
971         addPair("Exclude (unmatched)  %s\n", L"Исключить (непревзойденный)  %s\n");
972         addPair(" %s formatted   %s unchanged   ", L" %s Форматированный   %s без изменений   ");
973         addPair(" seconds   ", L" секунды   ");
974         addPair("%d min %d sec   ", L"%d мин %d сек   ");
975         addPair("%s lines\n", L"%s линий\n");
976         addPair("Using default options file %s\n", L"Использование опции по умолчанию файл %s\n");
977         addPair("Opening HTML documentation %s\n", L"Открытие HTML документации %s\n");
978         addPair("Invalid option file options:", L"Недопустимый файл опций опцию:");
979         addPair("Invalid command line options:", L"Недопустимые параметры командной строки:");
980         addPair("For help on options type 'astyle -h'", L"Для получения справки по 'astyle -h' опций типа");
981         addPair("Cannot open options file", L"Не удается открыть файл параметров");
982         addPair("Cannot open directory", L"Не могу открыть каталог");
983         addPair("Cannot open HTML file %s\n", L"Не удается открыть файл HTML %s\n");
984         addPair("Command execute failure", L"Выполнить команду недостаточности");
985         addPair("Command is not installed", L"Не установлен Команда");
986         addPair("Missing filename in %s\n", L"Отсутствует имя файла в %s\n");
987         addPair("Recursive option with no wildcard", L"Рекурсивный вариант без каких-либо шаблона");
988         addPair("Did you intend quote the filename", L"Вы намерены цитатой файла");
989         addPair("No file to process %s\n", L"Нет файлов для обработки %s\n");
990         addPair("Did you intend to use --recursive", L"Неужели вы собираетесь использовать --recursive");
991         addPair("Cannot process UTF-32 encoding", L"Не удается обработать UTF-32 кодировке");
992         addPair("\nArtistic Style has terminated", L"\nArtistic Style прекратил");
993 }
994
995 Spanish::Spanish()      // Español
996 // build the translation vector in the Translation base class
997 {
998         addPair("Formatted  %s\n", L"Formato     %s\n");        // should align with unchanged
999         addPair("Unchanged  %s\n", L"Inalterado  %s\n");        // should align with formatted
1000         addPair("Directory  %s\n", L"Directorio  %s\n");
1001         addPair("Exclude  %s\n", L"Excluir  %s\n");
1002         addPair("Exclude (unmatched)  %s\n", L"Excluir (incomparable)  %s\n");
1003         addPair(" %s formatted   %s unchanged   ", L" %s formato   %s inalterado   ");
1004         addPair(" seconds   ", L" segundo   ");
1005         addPair("%d min %d sec   ", L"%d min %d seg   ");
1006         addPair("%s lines\n", L"%s líneas\n");
1007         addPair("Using default options file %s\n", L"Uso de las opciones por defecto del archivo %s\n");
1008         addPair("Opening HTML documentation %s\n", L"Apertura de documentación HTML %s\n");
1009         addPair("Invalid option file options:", L"Opción no válida opciones de archivo:");
1010         addPair("Invalid command line options:", L"No válido opciones de línea de comando:");
1011         addPair("For help on options type 'astyle -h'", L"Para obtener ayuda sobre las opciones tipo 'astyle -h'");
1012         addPair("Cannot open options file", L"No se puede abrir el archivo de opciones");
1013         addPair("Cannot open directory", L"No se puede abrir el directorio");
1014         addPair("Cannot open HTML file %s\n", L"No se puede abrir el archivo HTML %s\n");
1015         addPair("Command execute failure", L"Ejecutar el fracaso de comandos");
1016         addPair("Command is not installed", L"El comando no está instalado");
1017         addPair("Missing filename in %s\n", L"Falta nombre del archivo en %s\n");
1018         addPair("Recursive option with no wildcard", L"Recursiva opción sin comodín");
1019         addPair("Did you intend quote the filename", L"Se tiene la intención de citar el nombre de archivo");
1020         addPair("No file to process %s\n", L"No existe el fichero a procesar %s\n");
1021         addPair("Did you intend to use --recursive", L"Se va a utilizar --recursive");
1022         addPair("Cannot process UTF-32 encoding", L"No se puede procesar la codificación UTF-32");
1023         addPair("\nArtistic Style has terminated", L"\nArtistic Style ha terminado");
1024 }
1025
1026 Swedish::Swedish()      // Svenska
1027 // build the translation vector in the Translation base class
1028 {
1029         addPair("Formatted  %s\n", L"Formaterade  %s\n");       // should align with unchanged
1030         addPair("Unchanged  %s\n", L"Oförändrade  %s\n");     // should align with formatted
1031         addPair("Directory  %s\n", L"Katalog  %s\n");
1032         addPair("Exclude  %s\n", L"Uteslut  %s\n");
1033         addPair("Exclude (unmatched)  %s\n", L"Uteslut (oöverträffad)  %s\n");
1034         addPair(" %s formatted   %s unchanged   ", L" %s formaterade   %s oförändrade   ");
1035         addPair(" seconds   ", L" sekunder   ");
1036         addPair("%d min %d sec   ", L"%d min %d sek   ");
1037         addPair("%s lines\n", L"%s linjer\n");
1038         addPair("Using default options file %s\n", L"Använda standardalternativ fil %s\n");
1039         addPair("Opening HTML documentation %s\n", L"Öppna HTML-dokumentation %s\n");
1040         addPair("Invalid option file options:", L"Ogiltigt alternativ fil alternativ:");
1041         addPair("Invalid command line options:", L"Ogiltig kommandoraden alternativ:");
1042         addPair("For help on options type 'astyle -h'", L"För hjälp om alternativ typ 'astyle -h'");
1043         addPair("Cannot open options file", L"Kan inte öppna inställningsfilen");
1044         addPair("Cannot open directory", L"Kan inte öppna katalog");
1045         addPair("Cannot open HTML file %s\n", L"Kan inte öppna HTML-filen %s\n");
1046         addPair("Command execute failure", L"Utför kommando misslyckande");
1047         addPair("Command is not installed", L"Kommandot är inte installerat");
1048         addPair("Missing filename in %s\n", L"Saknade filnamn i %s\n");
1049         addPair("Recursive option with no wildcard", L"Rekursiva alternativ utan jokertecken");
1050         addPair("Did you intend quote the filename", L"Visste du tänker citera filnamnet");
1051         addPair("No file to process %s\n", L"Ingen fil att bearbeta %s\n");
1052         addPair("Did you intend to use --recursive", L"Har du för avsikt att använda --recursive");
1053         addPair("Cannot process UTF-32 encoding", L"Kan inte hantera UTF-32 kodning");
1054         addPair("\nArtistic Style has terminated", L"\nArtistic Style har upphört");
1055 }
1056
1057 Ukrainian::Ukrainian()  // Український
1058 // build the translation vector in the Translation base class
1059 {
1060         addPair("Formatted  %s\n", L"форматований  %s\n");  // should align with unchanged
1061         addPair("Unchanged  %s\n", L"без змін      %s\n");       // should align with formatted
1062         addPair("Directory  %s\n", L"Каталог  %s\n");
1063         addPair("Exclude  %s\n", L"Виключити  %s\n");
1064         addPair("Exclude (unmatched)  %s\n", L"Виключити (неперевершений)  %s\n");
1065         addPair(" %s formatted   %s unchanged   ", L" %s відформатований   %s без змін   ");
1066         addPair(" seconds   ", L" секунди   ");
1067         addPair("%d min %d sec   ", L"%d хви %d cek   ");
1068         addPair("%s lines\n", L"%s ліній\n");
1069         addPair("Using default options file %s\n", L"Використання файлів опцій за замовчуванням %s\n");
1070         addPair("Opening HTML documentation %s\n", L"Відкриття HTML документації %s\n");
1071         addPair("Invalid option file options:", L"Неприпустимий файл опцій опцію:");
1072         addPair("Invalid command line options:", L"Неприпустима параметри командного рядка:");
1073         addPair("For help on options type 'astyle -h'", L"Для отримання довідки по 'astyle -h' опцій типу");
1074         addPair("Cannot open options file", L"Не вдається відкрити файл параметрів");
1075         addPair("Cannot open directory", L"Не можу відкрити каталог");
1076         addPair("Cannot open HTML file %s\n", L"Не вдається відкрити файл HTML %s\n");
1077         addPair("Command execute failure", L"Виконати команду недостатності");
1078         addPair("Command is not installed", L"Не встановлений Команда");
1079         addPair("Missing filename in %s\n", L"Відсутня назва файлу в %s\n");
1080         addPair("Recursive option with no wildcard", L"Рекурсивний варіант без будь-яких шаблону");
1081         addPair("Did you intend quote the filename", L"Ви маєте намір цитатою файлу");
1082         addPair("No file to process %s\n", L"Немає файлів для обробки %s\n");
1083         addPair("Did you intend to use --recursive", L"Невже ви збираєтеся використовувати --recursive");
1084         addPair("Cannot process UTF-32 encoding", L"Не вдається обробити UTF-32 кодуванні");
1085         addPair("\nArtistic Style has terminated", L"\nArtistic Style припинив");
1086 }
1087
1088
1089 #endif  // ASTYLE_LIB
1090
1091 }   // end of namespace astyle
1092