X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Flanguages;h=282d902c78adcb4953794ec6e5595d9f1e6fe289;hb=789617b8187368b37e9ebd2c82389d2ab856f887;hp=3ce6239625e549517f90ae82ac286260e14c3be6;hpb=daed22c4d6558661b74e4aa005fd9f5ba784e9eb;p=lyx.git diff --git a/lib/languages b/lib/languages index 3ce6239625..282d902c78 100644 --- a/lib/languages +++ b/lib/languages @@ -6,11 +6,14 @@ # # Language # GuiName "" +# HasGuiSupport # BabelName # PolyglossiaName # PolyglossiaOpts "" # Encoding -# QuoteStyle +# FontEncoding +# QuoteStyle # InternalEncoding # RTL # AsBabelOptions @@ -28,30 +31,54 @@ # # NOTES: # +# * If we provide Polyglossia languages with different options, the default +# options (such as "variant=american", "spelling=modern") should be +# explicitely spelled out (in order to provide mixing of such variants). # * Omitted elements will be treated as empty (if string) or "false" # (if boolean). +# * When HasGuiSupport is true, the language is candidate to appear in +# the list of possible GUI languages in the Preferences dialog. It +# will actually appear there only if a corresponding .mo file can be +# found among the translations. When several languages correspond to +# the same translation -- like English, English (US) and English +# (UK) -- try to select the entry that is most generic -- here +# English. # * The QuoteStyle arguments correspond to the following styles: -# - danish: >>text<< >text< (inward guillemets) -# - english: ``text'' `text' (66_99) -# - french: <> (outward guillemets) -# - german: ,,text`` ,text` (99/66) -# - polish: ,,text'' ,text' (99/99) -# - swedish: ''text'' 'text' (99_99) +# PRIMARY SECONDARY +# - british: `text' ``text'' (6_9 -- 66_99) +# - cjk: corner brackets white corner br. +# - cjk-angle: double angle br. angle br. +# - danish: >>text<< >text< (inward guillemets) +# - english: ``text'' `text' (66_99 -- 6_9) +# - french: <> ``text'' (outward guillemets -- 66_99) +# - frenchin: <> <> (French Imprimerie Nationale style) +# - german: ,,text`` ,text` (99/66 -- 9/6) +# - polish: ,,text'' ,text' (99/99 -- 9/9) +# - russian: <> ,,text`` (outward guillemets -- 99/66) +# - swedish: ''text'' 'text' (99_99 -- 9_9) +# - swedishg: >>text>> 'text' (Swedish Guillemets) +# - swiss: <> (outward guillemets) +# - plain: "text" 'text' (non-typographical quotes) # Note that the option names have been selected (rather arbitrarily) # because the respective styles are common in the respective countries. # Of course this does not imply any fixed relation to those countries. -# * Encoding is not relevant for XeTeX (which is utf8 always), and if -# Document > Settings > Language > Encoding is not set to "Language -# Default" -# * InternalEncoding is used to tell LyX that babel internally sets a font -# encoding (such as hebrew to LHE). See bug #5091. +# * Encoding is the default encoding used with TeX fonts. +# It is only used if Document > Settings > Language > Encoding +# is set to "Language Default" and "use non-TeX fonts" is FALSE. +# * InternalEncoding is used to tell LyX that babel internally sets a +# non-standard font encoding (such as hebrew to LHE or greek to LGR). +# If True, LyX cares for characters/macros that do not exist in +# some font encodings ("<", ">", "|" and straight quote). +# It is not required for standard encodings like T2A. See bug #5091. +# * "FontEncoding none" tells LyX that fontenc should not be loaded with this +# language. # * AsBabelOptions advices LyX to pass the languages locally to babel, not # globally to the class. Some languages (basically those not directly # supported by babel) need this. # FIXME: in this case, we might still need to pass the other languages # globally, for the use of other packages (such as varioref). # * LangCode is also used for spellchecking and thesaurus, where the -# dictionaries are named accordingly. Thus, check this when intoducing/ +# dictionaries are named accordingly. Thus, check this when introducing/ # changing language codes (especially aspell, thesaurus). # TODO: maybe use Best Current Practice (BCP 47) codes for LangCode # http://www.rfc-editor.org/rfc/bcp/bcp47.txt @@ -100,7 +127,7 @@ Language albanian GuiName "Albanian" BabelName albanian PolyglossiaName albanian - QuoteStyle french + QuoteStyle swiss Encoding iso8859-2 LangCode sq_AL End @@ -116,19 +143,35 @@ Language american End # not supported by babel +Language amharic + GuiName "Amharic" + PolyglossiaName amharic + Encoding utf8 + LangCode am_ET +End + +# In Babel, this is supported since v. 1.8a of babel-greek (2013-12-03) +# We introduce it with LyX 2.2 to give the support time to settle. Language ancientgreek - GuiName "Greek (ancient)" - PolyglossiaName greek - PolyglossiaOpts variant=ancient - QuoteStyle french - Encoding iso8859-7 - LangCode grc_GR + GuiName "Greek (ancient)" + BabelName greek + PostBabelPreamble + \languageattribute{greek}{ancient} + EndPostBabelPreamble + PolyglossiaName greek + PolyglossiaOpts "variant=ancient" + QuoteStyle french + Encoding iso8859-7 + InternalEncoding true + FontEncoding LGR + LangCode grc_GR End # FIXME: dummy babel language for arabic_arabtex to be able # to switch the language the way of the ArabTeX-package Language arabic_arabtex GuiName "Arabic (ArabTeX)" + HasGuiSupport true BabelName arabtex QuoteStyle french Encoding cp1256 @@ -143,6 +186,7 @@ Language arabic_arabi PolyglossiaName arabic QuoteStyle french Encoding cp1256 + FontEncoding LAE RTL true AsBabelOptions true LangCode ar_SA @@ -152,11 +196,20 @@ End Language armenian GuiName "Armenian" PolyglossiaName armenian - QuoteStyle french + QuoteStyle swiss Encoding utf8 LangCode hy_AM End +# not supported by babel +Language asturian + GuiName "Asturian" + PolyglossiaName asturian + QuoteStyle french + Encoding iso8859-15 + LangCode ast_ES +End + Language australian GuiName "English (Australia)" BabelName australian @@ -167,19 +220,25 @@ Language australian LangCode en_AU End -# not yet supported by polyglossia +# In polyglossia, this is supported since release 1.33.4 (May 2014) +# We introduce it with LyX 2.2 to give the support time to settle. Language austrian GuiName "German (Austria, old spelling)" BabelName austrian + PolyglossiaName german + PolyglossiaOpts "variant=austrian,spelling=old,babelshorthands=true" QuoteStyle german Encoding iso8859-15 LangCode de_AT End -# not yet supported by polyglossia +# In polyglossia, this is supported since release 1.33.4 (May 2014) +# We introduce it with LyX 2.2 to give the support time to settle. Language naustrian GuiName "German (Austria)" BabelName naustrian + PolyglossiaName german + PolyglossiaOpts "variant=austrian,spelling=new,babelshorthands=true" QuoteStyle german Encoding iso8859-15 LangCode de_AT @@ -187,6 +246,7 @@ End Language bahasa GuiName "Indonesian" + HasGuiSupport true BabelName bahasa PolyglossiaName bahasai QuoteStyle english @@ -205,9 +265,10 @@ End Language basque GuiName "Basque" + HasGuiSupport true BabelName basque PolyglossiaName basque - QuoteStyle french + QuoteStyle swiss Encoding iso8859-15 LangCode eu_ES PostBabelPreamble @@ -225,8 +286,18 @@ Language belarusian AsBabelOptions true End +# not yet supported by polyglossia +Language bosnian + GuiName "Bosnian" + BabelName bosnian + QuoteStyle polish + Encoding iso8859-2 + LangCode bs_BA +End + Language brazilian GuiName "Portuguese (Brazil)" + HasGuiSupport true BabelName brazil PolyglossiaName brazil QuoteStyle english @@ -248,7 +319,7 @@ Language british BabelName british PolyglossiaName english PolyglossiaOpts "variant=british" - QuoteStyle english + QuoteStyle british Encoding iso8859-15 LangCode en_GB End @@ -259,6 +330,7 @@ Language bulgarian PolyglossiaName bulgarian QuoteStyle german Encoding cp1251 + FontEncoding T2A LangCode bg_BG End @@ -274,6 +346,8 @@ Language canadian End # not yet supported by polyglossia +# Note: If polyglossia support gets implemented, french needs +# PolyglossiaOpts "variant=french" Language canadien GuiName "French (Canada)" BabelName canadien @@ -286,6 +360,7 @@ End Language catalan GuiName "Catalan" + HasGuiSupport true BabelName catalan PolyglossiaName catalan PolyglossiaOpts "babelshorthands=true" @@ -297,6 +372,7 @@ End # uses CJK package Language chinese-simplified GuiName "Chinese (simplified)" + HasGuiSupport true Encoding euc-cn QuoteStyle english LangCode zh_CN @@ -306,9 +382,10 @@ End # uses CJK package Language chinese-traditional GuiName "Chinese (traditional)" - QuoteStyle english - Encoding utf8-cjk - LangCode zh_TW + HasGuiSupport true + QuoteStyle cjk + Encoding utf8-cjk + LangCode zh_TW Requires CJK End @@ -331,6 +408,7 @@ End Language czech GuiName "Czech" + HasGuiSupport true BabelName czech PolyglossiaName czech QuoteStyle german @@ -340,6 +418,7 @@ End Language danish GuiName "Danish" + HasGuiSupport true BabelName danish PolyglossiaName danish QuoteStyle danish @@ -357,6 +436,7 @@ End Language dutch GuiName "Dutch" + HasGuiSupport true BabelName dutch PolyglossiaName dutch PolyglossiaOpts "babelshorthands=true" @@ -367,8 +447,10 @@ End Language english GuiName "English" + HasGuiSupport true BabelName english PolyglossiaName english + PolyglossiaOpts "variant=american" QuoteStyle english Encoding iso8859-15 LangCode en_US @@ -389,7 +471,7 @@ Language estonian GuiName "Estonian" BabelName estonian PolyglossiaName estonian - QuoteStyle polish + QuoteStyle german Encoding iso8859-15 LangCode et_EE PostBabelPreamble @@ -404,8 +486,10 @@ Language farsi BabelName farsi PolyglossiaName farsi Encoding utf8 + FontEncoding LFE RTL true LangCode fa_IR + QuoteStyle english PostBabelPreamble \DeclareTextSymbol{\guillemotright}{LFE}{62} \DeclareTextSymbol{\guillemotleft}{LFE}{60} @@ -414,6 +498,7 @@ End Language finnish GuiName "Finnish" + HasGuiSupport true BabelName finnish PolyglossiaName finnish QuoteStyle swedish @@ -424,6 +509,7 @@ End # We redefine \og and \fg (guillemets) for older french language definitions Language french GuiName "French" + HasGuiSupport true BabelName french PolyglossiaName french QuoteStyle french @@ -437,8 +523,19 @@ Language french EndPostBabelPreamble End +Language friulan + GuiName "Friulian" + HasGuiSupport true + BabelName friulan + PolyglossiaName friulan + QuoteStyle french + Encoding iso8859-15 + LangCode fur_IT +End + Language galician GuiName "Galician" + HasGuiSupport true BabelName galician PolyglossiaName galician QuoteStyle french @@ -449,12 +546,21 @@ Language galician EndPostBabelPreamble End +Language georgian + GuiName "Georgian" + BabelName georgian + QuoteStyle german + Encoding utf8 + FontEncoding T8M + LangCode ka_GE +End + # german does not use a country code (due to the variety) Language german GuiName "German (old spelling)" BabelName german PolyglossiaName german - PolyglossiaOpts "spelling=old,babelshorthands=true" + PolyglossiaOpts "variant=german,spelling=old,babelshorthands=true" QuoteStyle german Encoding iso8859-15 LangCode de @@ -463,33 +569,52 @@ End Language ngerman GuiName "German" + HasGuiSupport true BabelName ngerman PolyglossiaName german - PolyglossiaOpts "babelshorthands=true" + PolyglossiaOpts "variant=german,spelling=new,babelshorthands=true" QuoteStyle german Encoding iso8859-15 LangCode de_DE End -# Swiss German is not supported by babel and polyglossia yet -# We use ngerman for now (spellchecking is supported though!) +# In Babel, this is supported since release 2.7 of babel-german (Dec 2013) +# We introduce it with LyX 2.2 to give the support time to settle. +# In polyglossia, this is supported since release 1.33.6 (May 2015) +# We introduce it with LyX 2.3 to give the support time to settle. Language german-ch GuiName "German (Switzerland)" - BabelName ngerman + BabelName nswissgerman PolyglossiaName german - PolyglossiaOpts "babelshorthands=true" - QuoteStyle danish + PolyglossiaOpts "variant=swiss,spelling=new,babelshorthands=true" + QuoteStyle swiss Encoding iso8859-15 LangCode de_CH End +# In Babel, this is supported since release 2.7 of babel-german (Dec 2013) +# In polyglossia, this is supported since release 1.33.6 (May 2015) +# We introduce it with LyX 2.3 to give the support time to settle. +Language german-ch-old + GuiName "German (Switzerland, old spelling)" + BabelName swissgerman + PolyglossiaName german + PolyglossiaOpts "variant=swiss,spelling=old,babelshorthands=true" + QuoteStyle swiss + Encoding iso8859-15 + LangCode de_CH +End + Language greek GuiName "Greek" + HasGuiSupport true BabelName greek PolyglossiaName greek + PolyglossiaOpts "variant=monotonic" QuoteStyle french Encoding iso8859-7 InternalEncoding true + FontEncoding LGR LangCode el_GR End @@ -501,16 +626,21 @@ Language polutonikogreek QuoteStyle french Encoding iso8859-7 InternalEncoding true + FontEncoding LGR LangCode el_GR End Language hebrew GuiName "Hebrew" + HasGuiSupport true BabelName hebrew PolyglossiaName hebrew Encoding cp1255 QuoteStyle english InternalEncoding true +# Hebrew babel loads the font encodings +# itself in the appropriate order +# FontEncoding LHE RTL true LangCode he_IL End @@ -532,6 +662,7 @@ End # BabelName hungarian # Encoding iso8859-2 # LangCode hu_HU +# QuoteStyle polish #End Language icelandic @@ -547,10 +678,12 @@ End # language. We therefore the name of its hunspell dictionary. Language interlingua GuiName "Interlingua" + HasGuiSupport true BabelName interlingua PolyglossiaName interlingua Encoding iso8859-15 LangCode ia_IA + QuoteStyle english End Language irish @@ -564,6 +697,7 @@ End Language italian GuiName "Italian" + HasGuiSupport true BabelName italian PolyglossiaName italian QuoteStyle french @@ -578,12 +712,15 @@ End # InternalEncoding to true. Language japanese GuiName "Japanese" + HasGuiSupport true BabelName japanese Encoding jis-platex LangCode ja_JP AsBabelOptions true Requires japanese InternalEncoding true + FontEncoding None + QuoteStyle cjk End # uses CJK package @@ -592,6 +729,15 @@ Language japanese-cjk Encoding euc-jp LangCode ja_JP Requires CJK + QuoteStyle cjk +End + +# not supported by babel +Language kannada + GuiName "Kannada" + PolyglossiaName kannada + Encoding utf8 + LangCode kn_IN End # not yet supported by polyglossia @@ -606,10 +752,18 @@ Language kazakh EndPostBabelPreamble End +# not supported by babel +Language khmer + GuiName "Khmer" + PolyglossiaName khmer + Encoding utf8 + LangCode km_KH +End + Language korean GuiName "Korean" Encoding euc-kr - QuoteStyle english + QuoteStyle cjkangle LangCode ko_KR Requires CJK End @@ -647,8 +801,9 @@ Language latvian GuiName "Latvian" BabelName latvian PolyglossiaName latvian - QuoteStyle danish + QuoteStyle german Encoding iso8859-4 +# FontEncoding L7x # (required for hyphenation but not set by babel) LangCode lv_LV AsBabelOptions true End @@ -661,6 +816,7 @@ Language lithuanian PolyglossiaName lithuanian QuoteStyle german Encoding iso8859-13 + FontEncoding L7x LangCode lt_LT AsBabelOptions true End @@ -676,6 +832,7 @@ End Language magyar GuiName "Hungarian" + HasGuiSupport true BabelName magyar PolyglossiaName magyar QuoteStyle polish @@ -683,6 +840,16 @@ Language magyar LangCode hu_HU End +# not yet supported by polyglossia +Language macedonian + GuiName "Macedonian" + BabelName macedonian + QuoteStyle german + Encoding cp1251 + FontEncoding T2A + LangCode mk_MK +End + # not supported by babel Language marathi GuiName "Marathi" @@ -698,6 +865,7 @@ Language mongolian GuiName "Mongolian" BabelName mongolian Encoding utf8 + FontEncoding T2A LangCode mn_MN AsBabelOptions true End @@ -714,18 +882,20 @@ End Language norsk GuiName "Norwegian (Bokmaal)" + HasGuiSupport true BabelName norsk PolyglossiaName norsk - QuoteStyle french + QuoteStyle swiss Encoding iso8859-15 LangCode nb_NO End Language nynorsk GuiName "Norwegian (Nynorsk)" + HasGuiSupport true BabelName nynorsk PolyglossiaName nynorsk - QuoteStyle french + QuoteStyle swiss Encoding iso8859-15 LangCode nn_NO End @@ -742,46 +912,75 @@ End # Currently not supported (file format change!) # Russian orthography from the Petrine orthographic reforms of # 1708 to the 1917 orthographic reform +# Note: If this is enabled, russian needs to get +# PolyglossiaOpts "spelling=modern" # Language oldrussian # GuiName "Russian (Petrine orthography)" # PolyglossiaName russian -# PolyglossiaOpts spelling=old +# PolyglossiaOpts "spelling=old" # LangCode ru_petr1708 +# QuoteStyle russian # End +Language piedmontese + GuiName "Piedmontese" + HasGuiSupport true + BabelName piedmontese + PolyglossiaName piedmontese + QuoteStyle french + Encoding iso8859-15 + LangCode pms_IT +End + Language polish GuiName "Polish" + HasGuiSupport true BabelName polish PolyglossiaName polish QuoteStyle polish Encoding iso8859-2 +# FontEncoding QX # (required for hyphenation but not set by babel) LangCode pl_PL End Language portuguese GuiName "Portuguese" + HasGuiSupport true BabelName portuges PolyglossiaName portuges - QuoteStyle english + QuoteStyle french Encoding iso8859-15 LangCode pt_PT End Language romanian GuiName "Romanian" + HasGuiSupport true BabelName romanian PolyglossiaName romanian QuoteStyle polish - Encoding iso8859-2 + Encoding iso8859-16 LangCode ro_RO End +Language romansh + GuiName "Romansh" + HasGuiSupport true + BabelName romansh + PolyglossiaName romansh + QuoteStyle german + Encoding iso8859-15 + LangCode rm_CH +End + Language russian GuiName "Russian" + HasGuiSupport true BabelName russian PolyglossiaName russian - QuoteStyle french + QuoteStyle russian Encoding koi8-r + FontEncoding T2A LangCode ru_RU End @@ -810,28 +1009,36 @@ Language scottish LangCode gd_GB End +# Note: script option is uppercase, even if the polyglossia +# manual states otherwise. Language serbian GuiName "Serbian" + HasGuiSupport true BabelName serbianc PolyglossiaName serbian - QuoteStyle german - Encoding iso8859-5 + PolyglossiaOpts "script=Cyrillic" + QuoteStyle polish + Encoding utf8 + FontEncoding T2A LangCode sr_RS AsBabelOptions true End +# Note: script option is uppercase, even if the polyglossia +# manual states otherwise. Language serbian-latin GuiName "Serbian (Latin)" BabelName serbian PolyglossiaName serbian - PolyglossiaOpts "script=latin" - QuoteStyle german + PolyglossiaOpts "script=Latin" + QuoteStyle polish Encoding iso8859-2 LangCode sr_RS-Latin End Language slovak GuiName "Slovak" + HasGuiSupport true BabelName slovak PolyglossiaName slovak QuoteStyle german @@ -850,6 +1057,7 @@ End Language spanish GuiName "Spanish" + HasGuiSupport true BabelName spanish PolyglossiaName spanish QuoteStyle french @@ -875,6 +1083,7 @@ End Language swedish GuiName "Swedish" + HasGuiSupport true BabelName swedish PolyglossiaName swedish QuoteStyle swedish @@ -887,6 +1096,7 @@ Language syriac GuiName "Syriac" PolyglossiaName syriac Encoding utf8 + RTL true LangCode syr_SY End @@ -912,6 +1122,7 @@ Language thai PolyglossiaName thai QuoteStyle english Encoding tis620-0 +# FontEncoding LTH LangCode th_TH PostBabelPreamble \usepackage{thswitch} @@ -928,9 +1139,10 @@ End Language turkish GuiName "Turkish" + HasGuiSupport true BabelName turkish PolyglossiaName turkish - QuoteStyle french + QuoteStyle english Encoding iso8859-9 LangCode tr_TR PostBabelPreamble @@ -944,7 +1156,7 @@ Language turkmen GuiName "Turkmen" BabelName turkmen PolyglossiaName turkmen - QuoteStyle french + QuoteStyle swiss Encoding utf8 LangCode tk_TM AsBabelOptions true @@ -952,10 +1164,12 @@ End Language ukrainian GuiName "Ukrainian" + HasGuiSupport true BabelName ukrainian PolyglossiaName ukrainian - QuoteStyle french + QuoteStyle russian Encoding koi8-u + FontEncoding T2A LangCode uk_UA End @@ -973,28 +1187,24 @@ Language urdu GuiName "Urdu" PolyglossiaName urdu Encoding utf8 + RTL true LangCode ur_PK End -# vietnam must be loaded locally with babel options, -# not globally via class options, see -# http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html Language vietnamese GuiName "Vietnamese" - BabelName vietnam + BabelName vietnamese PolyglossiaName vietnamese - QuoteStyle french + QuoteStyle english Encoding utf8 LangCode vi_VN - AsBabelOptions true - Requires vietnamese End Language welsh GuiName "Welsh" BabelName welsh PolyglossiaName welsh - QuoteStyle english + QuoteStyle british Encoding iso8859-15 LangCode cy_GB End