File indexing completed on 2024-04-21 08:24:58

0001 // ASLocalizer.cpp
0002 // Copyright (c) 2016 by Jim Pattee <jimp03@email.com>.
0003 // This code is licensed under the MIT License.
0004 // License.txt describes the conditions under which this software may be distributed.
0005 //
0006 // File encoding for this file is UTF-8 WITHOUT a byte order mark (BOM).
0007 //    русский     中文(简体)    日本語     한국의
0008 //
0009 // Windows:
0010 // Add the required "Language" to the system.
0011 // The settings do NOT need to be changed to the added language.
0012 // Change the "Region" settings.
0013 // Change both the "Format" and the "Current Language..." settings.
0014 // A restart is required if the codepage has changed.
0015 //      Windows problems:
0016 //      Hindi    - no available locale, language pack removed
0017 //      Japanese - language pack install error
0018 //      Ukranian - displays a ? instead of i
0019 //
0020 // Linux:
0021 // Change the LANG environment variable: LANG=fr_FR.UTF-8.
0022 // setlocale() will use the LANG environment variable on Linux.
0023 //
0024 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
0025  *
0026  *   To add a new language to this source module:
0027  *
0028  *   Add a new translation class to ASLocalizer.h.
0029  *   Update the WinLangCode array in ASLocalizer.cpp.
0030  *   Add the language code to setTranslationClass() in ASLocalizer.cpp.
0031  *   Add the English-Translation pair to the constructor in ASLocalizer.cpp.
0032  *
0033  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
0034  */
0035 
0036 //----------------------------------------------------------------------------
0037 // headers
0038 //----------------------------------------------------------------------------
0039 
0040 #include "ASLocalizer.h"
0041 
0042 #ifdef _WIN32
0043     #include <windows.h>
0044 #endif
0045 
0046 #ifdef __DMC__
0047     // digital mars doesn't have these
0048     const size_t SUBLANG_CHINESE_MACAU = 5;
0049     const size_t LANG_HINDI = 57;
0050 #endif
0051 
0052 #ifdef __VMS
0053     #define __USE_STD_IOSTREAM 1
0054     #include <assert>
0055 #else
0056     #include <cassert>
0057 #endif
0058 
0059 #include <cstdio>
0060 #include <iostream>
0061 #include <clocale>      // needed by some compilers
0062 #include <cstdlib>
0063 #include <typeinfo>
0064 
0065 #ifdef _MSC_VER
0066     #pragma warning(disable: 4996)  // secure version deprecation warnings
0067 #endif
0068 
0069 #ifdef __BORLANDC__
0070     #pragma warn -8104      // Local Static with constructor dangerous for multi-threaded apps
0071 #endif
0072 
0073 #ifdef __INTEL_COMPILER
0074     #pragma warning(disable:  383)  // value copied to temporary, reference to temporary used
0075     #pragma warning(disable:  981)  // operands are evaluated in unspecified order
0076 #endif
0077 
0078 #ifdef __clang__
0079     #pragma clang diagnostic ignored "-Wdeprecated-declarations"  // wcstombs
0080 #endif
0081 
0082 namespace astyle {
0083 
0084 #ifndef ASTYLE_LIB
0085 
0086 //----------------------------------------------------------------------------
0087 // ASLocalizer class methods.
0088 //----------------------------------------------------------------------------
0089 
0090 ASLocalizer::ASLocalizer()
0091 // Set the locale information.
0092 {
0093     // set language default values to english (ascii)
0094     // this will be used if a locale or a language cannot be found
0095     m_localeName = "UNKNOWN";
0096     m_langID = "en";
0097     m_lcid = 0;
0098     m_subLangID.clear();
0099     m_translation = NULL;
0100 
0101     // Not all compilers support the C++ function locale::global(locale(""));
0102     char* localeName = setlocale(LC_ALL, "");
0103     if (localeName == NULL)     // use the english (ascii) defaults
0104     {
0105         fprintf(stderr, "\n%s\n\n", "Cannot set native locale, reverting to English");
0106         setTranslationClass();
0107         return;
0108     }
0109     // set the class variables
0110 #ifdef _WIN32
0111     size_t lcid = GetUserDefaultLCID();
0112     setLanguageFromLCID(lcid);
0113 #else
0114     setLanguageFromName(localeName);
0115 #endif
0116 }
0117 
0118 ASLocalizer::~ASLocalizer()
0119 // Delete dynamically allocated memory.
0120 {
0121     delete m_translation;
0122 }
0123 
0124 #ifdef _WIN32
0125 
0126 struct WinLangCode
0127 {
0128     size_t winLang;
0129     char canonicalLang[3];
0130 };
0131 
0132 static WinLangCode wlc[] =
0133 // primary language identifier http://msdn.microsoft.com/en-us/library/aa912554.aspx
0134 // sublanguage identifier http://msdn.microsoft.com/en-us/library/aa913256.aspx
0135 // language ID http://msdn.microsoft.com/en-us/library/ee797784%28v=cs.20%29.aspx
0136 {
0137     { LANG_BULGARIAN,  "bg" },      //  bg-BG   1251
0138     { LANG_CHINESE,    "zh" },      //  zh-CHS, zh-CHT
0139     { LANG_DUTCH,      "nl" },      //  nl-NL   1252
0140     { LANG_ENGLISH,    "en" },      //  en-US   1252
0141     { LANG_ESTONIAN,   "et" },      //  et-EE
0142     { LANG_FINNISH,    "fi" },      //  fi-FI   1252
0143     { LANG_FRENCH,     "fr" },      //  fr-FR   1252
0144     { LANG_GERMAN,     "de" },      //  de-DE   1252
0145     { LANG_GREEK,      "el" },      //  el-GR   1253
0146     { LANG_HINDI,      "hi" },      //  hi-IN
0147     { LANG_HUNGARIAN,  "hu" },      //  hu-HU   1250
0148     { LANG_ITALIAN,    "it" },      //  it-IT   1252
0149     { LANG_JAPANESE,   "ja" },      //  ja-JP
0150     { LANG_KOREAN,     "ko" },      //  ko-KR
0151     { LANG_NORWEGIAN,  "nn" },      //  nn-NO   1252
0152     { LANG_POLISH,     "pl" },      //  pl-PL   1250
0153     { LANG_PORTUGUESE, "pt" },      //  pt-PT   1252
0154     { LANG_ROMANIAN,   "ro" },      //  ro-RO   1250
0155     { LANG_RUSSIAN,    "ru" },      //  ru-RU   1251
0156     { LANG_SPANISH,    "es" },      //  es-ES   1252
0157     { LANG_SWEDISH,    "sv" },      //  sv-SE   1252
0158     { LANG_UKRAINIAN,  "uk" },      //  uk-UA   1251
0159 };
0160 
0161 void ASLocalizer::setLanguageFromLCID(size_t lcid)
0162 // Windows get the language to use from the user locale.
0163 // NOTE: GetUserDefaultLocaleName() gets nearly the same name as Linux.
0164 //       But it needs Windows Vista or higher.
0165 //       Same with LCIDToLocaleName().
0166 {
0167     m_lcid = lcid;
0168     m_langID = "en";    // default to english
0169 
0170     size_t lang = PRIMARYLANGID(LANGIDFROMLCID(m_lcid));
0171     size_t sublang = SUBLANGID(LANGIDFROMLCID(m_lcid));
0172     // find language in the wlc table
0173     size_t count = sizeof(wlc) / sizeof(wlc[0]);
0174     for (size_t i = 0; i < count; i++)
0175     {
0176         if (wlc[i].winLang == lang)
0177         {
0178             m_langID = wlc[i].canonicalLang;
0179             break;
0180         }
0181     }
0182     if (m_langID == "zh")
0183     {
0184         if (sublang == SUBLANG_CHINESE_SIMPLIFIED || sublang == SUBLANG_CHINESE_SINGAPORE)
0185             m_subLangID = "CHS";
0186         else
0187             m_subLangID = "CHT";    // default
0188     }
0189     setTranslationClass();
0190 }
0191 
0192 #endif  // _win32
0193 
0194 string ASLocalizer::getLanguageID() const
0195 // Returns the language ID in m_langID.
0196 {
0197     return m_langID;
0198 }
0199 
0200 const Translation* ASLocalizer::getTranslationClass() const
0201 // Returns the name of the translation class in m_translation.  Used for testing.
0202 {
0203     assert(m_translation);
0204     return m_translation;
0205 }
0206 
0207 void ASLocalizer::setLanguageFromName(const char* langID)
0208 // Linux set the language to use from the langID.
0209 //
0210 // the language string has the following form
0211 //
0212 //      lang[_LANG][.encoding][@modifier]
0213 //
0214 // (see environ(5) in the Open Unix specification)
0215 //
0216 // where lang is the primary language, LANG is a sublang/territory,
0217 // encoding is the charset to use and modifier "allows the user to select
0218 // a specific instance of localization data within a single category"
0219 //
0220 // for example, the following strings are valid:
0221 //      fr
0222 //      fr_FR
0223 //      de_DE.iso88591
0224 //      de_DE@euro
0225 //      de_DE.iso88591@euro
0226 {
0227     // the constants describing the format of lang_LANG locale string
0228     m_lcid = 0;
0229     string langStr = langID;
0230     m_langID = langStr.substr(0, 2);
0231 
0232     // need the sublang for chinese
0233     if (m_langID == "zh" && langStr[2] == '_')
0234     {
0235         string subLang = langStr.substr(3, 2);
0236         if (subLang == "CN" || subLang == "SG")
0237             m_subLangID = "CHS";
0238         else
0239             m_subLangID = "CHT";    // default
0240     }
0241     setTranslationClass();
0242 }
0243 
0244 const char* ASLocalizer::settext(const char* textIn) const
0245 // Call the settext class and return the value.
0246 {
0247     assert(m_translation);
0248     const string stringIn = textIn;
0249     return m_translation->translate(stringIn).c_str();
0250 }
0251 
0252 void ASLocalizer::setTranslationClass()
0253 // Return the required translation class.
0254 // Sets the class variable m_translation from the value of m_langID.
0255 // Get the language ID at http://msdn.microsoft.com/en-us/library/ee797784%28v=cs.20%29.aspx
0256 {
0257     assert(m_langID.length());
0258     // delete previously set (--ascii option)
0259     if (m_translation)
0260     {
0261         delete m_translation;
0262         m_translation = NULL;
0263     }
0264     if (m_langID == "bg")
0265         m_translation = new Bulgarian;
0266     else if (m_langID == "zh" && m_subLangID == "CHS")
0267         m_translation = new ChineseSimplified;
0268     else if (m_langID == "zh" && m_subLangID == "CHT")
0269         m_translation = new ChineseTraditional;
0270     else if (m_langID == "nl")
0271         m_translation = new Dutch;
0272     else if (m_langID == "en")
0273         m_translation = new English;
0274     else if (m_langID == "et")
0275         m_translation = new Estonian;
0276     else if (m_langID == "fi")
0277         m_translation = new Finnish;
0278     else if (m_langID == "fr")
0279         m_translation = new French;
0280     else if (m_langID == "de")
0281         m_translation = new German;
0282     else if (m_langID == "el")
0283         m_translation = new Greek;
0284     else if (m_langID == "hi")
0285         m_translation = new Hindi;
0286     else if (m_langID == "hu")
0287         m_translation = new Hungarian;
0288     else if (m_langID == "it")
0289         m_translation = new Italian;
0290     else if (m_langID == "ja")
0291         m_translation = new Japanese;
0292     else if (m_langID == "ko")
0293         m_translation = new Korean;
0294     else if (m_langID == "nn")
0295         m_translation = new Norwegian;
0296     else if (m_langID == "pl")
0297         m_translation = new Polish;
0298     else if (m_langID == "pt")
0299         m_translation = new Portuguese;
0300     else if (m_langID == "ro")
0301         m_translation = new Romanian;
0302     else if (m_langID == "ru")
0303         m_translation = new Russian;
0304     else if (m_langID == "es")
0305         m_translation = new Spanish;
0306     else if (m_langID == "sv")
0307         m_translation = new Swedish;
0308     else if (m_langID == "uk")
0309         m_translation = new Ukrainian;
0310     else    // default
0311         m_translation = new English;
0312 }
0313 
0314 //----------------------------------------------------------------------------
0315 // Translation base class methods.
0316 //----------------------------------------------------------------------------
0317 
0318 void Translation::addPair(const string& english, const wstring& translated)
0319 // Add a string pair to the translation vector.
0320 {
0321     pair<string, wstring> entry(english, translated);
0322     m_translation.push_back(entry);
0323 }
0324 
0325 string Translation::convertToMultiByte(const wstring& wideStr) const
0326 // Convert wchar_t to a multibyte string using the currently assigned locale.
0327 // Return an empty string if an error occurs.
0328 {
0329     static bool msgDisplayed = false;
0330     // get length of the output excluding the NULL and validate the parameters
0331     size_t mbLen = wcstombs(NULL, wideStr.c_str(), 0);
0332     if (mbLen == string::npos)
0333     {
0334         if (!msgDisplayed)
0335         {
0336             fprintf(stderr, "\n%s\n\n", "Cannot convert to multi-byte string, reverting to English");
0337             msgDisplayed = true;
0338         }
0339         return "";
0340     }
0341     // convert the characters
0342     char* mbStr = new (nothrow) char[mbLen + 1];
0343     if (mbStr == NULL)
0344     {
0345         if (!msgDisplayed)
0346         {
0347             fprintf(stderr, "\n%s\n\n", "Bad memory alloc for multi-byte string, reverting to English");
0348             msgDisplayed = true;
0349         }
0350         return "";
0351     }
0352     wcstombs(mbStr, wideStr.c_str(), mbLen + 1);
0353     // return the string
0354     string mbTranslation = mbStr;
0355     delete[] mbStr;
0356     return mbTranslation;
0357 }
0358 
0359 size_t Translation::getTranslationVectorSize() const
0360 // Return the translation vector size.  Used for testing.
0361 {
0362     return m_translation.size();
0363 }
0364 
0365 bool Translation::getWideTranslation(const string& stringIn, wstring& wideOut) const
0366 // Get the wide translation string. Used for testing.
0367 {
0368     for (size_t i = 0; i < m_translation.size(); i++)
0369     {
0370         if (m_translation[i].first == stringIn)
0371         {
0372             wideOut = m_translation[i].second;
0373             return true;
0374         }
0375     }
0376     // not found
0377     wideOut = L"";
0378     return false;
0379 }
0380 
0381 string& Translation::translate(const string& stringIn) const
0382 // Translate a string.
0383 // Return a mutable string so the method can have a "const" designation.
0384 // This allows "settext" to be called from a "const" method.
0385 {
0386     m_mbTranslation.clear();
0387     for (size_t i = 0; i < m_translation.size(); i++)
0388     {
0389         if (m_translation[i].first == stringIn)
0390         {
0391             m_mbTranslation = convertToMultiByte(m_translation[i].second);
0392             break;
0393         }
0394     }
0395     // not found, return english
0396     if (m_mbTranslation.empty())
0397         m_mbTranslation = stringIn;
0398     return m_mbTranslation;
0399 }
0400 
0401 //----------------------------------------------------------------------------
0402 // Translation class methods.
0403 // These classes have only a constructor which builds the language vector.
0404 //----------------------------------------------------------------------------
0405 
0406 Bulgarian::Bulgarian()  // български
0407 // build the translation vector in the Translation base class
0408 {
0409     addPair("Formatted  %s\n", L"Форматиран  %s\n");      // should align with unchanged
0410     addPair("Unchanged  %s\n", L"Непроменен  %s\n");      // should align with formatted
0411     addPair("Directory  %s\n", L"директория  %s\n");
0412     addPair("Exclude  %s\n", L"Изключвам  %s\n");
0413     addPair("Exclude (unmatched)  %s\n", L"Изключване (несравнимо)  %s\n");
0414     addPair(" %s formatted   %s unchanged   ", L" %s форматиран   %s hепроменен   ");
0415     addPair(" seconds   ", L" секунди   ");
0416     addPair("%d min %d sec   ", L"%d мин %d сек   ");
0417     addPair("%s lines\n", L"%s линии\n");
0418     addPair("Using default options file %s\n", L"Използване на файла възможности по подразбиране %s\n");
0419     addPair("Opening HTML documentation %s\n", L"Откриване HTML документация %s\n");
0420     addPair("Invalid option file options:", L"Невалидни опции опция файлове:");
0421     addPair("Invalid command line options:", L"Невалидни опции за командния ред:");
0422     addPair("For help on options type 'astyle -h'", L"За помощ относно възможностите тип 'astyle -h'");
0423     addPair("Cannot open options file", L"Не може да се отвори файл опции");
0424     addPair("Cannot open directory", L"Не може да се отвори директория");
0425     addPair("Cannot open HTML file %s\n", L"Не може да се отвори HTML файл %s\n");
0426     addPair("Command execute failure", L"Command изпълни недостатъчност");
0427     addPair("Command is not installed", L"Command не е инсталиран");
0428     addPair("Missing filename in %s\n", L"Липсва името на файла в %s\n");
0429     addPair("Recursive option with no wildcard", L"Рекурсивно опция, без маска");
0430     addPair("Did you intend quote the filename", L"Знаете ли намерение да цитирам името на файла");
0431     addPair("No file to process %s\n", L"Не файл за обработка %s\n");
0432     addPair("Did you intend to use --recursive", L"Знаете ли възнамерявате да използвате --recursive");
0433     addPair("Cannot process UTF-32 encoding", L"Не може да са UTF-32 кодиране");
0434     addPair("\nArtistic Style has terminated", L"\nArtistic Style е прекратено");
0435 }
0436 
0437 ChineseSimplified::ChineseSimplified()  // 中文(简体)
0438 // build the translation vector in the Translation base class
0439 {
0440     addPair("Formatted  %s\n", L"格式化  %s\n");     // should align with unchanged
0441     addPair("Unchanged  %s\n", L"未改变  %s\n");     // should align with formatted
0442     addPair("Directory  %s\n", L"目录  %s\n");
0443     addPair("Exclude  %s\n", L"排除  %s\n");
0444     addPair("Exclude (unmatched)  %s\n", L"排除(无匹配项)  %s\n");
0445     addPair(" %s formatted   %s unchanged   ", L" %s 格式化   %s 未改变   ");
0446     addPair(" seconds   ", L" 秒   ");
0447     addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
0448     addPair("%s lines\n", L"%s 行\n");
0449     addPair("Using default options file %s\n", L"使用默认配置文件 %s\n");
0450     addPair("Opening HTML documentation %s\n", L"打开HTML文档 %s\n");
0451     addPair("Invalid option file options:", L"无效的配置文件选项:");
0452     addPair("Invalid command line options:", L"无效的命令行选项:");
0453     addPair("For help on options type 'astyle -h'", L"输入 'astyle -h' 以获得有关命令行的帮助");
0454     addPair("Cannot open options file", L"无法打开配置文件");
0455     addPair("Cannot open directory", L"无法打开目录");
0456     addPair("Cannot open HTML file %s\n", L"无法打开HTML文件 %s\n");
0457     addPair("Command execute failure", L"执行命令失败");
0458     addPair("Command is not installed", L"未安装命令");
0459     addPair("Missing filename in %s\n", L"在%s缺少文件名\n");
0460     addPair("Recursive option with no wildcard", L"递归选项没有通配符");
0461     addPair("Did you intend quote the filename", L"你打算引用文件名");
0462     addPair("No file to process %s\n", L"没有文件可处理 %s\n");
0463     addPair("Did you intend to use --recursive", L"你打算使用 --recursive");
0464     addPair("Cannot process UTF-32 encoding", L"不能处理UTF-32编码");
0465     addPair("\nArtistic Style has terminated", L"\nArtistic Style 已经终止运行");
0466 }
0467 
0468 ChineseTraditional::ChineseTraditional()    // 中文(繁體)
0469 // build the translation vector in the Translation base class
0470 {
0471     addPair("Formatted  %s\n", L"格式化  %s\n");     // should align with unchanged
0472     addPair("Unchanged  %s\n", L"未改變  %s\n");     // should align with formatted
0473     addPair("Directory  %s\n", L"目錄  %s\n");
0474     addPair("Exclude  %s\n", L"排除  %s\n");
0475     addPair("Exclude (unmatched)  %s\n", L"排除(無匹配項)  %s\n");
0476     addPair(" %s formatted   %s unchanged   ", L" %s 格式化   %s 未改變   ");
0477     addPair(" seconds   ", L" 秒   ");
0478     addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
0479     addPair("%s lines\n", L"%s 行\n");
0480     addPair("Using default options file %s\n", L"使用默認配置文件 %s\n");
0481     addPair("Opening HTML documentation %s\n", L"打開HTML文檔 %s\n");
0482     addPair("Invalid option file options:", L"無效的配置文件選項:");
0483     addPair("Invalid command line options:", L"無效的命令行選項:");
0484     addPair("For help on options type 'astyle -h'", L"輸入'astyle -h'以獲得有關命令行的幫助:");
0485     addPair("Cannot open options file", L"無法打開配置文件");
0486     addPair("Cannot open directory", L"無法打開目錄");
0487     addPair("Cannot open HTML file %s\n", L"無法打開HTML文件 %s\n");
0488     addPair("Command execute failure", L"執行命令失敗");
0489     addPair("Command is not installed", L"未安裝命令");
0490     addPair("Missing filename in %s\n", L"在%s缺少文件名\n");
0491     addPair("Recursive option with no wildcard", L"遞歸選項沒有通配符");
0492     addPair("Did you intend quote the filename", L"你打算引用文件名");
0493     addPair("No file to process %s\n", L"沒有文件可處理 %s\n");
0494     addPair("Did you intend to use --recursive", L"你打算使用 --recursive");
0495     addPair("Cannot process UTF-32 encoding", L"不能處理UTF-32編碼");
0496     addPair("\nArtistic Style has terminated", L"\nArtistic Style 已經終止運行");
0497 }
0498 
0499 Dutch::Dutch()  // Nederlandse
0500 // build the translation vector in the Translation base class
0501 {
0502     addPair("Formatted  %s\n", L"Geformatteerd  %s\n"); // should align with unchanged
0503     addPair("Unchanged  %s\n", L"Onveranderd    %s\n"); // should align with formatted
0504     addPair("Directory  %s\n", L"Directory  %s\n");
0505     addPair("Exclude  %s\n", L"Uitsluiten  %s\n");
0506     addPair("Exclude (unmatched)  %s\n", L"Uitgesloten (ongeëvenaarde)  %s\n");
0507     addPair(" %s formatted   %s unchanged   ", L" %s geformatteerd   %s onveranderd   ");
0508     addPair(" seconds   ", L" seconden   ");
0509     addPair("%d min %d sec   ", L"%d min %d sec   ");
0510     addPair("%s lines\n", L"%s lijnen\n");
0511     addPair("Using default options file %s\n", L"Met behulp van standaard opties bestand %s\n");
0512     addPair("Opening HTML documentation %s\n", L"Het openen van HTML-documentatie %s\n");
0513     addPair("Invalid option file options:", L"Ongeldige optie file opties:");
0514     addPair("Invalid command line options:", L"Ongeldige command line opties:");
0515     addPair("For help on options type 'astyle -h'", L"Voor hulp bij 'astyle-h' opties het type");
0516     addPair("Cannot open options file", L"Kan niet worden geopend options bestand");
0517     addPair("Cannot open directory", L"Kan niet open directory");
0518     addPair("Cannot open HTML file %s\n", L"Kan HTML-bestand niet openen %s\n");
0519     addPair("Command execute failure", L"Voeren commando falen");
0520     addPair("Command is not installed", L"Command is niet geïnstalleerd");
0521     addPair("Missing filename in %s\n", L"Ontbrekende bestandsnaam in %s\n");
0522     addPair("Recursive option with no wildcard", L"Recursieve optie met geen wildcard");
0523     addPair("Did you intend quote the filename", L"Heeft u van plan citaat van de bestandsnaam");
0524     addPair("No file to process %s\n", L"Geen bestand te verwerken %s\n");
0525     addPair("Did you intend to use --recursive", L"Hebt u van plan bent te gebruiken --recursive");
0526     addPair("Cannot process UTF-32 encoding", L"Kan niet verwerken UTF-32 codering");
0527     addPair("\nArtistic Style has terminated", L"\nArtistic Style heeft beëindigd");
0528 }
0529 
0530 English::English()
0531 // this class is NOT translated
0532 {}
0533 
0534 Estonian::Estonian()    // Eesti
0535 // build the translation vector in the Translation base class
0536 {
0537     addPair("Formatted  %s\n", L"Formaadis  %s\n");     // should align with unchanged
0538     addPair("Unchanged  %s\n", L"Muutumatu  %s\n");     // should align with formatted
0539     addPair("Directory  %s\n", L"Kataloog  %s\n");
0540     addPair("Exclude  %s\n", L"Välista  %s\n");
0541     addPair("Exclude (unmatched)  %s\n", L"Välista (tasakaalustamata)  %s\n");
0542     addPair(" %s formatted   %s unchanged   ", L" %s formaadis   %s muutumatu   ");
0543     addPair(" seconds   ", L" sekundit   ");
0544     addPair("%d min %d sec   ", L"%d min %d sek   ");
0545     addPair("%s lines\n", L"%s read\n");
0546     addPair("Using default options file %s\n", L"Kasutades selliseid vaikimisi valikuid faili %s\n");
0547     addPair("Opening HTML documentation %s\n", L"Avamine HTML dokumentatsioon %s\n");
0548     addPair("Invalid option file options:", L"Vale valik faili võimalusi:");
0549     addPair("Invalid command line options:", L"Vale käsureavõtmetega:");
0550     addPair("For help on options type 'astyle -h'", L"Abiks võimaluste tüüp 'astyle -h'");
0551     addPair("Cannot open options file", L"Ei saa avada võimalusi faili");
0552     addPair("Cannot open directory", L"Ei saa avada kataloogi");
0553     addPair("Cannot open HTML file %s\n", L"Ei saa avada HTML-faili %s\n");
0554     addPair("Command execute failure", L"Käsk täita rike");
0555     addPair("Command is not installed", L"Käsk ei ole paigaldatud");
0556     addPair("Missing filename in %s\n", L"Kadunud failinimi %s\n");
0557     addPair("Recursive option with no wildcard", L"Rekursiivne võimalus ilma metamärgi");
0558     addPair("Did you intend quote the filename", L"Kas te kavatsete tsiteerida failinimi");
0559     addPair("No file to process %s\n", L"No faili töötlema %s\n");
0560     addPair("Did you intend to use --recursive", L"Kas te kavatsete kasutada --recursive");
0561     addPair("Cannot process UTF-32 encoding", L"Ei saa töödelda UTF-32 kodeeringus");
0562     addPair("\nArtistic Style has terminated", L"\nArtistic Style on lõpetatud");
0563 }
0564 
0565 Finnish::Finnish()  // Suomeksi
0566 // build the translation vector in the Translation base class
0567 {
0568     addPair("Formatted  %s\n", L"Muotoiltu  %s\n"); // should align with unchanged
0569     addPair("Unchanged  %s\n", L"Ennallaan  %s\n"); // should align with formatted
0570     addPair("Directory  %s\n", L"Directory  %s\n");
0571     addPair("Exclude  %s\n", L"Sulkea  %s\n");
0572     addPair("Exclude (unmatched)  %s\n", L"Sulkea (verraton)  %s\n");
0573     addPair(" %s formatted   %s unchanged   ", L" %s muotoiltu   %s ennallaan   ");
0574     addPair(" seconds   ", L" sekuntia   ");
0575     addPair("%d min %d sec   ", L"%d min %d sek   ");
0576     addPair("%s lines\n", L"%s linjat\n");
0577     addPair("Using default options file %s\n", L"Käyttämällä oletusasetuksia tiedosto %s\n");
0578     addPair("Opening HTML documentation %s\n", L"Avaaminen HTML asiakirjat %s\n");
0579     addPair("Invalid option file options:", L"Virheellinen vaihtoehto tiedosto vaihtoehtoja:");
0580     addPair("Invalid command line options:", L"Virheellinen komentorivin:");
0581     addPair("For help on options type 'astyle -h'", L"Apua vaihtoehdoista tyyppi 'astyle -h'");
0582     addPair("Cannot open options file", L"Ei voi avata vaihtoehtoja tiedostoa");
0583     addPair("Cannot open directory", L"Ei Open Directory");
0584     addPair("Cannot open HTML file %s\n", L"Ei voi avata HTML-tiedoston %s\n");
0585     addPair("Command execute failure", L"Suorita komento vika");
0586     addPair("Command is not installed", L"Komento ei ole asennettu");
0587     addPair("Missing filename in %s\n", L"Puuttuvat tiedostonimi %s\n");
0588     addPair("Recursive option with no wildcard", L"Rekursiivinen vaihtoehto ilman wildcard");
0589     addPair("Did you intend quote the filename", L"Oletko aio lainata tiedostonimi");
0590     addPair("No file to process %s\n", L"Ei tiedostoa käsitellä %s\n");
0591     addPair("Did you intend to use --recursive", L"Oliko aiot käyttää --recursive");
0592     addPair("Cannot process UTF-32 encoding", L"Ei voi käsitellä UTF-32 koodausta");
0593     addPair("\nArtistic Style has terminated", L"\nArtistic Style on päättynyt");
0594 }
0595 
0596 French::French()    // Française
0597 // build the translation vector in the Translation base class
0598 {
0599     addPair("Formatted  %s\n", L"Formaté    %s\n");    // should align with unchanged
0600     addPair("Unchanged  %s\n", L"Inchangée  %s\n");    // should align with formatted
0601     addPair("Directory  %s\n", L"Répertoire  %s\n");
0602     addPair("Exclude  %s\n", L"Exclure  %s\n");
0603     addPair("Exclude (unmatched)  %s\n", L"Exclure (non appariés)  %s\n");
0604     addPair(" %s formatted   %s unchanged   ", L" %s formaté   %s inchangée   ");
0605     addPair(" seconds   ", L" seconde   ");
0606     addPair("%d min %d sec   ", L"%d min %d sec   ");
0607     addPair("%s lines\n", L"%s lignes\n");
0608     addPair("Using default options file %s\n", L"Options par défaut utilisation du fichier %s\n");
0609     addPair("Opening HTML documentation %s\n", L"Ouverture documentation HTML %s\n");
0610     addPair("Invalid option file options:", L"Options Blancs option du fichier:");
0611     addPair("Invalid command line options:", L"Blancs options ligne de commande:");
0612     addPair("For help on options type 'astyle -h'", L"Pour de l'aide sur les options tapez 'astyle -h'");
0613     addPair("Cannot open options file", L"Impossible d'ouvrir le fichier d'options");
0614     addPair("Cannot open directory", L"Impossible d'ouvrir le répertoire");
0615     addPair("Cannot open HTML file %s\n", L"Impossible d'ouvrir le fichier HTML %s\n");
0616     addPair("Command execute failure", L"Exécuter échec de la commande");
0617     addPair("Command is not installed", L"Commande n'est pas installé");
0618     addPair("Missing filename in %s\n", L"Nom de fichier manquant dans %s\n");
0619     addPair("Recursive option with no wildcard", L"Option récursive sans joker");
0620     addPair("Did you intend quote the filename", L"Avez-vous l'intention de citer le nom de fichier");
0621     addPair("No file to process %s\n", L"Aucun fichier à traiter %s\n");
0622     addPair("Did you intend to use --recursive", L"Avez-vous l'intention d'utiliser --recursive");
0623     addPair("Cannot process UTF-32 encoding", L"Impossible de traiter codage UTF-32");
0624     addPair("\nArtistic Style has terminated", L"\nArtistic Style a mis fin");
0625 }
0626 
0627 German::German()    // Deutsch
0628 // build the translation vector in the Translation base class
0629 {
0630     addPair("Formatted  %s\n", L"Formatiert   %s\n");   // should align with unchanged
0631     addPair("Unchanged  %s\n", L"Unverändert  %s\n");  // should align with formatted
0632     addPair("Directory  %s\n", L"Verzeichnis  %s\n");
0633     addPair("Exclude  %s\n", L"Ausschließen  %s\n");
0634     addPair("Exclude (unmatched)  %s\n", L"Ausschließen (unerreichte)  %s\n");
0635     addPair(" %s formatted   %s unchanged   ", L" %s formatiert   %s unverändert   ");
0636     addPair(" seconds   ", L" sekunden   ");
0637     addPair("%d min %d sec   ", L"%d min %d sek   ");
0638     addPair("%s lines\n", L"%s linien\n");
0639     addPair("Using default options file %s\n", L"Mit Standard-Optionen Dat %s\n");
0640     addPair("Opening HTML documentation %s\n", L"Öffnen HTML-Dokumentation %s\n");
0641     addPair("Invalid option file options:", L"Ungültige Option Datei-Optionen:");
0642     addPair("Invalid command line options:", L"Ungültige Kommandozeilen-Optionen:");
0643     addPair("For help on options type 'astyle -h'", L"Für Hilfe zu den Optionen geben Sie 'astyle -h'");
0644     addPair("Cannot open options file", L"Kann nicht geöffnet werden Optionsdatei");
0645     addPair("Cannot open directory", L"Kann nicht geöffnet werden Verzeichnis");
0646     addPair("Cannot open HTML file %s\n", L"Kann nicht öffnen HTML-Datei %s\n");
0647     addPair("Command execute failure", L"Execute Befehl Scheitern");
0648     addPair("Command is not installed", L"Befehl ist nicht installiert");
0649     addPair("Missing filename in %s\n", L"Missing in %s Dateiname\n");
0650     addPair("Recursive option with no wildcard", L"Rekursive Option ohne Wildcard");
0651     addPair("Did you intend quote the filename", L"Haben Sie die Absicht Inhalte der Dateiname");
0652     addPair("No file to process %s\n", L"Keine Datei zu verarbeiten %s\n");
0653     addPair("Did you intend to use --recursive", L"Haben Sie verwenden möchten --recursive");
0654     addPair("Cannot process UTF-32 encoding", L"Nicht verarbeiten kann UTF-32 Codierung");
0655     addPair("\nArtistic Style has terminated", L"\nArtistic Style ist beendet");
0656 }
0657 
0658 Greek::Greek()  // ελληνικά
0659 // build the translation vector in the Translation base class
0660 {
0661     addPair("Formatted  %s\n", L"Διαμορφωμένη  %s\n");  // should align with unchanged
0662     addPair("Unchanged  %s\n", L"Αμετάβλητος   %s\n");   // should align with formatted
0663     addPair("Directory  %s\n", L"Κατάλογος  %s\n");
0664     addPair("Exclude  %s\n", L"Αποκλείω  %s\n");
0665     addPair("Exclude (unmatched)  %s\n", L"Ausschließen (unerreichte)  %s\n");
0666     addPair(" %s formatted   %s unchanged   ", L" %s σχηματοποιημένη   %s αμετάβλητες   ");
0667     addPair(" seconds   ", L" δευτερόλεπτα   ");
0668     addPair("%d min %d sec   ", L"%d λεπ %d δευ   ");
0669     addPair("%s lines\n", L"%s γραμμές\n");
0670     addPair("Using default options file %s\n", L"Χρησιμοποιώντας το αρχείο προεπιλεγμένες επιλογές %s\n");
0671     addPair("Opening HTML documentation %s\n", L"Εγκαίνια έγγραφα HTML %s\n");
0672     addPair("Invalid option file options:", L"Μη έγκυρες επιλογές αρχείου επιλογή:");
0673     addPair("Invalid command line options:", L"Μη έγκυρη επιλογές γραμμής εντολών:");
0674     addPair("For help on options type 'astyle -h'", L"Για βοήθεια σχετικά με το είδος επιλογές 'astyle -h'");
0675     addPair("Cannot open options file", L"Δεν μπορείτε να ανοίξετε το αρχείο επιλογών");
0676     addPair("Cannot open directory", L"Δεν μπορείτε να ανοίξετε τον κατάλογο");
0677     addPair("Cannot open HTML file %s\n", L"Δεν μπορείτε να ανοίξετε το αρχείο HTML %s\n");
0678     addPair("Command execute failure", L"Εντολή να εκτελέσει την αποτυχία");
0679     addPair("Command is not installed", L"Η εντολή δεν έχει εγκατασταθεί");
0680     addPair("Missing filename in %s\n", L"Λείπει το όνομα αρχείου σε %s\n");
0681     addPair("Recursive option with no wildcard", L"Αναδρομικές επιλογή χωρίς μπαλαντέρ");
0682     addPair("Did you intend quote the filename", L"Μήπως σκοπεύετε να αναφέρετε το όνομα του αρχείου");
0683     addPair("No file to process %s\n", L"Δεν υπάρχει αρχείο για την επεξεργασία %s\n");
0684     addPair("Did you intend to use --recursive", L"Μήπως σκοπεύετε να χρησιμοποιήσετε --recursive");
0685     addPair("Cannot process UTF-32 encoding", L"δεν μπορεί να επεξεργαστεί UTF-32 κωδικοποίηση");
0686     addPair("\nArtistic Style has terminated", L"\nArtistic Style έχει λήξει");
0687 }
0688 
0689 Hindi::Hindi()  // हिन्दी
0690 // build the translation vector in the Translation base class
0691 {
0692     // NOTE: Scintilla based editors (CodeBlocks) cannot always edit Hindi.
0693     //       Use Visual Studio instead.
0694     addPair("Formatted  %s\n", L"स्वरूपित किया  %s\n"); // should align with unchanged
0695     addPair("Unchanged  %s\n", L"अपरिवर्तित     %s\n"); // should align with formatted
0696     addPair("Directory  %s\n", L"निर्देशिका  %s\n");
0697     addPair("Exclude  %s\n", L"निकालना  %s\n");
0698     addPair("Exclude (unmatched)  %s\n", L"अपवर्जित (बेजोड़)  %s\n");
0699     addPair(" %s formatted   %s unchanged   ", L" %s स्वरूपित किया   %s अपरिवर्तित   ");
0700     addPair(" seconds   ", L" सेकंड   ");
0701     addPair("%d min %d sec   ", L"%d मिनट %d सेकंड   ");
0702     addPair("%s lines\n", L"%s लाइनों\n");
0703     addPair("Using default options file %s\n", L"डिफ़ॉल्ट विकल्प का उपयोग कर फ़ाइल %s\n");
0704     addPair("Opening HTML documentation %s\n", L"एचटीएमएल प्रलेखन खोलना %s\n");
0705     addPair("Invalid option file options:", L"अवैध विकल्प फ़ाइल विकल्प हैं:");
0706     addPair("Invalid command line options:", L"कमांड लाइन विकल्प अवैध:");
0707     addPair("For help on options type 'astyle -h'", L"विकल्पों पर मदद के लिए प्रकार 'astyle -h'");
0708     addPair("Cannot open options file", L"विकल्प फ़ाइल नहीं खोल सकता है");
0709     addPair("Cannot open directory", L"निर्देशिका नहीं खोल सकता");
0710     addPair("Cannot open HTML file %s\n", L"HTML फ़ाइल नहीं खोल सकता %s\n");
0711     addPair("Command execute failure", L"आदेश विफलता निष्पादित");
0712     addPair("Command is not installed", L"कमान स्थापित नहीं है");
0713     addPair("Missing filename in %s\n", L"लापता में फ़ाइलनाम %s\n");
0714     addPair("Recursive option with no wildcard", L"कोई वाइल्डकार्ड साथ पुनरावर्ती विकल्प");
0715     addPair("Did you intend quote the filename", L"क्या आप बोली फ़ाइलनाम का इरादा");
0716     addPair("No file to process %s\n", L"कोई फ़ाइल %s प्रक्रिया के लिए\n");
0717     addPair("Did you intend to use --recursive", L"क्या आप उपयोग करना चाहते हैं --recursive");
0718     addPair("Cannot process UTF-32 encoding", L"UTF-32 कूटबन्धन प्रक्रिया नहीं कर सकते");
0719     addPair("\nArtistic Style has terminated", L"\nArtistic Style समाप्त किया है");
0720 }
0721 
0722 Hungarian::Hungarian()  // Magyar
0723 // build the translation vector in the Translation base class
0724 {
0725     addPair("Formatted  %s\n", L"Formázott    %s\n");  // should align with unchanged
0726     addPair("Unchanged  %s\n", L"Változatlan  %s\n");  // should align with formatted
0727     addPair("Directory  %s\n", L"Címjegyzék  %s\n");
0728     addPair("Exclude  %s\n", L"Kizár  %s\n");
0729     addPair("Exclude (unmatched)  %s\n", L"Escludere (senza pari)  %s\n");
0730     addPair(" %s formatted   %s unchanged   ", L" %s formázott   %s változatlan   ");
0731     addPair(" seconds   ", L" másodperc   ");
0732     addPair("%d min %d sec   ", L"%d jeg %d más   ");
0733     addPair("%s lines\n", L"%s vonalak\n");
0734     addPair("Using default options file %s\n", L"Az alapértelmezett beállítások fájl %s\n");
0735     addPair("Opening HTML documentation %s\n", L"Nyitó HTML dokumentáció %s\n");
0736     addPair("Invalid option file options:", L"Érvénytelen opció fájlbeállítást:");
0737     addPair("Invalid command line options:", L"Érvénytelen parancssori opciók:");
0738     addPair("For help on options type 'astyle -h'", L"Ha segítségre van lehetőség típus 'astyle-h'");
0739     addPair("Cannot open options file", L"Nem lehet megnyitni beállítási fájlban");
0740     addPair("Cannot open directory", L"Nem lehet megnyitni könyvtár");
0741     addPair("Cannot open HTML file %s\n", L"Nem lehet megnyitni a HTML fájlt %s\n");
0742     addPair("Command execute failure", L"Command végre hiba");
0743     addPair("Command is not installed", L"Parancs nincs telepítve");
0744     addPair("Missing filename in %s\n", L"Hiányzó fájlnév %s\n");
0745     addPair("Recursive option with no wildcard", L"Rekurzív kapcsolót nem wildcard");
0746     addPair("Did you intend quote the filename", L"Esetleg kívánja idézni a fájlnév");
0747     addPair("No file to process %s\n", L"Nincs fájl feldolgozása %s\n");
0748     addPair("Did you intend to use --recursive", L"Esetleg a használni kívánt --recursive");
0749     addPair("Cannot process UTF-32 encoding", L"Nem tudja feldolgozni UTF-32 kódolással");
0750     addPair("\nArtistic Style has terminated", L"\nArtistic Style megszűnt");
0751 }
0752 
0753 Italian::Italian()  // Italiano
0754 // build the translation vector in the Translation base class
0755 {
0756     addPair("Formatted  %s\n", L"Formattata  %s\n");    // should align with unchanged
0757     addPair("Unchanged  %s\n", L"Immutato    %s\n");    // should align with formatted
0758     addPair("Directory  %s\n", L"Elenco  %s\n");
0759     addPair("Exclude  %s\n", L"Escludere  %s\n");
0760     addPair("Exclude (unmatched)  %s\n", L"Escludere (senza pari)  %s\n");
0761     addPair(" %s formatted   %s unchanged   ", L" %s ormattata   %s immutato   ");
0762     addPair(" seconds   ", L" secondo   ");
0763     addPair("%d min %d sec   ", L"%d min %d seg   ");
0764     addPair("%s lines\n", L"%s linee\n");
0765     addPair("Using default options file %s\n", L"Utilizzando file delle opzioni di default %s\n");
0766     addPair("Opening HTML documentation %s\n", L"Apertura di documenti HTML %s\n");
0767     addPair("Invalid option file options:", L"Opzione non valida file delle opzioni:");
0768     addPair("Invalid command line options:", L"Opzioni della riga di comando non valido:");
0769     addPair("For help on options type 'astyle -h'", L"Per informazioni sulle opzioni di tipo 'astyle-h'");
0770     addPair("Cannot open options file", L"Impossibile aprire il file opzioni");
0771     addPair("Cannot open directory", L"Impossibile aprire la directory");
0772     addPair("Cannot open HTML file %s\n", L"Impossibile aprire il file HTML %s\n");
0773     addPair("Command execute failure", L"Esegui fallimento comando");
0774     addPair("Command is not installed", L"Il comando non è installato");
0775     addPair("Missing filename in %s\n", L"Nome del file mancante in %s\n");
0776     addPair("Recursive option with no wildcard", L"Opzione ricorsiva senza jolly");
0777     addPair("Did you intend quote the filename", L"Avete intenzione citare il nome del file");
0778     addPair("No file to process %s\n", L"Nessun file al processo %s\n");
0779     addPair("Did you intend to use --recursive", L"Hai intenzione di utilizzare --recursive");
0780     addPair("Cannot process UTF-32 encoding", L"Non è possibile processo di codifica UTF-32");
0781     addPair("\nArtistic Style has terminated", L"\nArtistic Style ha terminato");
0782 }
0783 
0784 Japanese::Japanese()    // 日本語
0785 // build the translation vector in the Translation base class
0786 {
0787     addPair("Formatted  %s\n", L"フォーマット済みの  %s\n");       // should align with unchanged
0788     addPair("Unchanged  %s\n", L"変わりません        %s\n");      // should align with formatted
0789     addPair("Directory  %s\n", L"ディレクトリ  %s\n");
0790     addPair("Exclude  %s\n", L"除外する  %s\n");
0791     addPair("Exclude (unmatched)  %s\n", L"除外する(一致しません)  %s\n");
0792     addPair(" %s formatted   %s unchanged   ", L" %s フフォーマット済みの   %s 変わりません   ");
0793     addPair(" seconds   ", L" 秒   ");
0794     addPair("%d min %d sec   ", L"%d 分 %d 秒   ");
0795     addPair("%s lines\n", L"%s ライン\n");
0796     addPair("Using default options file %s\n", L"デフォルトのオプションファイルを使用して、 %s\n");
0797     addPair("Opening HTML documentation %s\n", L"オープニングHTMLドキュメント %s\n");
0798     addPair("Invalid option file options:", L"無効なオプションファイルのオプション:");
0799     addPair("Invalid command line options:", L"無効なコマンドラインオプション:");
0800     addPair("For help on options type 'astyle -h'", L"コオプションの種類のヘルプについて'astyle- h'を入力してください");
0801     addPair("Cannot open options file", L"オプションファイルを開くことができません");
0802     addPair("Cannot open directory", L"ディレクトリを開くことができません。");
0803     addPair("Cannot open HTML file %s\n", L"HTMLファイルを開くことができません %s\n");
0804     addPair("Command execute failure", L"コマンドが失敗を実行します");
0805     addPair("Command is not installed", L"コマンドがインストールされていません");
0806     addPair("Missing filename in %s\n", L"%s で、ファイル名がありません\n");
0807     addPair("Recursive option with no wildcard", L"無ワイルドカードを使用して再帰的なオプション");
0808     addPair("Did you intend quote the filename", L"あなたはファイル名を引用するつもりでした");
0809     addPair("No file to process %s\n", L"いいえファイルは処理しないように %s\n");
0810     addPair("Did you intend to use --recursive", L"あなたは--recursive使用するつもりでした");
0811     addPair("Cannot process UTF-32 encoding", L"UTF - 32エンコーディングを処理できません");
0812     addPair("\nArtistic Style has terminated", L"\nArtistic Style 終了しました");
0813 }
0814 
0815 Korean::Korean()    // 한국의
0816 // build the translation vector in the Translation base class
0817 {
0818     addPair("Formatted  %s\n", L"수정됨    %s\n");       // should align with unchanged
0819     addPair("Unchanged  %s\n", L"변경없음  %s\n");      // should align with formatted
0820     addPair("Directory  %s\n", L"디렉토리  %s\n");
0821     addPair("Exclude  %s\n", L"제외됨  %s\n");
0822     addPair("Exclude (unmatched)  %s\n", L"제외 (NO 일치)  %s\n");
0823     addPair(" %s formatted   %s unchanged   ", L" %s 수정됨   %s 변경없음   ");
0824     addPair(" seconds   ", L" 초   ");
0825     addPair("%d min %d sec   ", L"%d 분 %d 초   ");
0826     addPair("%s lines\n", L"%s 라인\n");
0827     addPair("Using default options file %s\n", L"기본 구성 파일을 사용 %s\n");
0828     addPair("Opening HTML documentation %s\n", L"HTML 문서를 열기 %s\n");
0829     addPair("Invalid option file options:", L"잘못된 구성 파일 옵션 :");
0830     addPair("Invalid command line options:", L"잘못된 명령줄 옵션 :");
0831     addPair("For help on options type 'astyle -h'", L"도움말을 보려면 옵션 유형 'astyle - H'를 사용합니다");
0832     addPair("Cannot open options file", L"구성 파일을 열 수 없습니다");
0833     addPair("Cannot open directory", L"디렉토리를 열지 못했습니다");
0834     addPair("Cannot open HTML file %s\n", L"HTML 파일을 열 수 없습니다 %s\n");
0835     addPair("Command execute failure", L"명령 실패를 실행");
0836     addPair("Command is not installed", L"명령이 설치되어 있지 않습니다");
0837     addPair("Missing filename in %s\n", L"%s 에서 누락된 파일 이름\n");
0838     addPair("Recursive option with no wildcard", L"와일드 카드없이 재귀 옵션");
0839     addPair("Did you intend quote the filename", L"당신은 파일 이름을 인용하고자하나요");
0840     addPair("No file to process %s\n", L"처리할 파일이 없습니다 %s\n");
0841     addPair("Did you intend to use --recursive", L"--recursive 를 사용하고자 하십니까");
0842     addPair("Cannot process UTF-32 encoding", L"UTF-32 인코딩을 처리할 수 없습니다");
0843     addPair("\nArtistic Style has terminated", L"\nArtistic Style를 종료합니다");
0844 }
0845 
0846 Norwegian::Norwegian()  // Norsk
0847 // build the translation vector in the Translation base class
0848 {
0849     addPair("Formatted  %s\n", L"Formatert  %s\n");     // should align with unchanged
0850     addPair("Unchanged  %s\n", L"Uendret    %s\n");     // should align with formatted
0851     addPair("Directory  %s\n", L"Katalog  %s\n");
0852     addPair("Exclude  %s\n", L"Ekskluder  %s\n");
0853     addPair("Exclude (unmatched)  %s\n", L"Ekskluder (uovertruffen)  %s\n");
0854     addPair(" %s formatted   %s unchanged   ", L" %s formatert   %s uendret   ");
0855     addPair(" seconds   ", L" sekunder   ");
0856     addPair("%d min %d sec   ", L"%d min %d sek?   ");
0857     addPair("%s lines\n", L"%s linjer\n");
0858     addPair("Using default options file %s\n", L"Ved hjelp av standardalternativer fil %s\n");
0859     addPair("Opening HTML documentation %s\n", L"Åpning HTML dokumentasjon %s\n");
0860     addPair("Invalid option file options:", L"Ugyldige alternativ filalternativer:");
0861     addPair("Invalid command line options:", L"Kommandolinjevalg Ugyldige:");
0862     addPair("For help on options type 'astyle -h'", L"For hjelp til alternativer type 'astyle -h'");
0863     addPair("Cannot open options file", L"Kan ikke åpne alternativer fil");
0864     addPair("Cannot open directory", L"Kan ikke åpne katalog");
0865     addPair("Cannot open HTML file %s\n", L"Kan ikke åpne HTML-fil %s\n");
0866     addPair("Command execute failure", L"Command utføre svikt");
0867     addPair("Command is not installed", L"Command er ikke installert");
0868     addPair("Missing filename in %s\n", L"Mangler filnavn i %s\n");
0869     addPair("Recursive option with no wildcard", L"Rekursiv alternativ uten wildcard");
0870     addPair("Did you intend quote the filename", L"Har du tenkt sitere filnavnet");
0871     addPair("No file to process %s\n", L"Ingen fil å behandle %s\n");
0872     addPair("Did you intend to use --recursive", L"Har du tenkt å bruke --recursive");
0873     addPair("Cannot process UTF-32 encoding", L"Kan ikke behandle UTF-32 koding");
0874     addPair("\nArtistic Style has terminated", L"\nArtistic Style har avsluttet");
0875 }
0876 
0877 Polish::Polish()    // Polski
0878 // build the translation vector in the Translation base class
0879 {
0880     addPair("Formatted  %s\n", L"Sformatowany  %s\n");  // should align with unchanged
0881     addPair("Unchanged  %s\n", L"Niezmienione  %s\n");  // should align with formatted
0882     addPair("Directory  %s\n", L"Katalog  %s\n");
0883     addPair("Exclude  %s\n", L"Wykluczać  %s\n");
0884     addPair("Exclude (unmatched)  %s\n", L"Wyklucz (niezrównany)  %s\n");
0885     addPair(" %s formatted   %s unchanged   ", L" %s sformatowany   %s niezmienione   ");
0886     addPair(" seconds   ", L" sekund   ");
0887     addPair("%d min %d sec   ", L"%d min %d sek   ");
0888     addPair("%s lines\n", L"%s linii\n");
0889     addPair("Using default options file %s\n", L"Korzystanie z domyślnej opcji %s plik\n");
0890     addPair("Opening HTML documentation %s\n", L"Otwarcie dokumentacji HTML %s\n");
0891     addPair("Invalid option file options:", L"Nieprawidłowy opcji pliku opcji:");
0892     addPair("Invalid command line options:", L"Nieprawidłowe opcje wiersza polecenia:");
0893     addPair("For help on options type 'astyle -h'", L"Aby uzyskać pomoc od rodzaju opcji 'astyle -h'");
0894     addPair("Cannot open options file", L"Nie można otworzyć pliku opcji");
0895     addPair("Cannot open directory", L"Nie można otworzyć katalogu");
0896     addPair("Cannot open HTML file %s\n", L"Nie można otworzyć pliku HTML %s\n");
0897     addPair("Command execute failure", L"Wykonaj polecenia niepowodzenia");
0898     addPair("Command is not installed", L"Polecenie nie jest zainstalowany");
0899     addPair("Missing filename in %s\n", L"Brakuje pliku w %s\n");
0900     addPair("Recursive option with no wildcard", L"Rekurencyjne opcja bez symboli");
0901     addPair("Did you intend quote the filename", L"Czy zamierza Pan podać nazwę pliku");
0902     addPair("No file to process %s\n", L"Brak pliku do procesu %s\n");
0903     addPair("Did you intend to use --recursive", L"Czy masz zamiar używać --recursive");
0904     addPair("Cannot process UTF-32 encoding", L"Nie można procesu kodowania UTF-32");
0905     addPair("\nArtistic Style has terminated", L"\nArtistic Style został zakończony");
0906 }
0907 
0908 Portuguese::Portuguese()    // Português
0909 // build the translation vector in the Translation base class
0910 {
0911     addPair("Formatted  %s\n", L"Formatado   %s\n");    // should align with unchanged
0912     addPair("Unchanged  %s\n", L"Inalterado  %s\n");    // should align with formatted
0913     addPair("Directory  %s\n", L"Diretório  %s\n");
0914     addPair("Exclude  %s\n", L"Excluir  %s\n");
0915     addPair("Exclude (unmatched)  %s\n", L"Excluir (incomparável)  %s\n");
0916     addPair(" %s formatted   %s unchanged   ", L" %s formatado   %s inalterado   ");
0917     addPair(" seconds   ", L" segundo   ");
0918     addPair("%d min %d sec   ", L"%d min %d seg   ");
0919     addPair("%s lines\n", L"%s linhas\n");
0920     addPair("Using default options file %s\n", L"Usando o arquivo de opções padrão %s\n");
0921     addPair("Opening HTML documentation %s\n", L"Abrindo a documentação HTML %s\n");
0922     addPair("Invalid option file options:", L"Opções de arquivo inválido opção:");
0923     addPair("Invalid command line options:", L"Opções de linha de comando inválida:");
0924     addPair("For help on options type 'astyle -h'", L"Para obter ajuda sobre as opções de tipo 'astyle -h'");
0925     addPair("Cannot open options file", L"Não é possível abrir arquivo de opções");
0926     addPair("Cannot open directory", L"Não é possível abrir diretório");
0927     addPair("Cannot open HTML file %s\n", L"Não é possível abrir arquivo HTML %s\n");
0928     addPair("Command execute failure", L"Executar falha de comando");
0929     addPair("Command is not installed", L"Comando não está instalado");
0930     addPair("Missing filename in %s\n", L"Filename faltando em %s\n");
0931     addPair("Recursive option with no wildcard", L"Opção recursiva sem curinga");
0932     addPair("Did you intend quote the filename", L"Será que você pretende citar o nome do arquivo");
0933     addPair("No file to process %s\n", L"Nenhum arquivo para processar %s\n");
0934     addPair("Did you intend to use --recursive", L"Será que você pretende usar --recursive");
0935     addPair("Cannot process UTF-32 encoding", L"Não pode processar a codificação UTF-32");
0936     addPair("\nArtistic Style has terminated", L"\nArtistic Style terminou");
0937 }
0938 
0939 Romanian::Romanian()    // Română
0940 // build the translation vector in the Translation base class
0941 {
0942     addPair("Formatted  %s\n", L"Formatat    %s\n");    // should align with unchanged
0943     addPair("Unchanged  %s\n", L"Neschimbat  %s\n");    // should align with formatted
0944     addPair("Directory  %s\n", L"Director  %s\n");
0945     addPair("Exclude  %s\n", L"Excludeți  %s\n");
0946     addPair("Exclude (unmatched)  %s\n", L"Excludeți (necompensată)  %s\n");
0947     addPair(" %s formatted   %s unchanged   ", L" %s formatat   %s neschimbat   ");
0948     addPair(" seconds   ", L" secunde   ");
0949     addPair("%d min %d sec   ", L"%d min %d sec   ");
0950     addPair("%s lines\n", L"%s linii\n");
0951     addPair("Using default options file %s\n", L"Fișier folosind opțiunile implicite %s\n");
0952     addPair("Opening HTML documentation %s\n", L"Documentație HTML deschidere %s\n");
0953     addPair("Invalid option file options:", L"Opțiuni de opțiune de fișier nevalide:");
0954     addPair("Invalid command line options:", L"Opțiuni de linie de comandă nevalide:");
0955     addPair("For help on options type 'astyle -h'", L"Pentru ajutor cu privire la tipul de opțiuni 'astyle -h'");
0956     addPair("Cannot open options file", L"Nu se poate deschide fișierul de opțiuni");
0957     addPair("Cannot open directory", L"Nu se poate deschide directorul");
0958     addPair("Cannot open HTML file %s\n", L"Nu se poate deschide fișierul HTML %s\n");
0959     addPair("Command execute failure", L"Comandă executa eșec");
0960     addPair("Command is not installed", L"Comanda nu este instalat");
0961     addPair("Missing filename in %s\n", L"Lipsă nume de fișier %s\n");
0962     addPair("Recursive option with no wildcard", L"Opțiunea recursiv cu nici un wildcard");
0963     addPair("Did you intend quote the filename", L"V-intentionati cita numele de fișier");
0964     addPair("No file to process %s\n", L"Nu există un fișier pentru a procesa %s\n");
0965     addPair("Did you intend to use --recursive", L"V-ați intenționați să utilizați --recursive");
0966     addPair("Cannot process UTF-32 encoding", L"Nu se poate procesa codificarea UTF-32");
0967     addPair("\nArtistic Style has terminated", L"\nArtistic Style a terminat");
0968 }
0969 
0970 Russian::Russian()  // русский
0971 // build the translation vector in the Translation base class
0972 {
0973     addPair("Formatted  %s\n", L"Форматированный  %s\n");    // should align with unchanged
0974     addPair("Unchanged  %s\n", L"без изменений    %s\n");   // should align with formatted
0975     addPair("Directory  %s\n", L"каталог  %s\n");
0976     addPair("Exclude  %s\n", L"исключать  %s\n");
0977     addPair("Exclude (unmatched)  %s\n", L"Исключить (непревзойденный)  %s\n");
0978     addPair(" %s formatted   %s unchanged   ", L" %s Форматированный   %s без изменений   ");
0979     addPair(" seconds   ", L" секунды   ");
0980     addPair("%d min %d sec   ", L"%d мин %d сек   ");
0981     addPair("%s lines\n", L"%s линий\n");
0982     addPair("Using default options file %s\n", L"Использование опции по умолчанию файл %s\n");
0983     addPair("Opening HTML documentation %s\n", L"Открытие HTML документации %s\n");
0984     addPair("Invalid option file options:", L"Недопустимый файл опций опцию:");
0985     addPair("Invalid command line options:", L"Недопустимые параметры командной строки:");
0986     addPair("For help on options type 'astyle -h'", L"Для получения справки по 'astyle -h' опций типа");
0987     addPair("Cannot open options file", L"Не удается открыть файл параметров");
0988     addPair("Cannot open directory", L"Не могу открыть каталог");
0989     addPair("Cannot open HTML file %s\n", L"Не удается открыть файл HTML %s\n");
0990     addPair("Command execute failure", L"Выполнить команду недостаточности");
0991     addPair("Command is not installed", L"Не установлен Команда");
0992     addPair("Missing filename in %s\n", L"Отсутствует имя файла в %s\n");
0993     addPair("Recursive option with no wildcard", L"Рекурсивный вариант без каких-либо шаблона");
0994     addPair("Did you intend quote the filename", L"Вы намерены цитатой файла");
0995     addPair("No file to process %s\n", L"Нет файлов для обработки %s\n");
0996     addPair("Did you intend to use --recursive", L"Неужели вы собираетесь использовать --recursive");
0997     addPair("Cannot process UTF-32 encoding", L"Не удается обработать UTF-32 кодировке");
0998     addPair("\nArtistic Style has terminated", L"\nArtistic Style прекратил");
0999 }
1000 
1001 Spanish::Spanish()  // Español
1002 // build the translation vector in the Translation base class
1003 {
1004     addPair("Formatted  %s\n", L"Formato     %s\n");    // should align with unchanged
1005     addPair("Unchanged  %s\n", L"Inalterado  %s\n");    // should align with formatted
1006     addPair("Directory  %s\n", L"Directorio  %s\n");
1007     addPair("Exclude  %s\n", L"Excluir  %s\n");
1008     addPair("Exclude (unmatched)  %s\n", L"Excluir (incomparable)  %s\n");
1009     addPair(" %s formatted   %s unchanged   ", L" %s formato   %s inalterado   ");
1010     addPair(" seconds   ", L" segundo   ");
1011     addPair("%d min %d sec   ", L"%d min %d seg   ");
1012     addPair("%s lines\n", L"%s líneas\n");
1013     addPair("Using default options file %s\n", L"Uso de las opciones por defecto del archivo %s\n");
1014     addPair("Opening HTML documentation %s\n", L"Apertura de documentación HTML %s\n");
1015     addPair("Invalid option file options:", L"Opción no válida opciones de archivo:");
1016     addPair("Invalid command line options:", L"No válido opciones de línea de comando:");
1017     addPair("For help on options type 'astyle -h'", L"Para obtener ayuda sobre las opciones tipo 'astyle -h'");
1018     addPair("Cannot open options file", L"No se puede abrir el archivo de opciones");
1019     addPair("Cannot open directory", L"No se puede abrir el directorio");
1020     addPair("Cannot open HTML file %s\n", L"No se puede abrir el archivo HTML %s\n");
1021     addPair("Command execute failure", L"Ejecutar el fracaso de comandos");
1022     addPair("Command is not installed", L"El comando no está instalado");
1023     addPair("Missing filename in %s\n", L"Falta nombre del archivo en %s\n");
1024     addPair("Recursive option with no wildcard", L"Recursiva opción sin comodín");
1025     addPair("Did you intend quote the filename", L"Se tiene la intención de citar el nombre de archivo");
1026     addPair("No file to process %s\n", L"No existe el fichero a procesar %s\n");
1027     addPair("Did you intend to use --recursive", L"Se va a utilizar --recursive");
1028     addPair("Cannot process UTF-32 encoding", L"No se puede procesar la codificación UTF-32");
1029     addPair("\nArtistic Style has terminated", L"\nArtistic Style ha terminado");
1030 }
1031 
1032 Swedish::Swedish()  // Svenska
1033 // build the translation vector in the Translation base class
1034 {
1035     addPair("Formatted  %s\n", L"Formaterade  %s\n");   // should align with unchanged
1036     addPair("Unchanged  %s\n", L"Oförändrade  %s\n"); // should align with formatted
1037     addPair("Directory  %s\n", L"Katalog  %s\n");
1038     addPair("Exclude  %s\n", L"Uteslut  %s\n");
1039     addPair("Exclude (unmatched)  %s\n", L"Uteslut (oöverträffad)  %s\n");
1040     addPair(" %s formatted   %s unchanged   ", L" %s formaterade   %s oförändrade   ");
1041     addPair(" seconds   ", L" sekunder   ");
1042     addPair("%d min %d sec   ", L"%d min %d sek   ");
1043     addPair("%s lines\n", L"%s linjer\n");
1044     addPair("Using default options file %s\n", L"Använda standardalternativ fil %s\n");
1045     addPair("Opening HTML documentation %s\n", L"Öppna HTML-dokumentation %s\n");
1046     addPair("Invalid option file options:", L"Ogiltigt alternativ fil alternativ:");
1047     addPair("Invalid command line options:", L"Ogiltig kommandoraden alternativ:");
1048     addPair("For help on options type 'astyle -h'", L"För hjälp om alternativ typ 'astyle -h'");
1049     addPair("Cannot open options file", L"Kan inte öppna inställningsfilen");
1050     addPair("Cannot open directory", L"Kan inte öppna katalog");
1051     addPair("Cannot open HTML file %s\n", L"Kan inte öppna HTML-filen %s\n");
1052     addPair("Command execute failure", L"Utför kommando misslyckande");
1053     addPair("Command is not installed", L"Kommandot är inte installerat");
1054     addPair("Missing filename in %s\n", L"Saknade filnamn i %s\n");
1055     addPair("Recursive option with no wildcard", L"Rekursiva alternativ utan jokertecken");
1056     addPair("Did you intend quote the filename", L"Visste du tänker citera filnamnet");
1057     addPair("No file to process %s\n", L"Ingen fil att bearbeta %s\n");
1058     addPair("Did you intend to use --recursive", L"Har du för avsikt att använda --recursive");
1059     addPair("Cannot process UTF-32 encoding", L"Kan inte hantera UTF-32 kodning");
1060     addPair("\nArtistic Style has terminated", L"\nArtistic Style har upphört");
1061 }
1062 
1063 Ukrainian::Ukrainian()  // Український
1064 // build the translation vector in the Translation base class
1065 {
1066     addPair("Formatted  %s\n", L"форматований  %s\n");  // should align with unchanged
1067     addPair("Unchanged  %s\n", L"без змін      %s\n");   // should align with formatted
1068     addPair("Directory  %s\n", L"Каталог  %s\n");
1069     addPair("Exclude  %s\n", L"Виключити  %s\n");
1070     addPair("Exclude (unmatched)  %s\n", L"Виключити (неперевершений)  %s\n");
1071     addPair(" %s formatted   %s unchanged   ", L" %s відформатований   %s без змін   ");
1072     addPair(" seconds   ", L" секунди   ");
1073     addPair("%d min %d sec   ", L"%d хви %d cek   ");
1074     addPair("%s lines\n", L"%s ліній\n");
1075     addPair("Using default options file %s\n", L"Використання файлів опцій за замовчуванням %s\n");
1076     addPair("Opening HTML documentation %s\n", L"Відкриття HTML документації %s\n");
1077     addPair("Invalid option file options:", L"Неприпустимий файл опцій опцію:");
1078     addPair("Invalid command line options:", L"Неприпустима параметри командного рядка:");
1079     addPair("For help on options type 'astyle -h'", L"Для отримання довідки по 'astyle -h' опцій типу");
1080     addPair("Cannot open options file", L"Не вдається відкрити файл параметрів");
1081     addPair("Cannot open directory", L"Не можу відкрити каталог");
1082     addPair("Cannot open HTML file %s\n", L"Не вдається відкрити файл HTML %s\n");
1083     addPair("Command execute failure", L"Виконати команду недостатності");
1084     addPair("Command is not installed", L"Не встановлений Команда");
1085     addPair("Missing filename in %s\n", L"Відсутня назва файлу в %s\n");
1086     addPair("Recursive option with no wildcard", L"Рекурсивний варіант без будь-яких шаблону");
1087     addPair("Did you intend quote the filename", L"Ви маєте намір цитатою файлу");
1088     addPair("No file to process %s\n", L"Немає файлів для обробки %s\n");
1089     addPair("Did you intend to use --recursive", L"Невже ви збираєтеся використовувати --recursive");
1090     addPair("Cannot process UTF-32 encoding", L"Не вдається обробити UTF-32 кодуванні");
1091     addPair("\nArtistic Style has terminated", L"\nArtistic Style припинив");
1092 }
1093 
1094 
1095 #endif  // ASTYLE_LIB
1096 
1097 }   // end of namespace astyle
1098