X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Flanguages;h=3f8733787d69dc0f095b6ae72a572bfc02f8a82e;hb=b60259fbe142b26a9167b2205d1fdcf047129eac;hp=92d23c11e02e4cac16d3ac4b5d20af3c4c6ae766;hpb=f71a55a279914247f986ada9f3b78ebfd29c460b;p=lyx.git diff --git a/lib/languages b/lib/languages index 92d23c11e0..3f8733787d 100644 --- a/lib/languages +++ b/lib/languages @@ -6,10 +6,15 @@ # # Language # GuiName "" +# HasGuiSupport # BabelName # PolyglossiaName # PolyglossiaOpts "" +# QuoteStyle +# DateFormats "||" # Encoding +# FontEncoding # InternalEncoding # RTL # AsBabelOptions @@ -22,25 +27,87 @@ # # EndPostBabelPreamble # Requires +# Provides # End # # -# NOTE: +# 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). -# * 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. +# * 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: +# 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. +# * DateFormats lists the localized conventions for three date forms: +# - Long: December 1, 2018 +# - Medium: Dec 1, 2018 +# - Short: 1/12/2018 +# These are separated by | and use the QDate syntax: +# * d the day as number without a leading zero (1 to 31) +# * dd the day as number with a leading zero (01 to 31) +# * ddd the abbreviated localized day name (e.g. 'Mon' to 'Sun') +# * dddd the long localized day name (e.g. 'Monday' to 'Sunday') +# * M the month as number without a leading zero (1 to 12) +# * MM the month as number with a leading zero (01 to 12) +# * MMM the abbreviated localized month name (e.g. 'Jan' to 'Dec') +# * MMMM the long localized month name (e.g. 'January' to 'December') +# * yy the year as two digit number (00 to 99) +# * yyyy the year as four digit number +# * Encoding is the default encoding used with TeX fonts. +# It is only used if Document > Settings > Language > Encoding +# is set to "Language Default" or "Language Default (no inputenc)" +# and "use non-TeX fonts" is FALSE. +# Encoding "inherit" means: keep encoding of the context (used by +# latex_language). +# * FontEncoding is a bar-separated list of font encodings. +# The first value is the required font encoding for correct hyphenation with +# 8-bit TeX (http://www.hyphenation.org). Eventually following values may be +# used if the selected font is unavailable in FontEncoding. They provide all +# letters used in the language, but some only as "surrogate pairs" with +# possible problems for hyphenation and drag-and-drop from the generated +# documents. Default: "ASCII". +# * "FontEncoding ASCII" means: "works with any standard text encoding +# (T) as well as OT1". +# * "FontEncoding none" tells LyX that fontenc should not be loaded with +# this language. +# * 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 takes care 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. # * 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. +# globally to the class. In the old days, some languages (basically those +# not natively supported by babel) needed 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 @@ -51,6 +118,9 @@ # pre-1998 and post-1998 spelling). The aspell dictionaries are named # language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old # spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html) +# * Provides lists features that are provided by specific Babel languages, +# but are available globally if this language is used (not only for this +# language. Examples are \textgreek (Greek) and \textcyrillic (Russian). # ########################################################################## @@ -62,13 +132,13 @@ Language ignore GuiName "Ignore" BabelName ignore PolyglossiaName ignore - Encoding iso8859-1 + Encoding inherit LangCode ignore End Language latex GuiName "LaTeX" - Encoding iso8859-1 + Encoding inherit LangCode latex End @@ -80,15 +150,30 @@ End Language afrikaans GuiName "Afrikaans" BabelName afrikaans + QuoteStyle polish Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "dd MMMM yyyy|dd MMM yyyy|yyyy/MM/dd" LangCode af_ZA End +# FontEncoding: no hyphenation, but uses Ç/ç und Ë/ë Language albanian GuiName "Albanian" BabelName albanian + # babel-albanian (albanian.ldf) (re-)defines the functions + # \sh \ch \th \cth \arsh \arch \arth \arcth \tg \ctg \arctg + # as math operators. This clashes with \th == letter thorn + # in font encoding T1 + PostBabelPreamble + % fix albanian: restore \th as LATIN LETTER THORN + \@ifl@aded{def}{t1enc}{\DeclareTextSymbol{\th}{T1}{254}}{} + EndPostBabelPreamble PolyglossiaName albanian + QuoteStyle swiss Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy" LangCode sq_AL End @@ -97,25 +182,50 @@ Language american BabelName american PolyglossiaName english PolyglossiaOpts "variant=american" + QuoteStyle english Encoding iso8859-15 + FontEncoding ASCII + DateFormats "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy" LangCode en_US End # not supported by babel +Language amharic + GuiName "Amharic" + PolyglossiaName amharic + Encoding utf8 + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy" + 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)" + BabelName greek + PostBabelPreamble + \languageattribute{greek}{ancient} + EndPostBabelPreamble PolyglossiaName greek - PolyglossiaOpts variant=ancient + PolyglossiaOpts "variant=ancient" + QuoteStyle french Encoding iso8859-7 + InternalEncoding true + FontEncoding LGR + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy" LangCode grc_GR + Provides textgreek 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 + DateFormats "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy" RTL true LangCode ar_SA End @@ -125,8 +235,16 @@ Language arabic_arabi GuiName "Arabic (Arabi)" BabelName arabic PolyglossiaName arabic + QuoteStyle french Encoding cp1256 + FontEncoding LAE + DateFormats "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy" RTL true + PostBabelPreamble + % arabi + hyperref redefines \noboundary as local textcommand + \let\orig@noboundary\noboundary + \DeclareTextCommandDefault{\noboundary}{\orig@noboundary} + EndPostBabelPreamble LangCode ar_SA End @@ -134,40 +252,74 @@ End Language armenian GuiName "Armenian" PolyglossiaName armenian - Encoding armscii8 + QuoteStyle swiss + Encoding utf8 + DateFormats "d MMMM، yyyy|d MMM، yyyy|d/M/yyyy" LangCode hy_AM End +# not supported by babel +Language asturian + GuiName "Asturian" + PolyglossiaName asturian + QuoteStyle french + Encoding iso8859-15 + DateFormats "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy" + LangCode ast_ES +End + + Language australian GuiName "English (Australia)" BabelName australian PolyglossiaName english PolyglossiaOpts "variant=australian" Encoding iso8859-15 + FontEncoding ASCII + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" + QuoteStyle english 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. +# Due to the variety, we use no country code. 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 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" + LangCode de + LangVariety alt 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 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" LangCode de_AT End Language bahasa GuiName "Indonesian" + HasGuiSupport true BabelName bahasa PolyglossiaName bahasai + QuoteStyle english Encoding iso8859-15 + FontEncoding ASCII + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode id_ID End @@ -175,39 +327,77 @@ Language bahasam GuiName "Malay" BabelName bahasam PolyglossiaName bahasam + QuoteStyle english Encoding iso8859-15 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode ms_MY End Language basque GuiName "Basque" + HasGuiSupport true BabelName basque PolyglossiaName basque + QuoteStyle swiss Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "yyyy MMMM dd|yyyy MMM dd|yyyy/MM/dd" LangCode eu_ES + PostBabelPreamble + \addto\extrasbasque{\bbl@deactivate{~}} + EndPostBabelPreamble End # not yet supported by polyglossia +# Up to 2018-08-25 (babel-belarusian 1.4), the babel option is "belarusianb" +# but the language name "belarusian" (without trailing "b"). Language belarusian GuiName "Belarusian" BabelName belarusian + QuoteStyle french Encoding cp1251 + FontEncoding T2A + DateFormats "dd MMMM yyyy|d MMM yyyy|d.M.yyyy" LangCode be_BY End +# supported by polyglossia but not LyX: +# Language bengali +# PolyglossiaName bengali + +# not yet supported by polyglossia +# The (rarely used) Cyrillic script is not supported (try serbian). +Language bosnian + GuiName "Bosnian" + BabelName bosnian + QuoteStyle polish + Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|yyyy-MM-dd" + LangCode bs_BA +End + Language brazilian GuiName "Portuguese (Brazil)" + HasGuiSupport true BabelName brazil PolyglossiaName brazil + QuoteStyle english Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy" LangCode pt_BR End +# FontEncoding: # ? no hyphenation, but uses ñ Language breton GuiName "Breton" BabelName breton PolyglossiaName breton + QuoteStyle french Encoding iso8859-15 + #FontEncoding T1 + DateFormats "dd MMMM yyyy|d MMM yyyy|yyyy-MM-dd" LangCode br_FR End @@ -216,7 +406,10 @@ Language british BabelName british PolyglossiaName english PolyglossiaOpts "variant=british" + QuoteStyle british Encoding iso8859-15 + FontEncoding ASCII + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode en_GB End @@ -224,8 +417,12 @@ Language bulgarian GuiName "Bulgarian" BabelName bulgarian PolyglossiaName bulgarian + QuoteStyle german Encoding cp1251 + FontEncoding T2A + DateFormats "dd MMMM yyyy|d MMM yyyy|yyyy-M-d" LangCode bg_BG + Provides textcyrillic End # not yet supported by polyglossia @@ -234,46 +431,69 @@ Language canadian BabelName canadian # PolyglossiaName english # PolyglossiaOpts "variant=canadian" + QuoteStyle english Encoding iso8859-15 + FontEncoding ASCII + DateFormats "MMMM d, yyyy|d MMM yyyy|yyyy-MM-dd" LangCode en_CA End # not yet supported by polyglossia +# Note: If polyglossia support gets implemented, french needs +# PolyglossiaOpts "variant=french" Language canadien GuiName "French (Canada)" BabelName canadien # PolyglossiaName french # PolyglossiaOpts "variant=canadien" + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd" LangCode fr_CA End Language catalan GuiName "Catalan" + HasGuiSupport true BabelName catalan PolyglossiaName catalan PolyglossiaOpts "babelshorthands=true" + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d / MMMM / yyyy|d / MMM / yyyy|dd/MM/yyyy" LangCode ca_ES End # uses CJK package Language chinese-simplified GuiName "Chinese (simplified)" + HasGuiSupport true Encoding euc-cn + QuoteStyle english LangCode zh_CN + DateFormats "yyyy年M月d日|yyyy-M-d|yy-M-d" Requires CJK End # uses CJK package Language chinese-traditional GuiName "Chinese (traditional)" - Encoding utf8-cjk - LangCode zh_CN + HasGuiSupport true + QuoteStyle cjk + Encoding utf8-cjk + LangCode zh_TW + DateFormats "yyyy年M月d日|yyyy年M月d日|yy年M月d日" Requires CJK End +# supported by polyglossia but not LyX: +# Language churchslavonic +# PolyglossiaName churchslavonic + # not supported by babel +# FIXME DateFormats Language coptic GuiName "Coptic" PolyglossiaName coptic @@ -285,23 +505,34 @@ Language croatian GuiName "Croatian" BabelName croatian PolyglossiaName croatian + QuoteStyle polish Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy.|d. MMM. yyyy.|dd.MM.yyyy." LangCode hr_HR End Language czech GuiName "Czech" + HasGuiSupport true BabelName czech PolyglossiaName czech + QuoteStyle german Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM. yyyy|d.M.yyyy" LangCode cs_CZ End Language danish GuiName "Danish" + HasGuiSupport true BabelName danish PolyglossiaName danish + QuoteStyle danish Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy" LangCode da_DK End @@ -310,33 +541,46 @@ Language divehi GuiName "Divehi (Maldivian)" PolyglossiaName divehi Encoding utf8 + DateFormats "yyyy MMMM dd|yyyy MMM dd|dd/MM/yyyy" LangCode dv_MV End Language dutch GuiName "Dutch" + HasGuiSupport true BabelName dutch PolyglossiaName dutch PolyglossiaOpts "babelshorthands=true" + QuoteStyle polish Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|d-M-yyyy" LangCode nl_NL End Language english GuiName "English" + HasGuiSupport true BabelName english PolyglossiaName english + PolyglossiaOpts "variant=american" + QuoteStyle english + DateFormats "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy" Encoding iso8859-15 + FontEncoding ASCII LangCode en_US End # Esperanto has no country code because it is an auxiliary language. -# We therefore the name of its hunspell dictionary. +# We therefore use the name of its hunspell dictionary. Language esperanto GuiName "Esperanto" BabelName esperanto PolyglossiaName esperanto + QuoteStyle english Encoding iso8859-3 + FontEncoding IL3|T1|OT1 + DateFormats "'la' d 'de' MMMM yyyy|'la' d 'de' MMM yyyy|MM/dd/yyyy" LangCode eo_EO End @@ -344,8 +588,14 @@ Language estonian GuiName "Estonian" BabelName estonian PolyglossiaName estonian + QuoteStyle german Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy" LangCode et_EE + PostBabelPreamble + \addto\extrasestonian{\bbl@deactivate{~}} + EndPostBabelPreamble End # the preamble definitions are only used due to bugs in the @@ -355,8 +605,11 @@ Language farsi BabelName farsi PolyglossiaName farsi Encoding utf8 + FontEncoding LAE,LFE + DateFormats "d MMMM yyyy|d MMM yyyy|yyyy/M/d" RTL true LangCode fa_IR + QuoteStyle english PostBabelPreamble \DeclareTextSymbol{\guillemotright}{LFE}{62} \DeclareTextSymbol{\guillemotleft}{LFE}{60} @@ -365,18 +618,26 @@ End Language finnish GuiName "Finnish" + HasGuiSupport true BabelName finnish PolyglossiaName finnish + QuoteStyle swedish Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy" LangCode fi_FI End # We redefine \og and \fg (guillemets) for older french language definitions Language french GuiName "French" + HasGuiSupport true BabelName french PolyglossiaName french + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode fr_FR PostBabelPreamble \addto\extrasfrench{% @@ -386,12 +647,41 @@ Language french EndPostBabelPreamble End +Language friulan + GuiName "Friulian" + HasGuiSupport true + BabelName friulan + PolyglossiaName friulan + QuoteStyle french + Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'di' MMMM 'dal' yyyy|d 'di' MMM 'dal' yyyy|dd/MM/yyyy" + LangCode fur_IT +End + Language galician GuiName "Galician" + HasGuiSupport true BabelName galician PolyglossiaName galician + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy" LangCode gl_ES + PostBabelPreamble + \addto\shorthandsgalician{\galiciandeactivate{~}} + EndPostBabelPreamble +End + +# FIXME DateFormats +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) @@ -399,59 +689,106 @@ 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 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" LangCode de LangVariety alt 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 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" 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" + PolyglossiaOpts "variant=swiss,spelling=new,babelshorthands=true" + QuoteStyle swiss Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" 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 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy" + LangCode de_CH +End + Language greek - GuiName "Greek" - BabelName greek - PolyglossiaName greek - Encoding iso8859-7 - InternalEncoding true - LangCode el_GR + GuiName "Greek" + HasGuiSupport true + BabelName greek + PolyglossiaName greek + PolyglossiaOpts "variant=monotonic" + QuoteStyle french + Encoding iso8859-7 + InternalEncoding true + FontEncoding LGR + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy" + LangCode el_GR + Provides textgreek End Language polutonikogreek - GuiName "Greek (polytonic)" - BabelName polutonikogreek - PolyglossiaName greek - PolyglossiaOpts "variant=polytonic" - Encoding iso8859-7 - InternalEncoding true - LangCode el_GR + GuiName "Greek (polytonic)" + BabelName polutonikogreek + PolyglossiaName greek + PolyglossiaOpts "variant=polytonic" + QuoteStyle french + Encoding iso8859-7 + InternalEncoding true + FontEncoding LGR + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy" + LangCode el_GR + Provides textgreek End Language hebrew - GuiName "Hebrew" - BabelName hebrew - PolyglossiaName hebrew - Encoding cp1255 - InternalEncoding true - RTL true - LangCode he_IL + GuiName "Hebrew" + HasGuiSupport true + BabelName hebrew + PolyglossiaName hebrew + Encoding cp1255 + QuoteStyle english + InternalEncoding true + # babel-hebrew expects the encoding for *other* languages last: + # FontEncoding HE8 + # Define the font encoding the babel-hebrew way and + # work around too simple test for article-like classes in rlbabel.def. + PreBabelPreamble + \providecommand{\l@chapter}{\relax} + EndPreBabelPreamble + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" + RTL true + LangCode he_IL End # not supported by babel @@ -459,6 +796,7 @@ Language hindi GuiName "Hindi" PolyglossiaName hindi Encoding utf8 + DateFormats "dd MMMM yyyy|dd MMM yyyy|dd-MM-yyyy" LangCode hi_IN End @@ -471,13 +809,18 @@ End # BabelName hungarian # Encoding iso8859-2 # LangCode hu_HU +# QuoteStyle polish #End +# FontEncoding: OT1 misses ð and Þ Language icelandic GuiName "Icelandic" BabelName icelandic PolyglossiaName icelandic + QuoteStyle german Encoding iso8859-15 + FontEncoding T1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy" LangCode is_IS End @@ -485,68 +828,109 @@ End # language. We therefore the name of its hunspell dictionary. Language interlingua GuiName "Interlingua" + HasGuiSupport true BabelName interlingua PolyglossiaName interlingua Encoding iso8859-15 + FontEncoding ASCII LangCode ia_IA + DateFormats "'le' d 'de' MMMM yyyy|'le' d 'de' MMM yyyy|yyyy-mm-dd" + QuoteStyle english End Language irish GuiName "Irish" BabelName irish PolyglossiaName irish + QuoteStyle english Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy" LangCode ga_IE End Language italian GuiName "Italian" + HasGuiSupport true BabelName italian PolyglossiaName italian + QuoteStyle french Encoding iso8859-15 + FontEncoding ASCII + DateFormats "dd MMMM yyyy|dd/MMM/yyyy|dd/MM/yyyy" LangCode it_IT End -# japanese must be loaded locally with babel options, -# not globally via class options -# http://www.lyx.org/trac/ticket/4597#c4 +# Since 2016-12-18, babel-japanese works with non-TeX fonts (Xe/LuaTeX), too +# (use with "Japanese (bxjs)" or standard document classes) Language japanese GuiName "Japanese" + HasGuiSupport true BabelName japanese - Encoding jis-plain + Encoding jis-platex LangCode ja_JP - AsBabelOptions true Requires japanese + FontEncoding ASCII + DateFormats "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd" + QuoteStyle cjk End # uses CJK package Language japanese-cjk GuiName "Japanese (CJK)" Encoding euc-jp + DateFormats "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd" LangCode ja_JP Requires CJK + QuoteStyle cjk +End + +# not supported by babel +Language kannada + GuiName "Kannada" + PolyglossiaName kannada + Encoding utf8 + DateFormats "dd MMMM yyyy|dd MMMM yyyy|dd-MM-yyyy" + LangCode kn_IN End # not yet supported by polyglossia +# not supported by babel Language kazakh - GuiName "Kazakh" - BabelName kazakh - Encoding pt154 - LangCode kk_KZ + GuiName "Kazakh" + Encoding ascii + # FontEncoding T2A # not set (no Babel support) + DateFormats "dd MMMM yyyy|dd MMMM yyyy|yyyy-dd-MM" + LangCode kk_KZ End +# not supported by babel +Language khmer + GuiName "Khmer" + PolyglossiaName khmer + Encoding utf8 + DateFormats "d MMMM yyyy|d MMMM yyyy|dd/MM/yyyy" + LangCode km_KH +End + +# Fixme: activate Polyglossia support (file format change) Language korean GuiName "Korean" + #PolyglossiaName korean Encoding euc-kr + QuoteStyle cjkangle + DateFormats "yyyy년 M월 d일|yyyy. M. d.|yy. M. d." LangCode ko_KR Requires CJK End -# not supported by babel +# not yet supported by polyglossia Language kurmanji GuiName "Kurmanji" - PolyglossiaName kurmanji + BabelName kurmanji Encoding utf8 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. M. yyyy|yyyy-MM-dd" LangCode kmr End @@ -555,62 +939,109 @@ Language lao GuiName "Lao" PolyglossiaName lao Encoding utf8 + DateFormats "dd MMMM yyyy|dd MMMM yyyy|dd/MM/yyyy" LangCode lo_LA End # There is no country code for Latin because it is a dead language. # We therefore the name of its hunspell dictionary. +# FIXME DateFormats Language latin GuiName "Latin" BabelName latin PolyglossiaName latin Encoding iso8859-15 + FontEncoding T1|OT1 LangCode la_LA End # latvian must be loaded locally with babel options, # not globally via class options +# FontEncoding: L7x required for hyphenation but not set by Babel Language latvian GuiName "Latvian" BabelName latvian PolyglossiaName latvian + QuoteStyle german Encoding iso8859-4 + FontEncoding L7x|T1|OT1 + DateFormats "yyyy. 'gada' d. MMMM|yyyy. 'gada' d. MMM|dd.MM.yyyy" LangCode lv_LV - AsBabelOptions true End # lithuanian must be loaded locally with babel options, # not globally via class options +# FontEncoding: L7x set by Babel Language lithuanian GuiName "Lithuanian" BabelName lithuanian PolyglossiaName lithuanian + QuoteStyle german Encoding iso8859-13 + FontEncoding L7x + # L7x defines \copyright as TextSymbol which leads to an endless loop + # when it is used in other font encodings. + PostBabelPreamble + % restore \coyright definition corrupted by l7xenc.def + \DeclareRobustCommand{\copyright}{% + \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi} + \addto\noextraslithuanian{\latintext} + EndPostBabelPreamble + DateFormats "yyyy 'm.' MMMM d 'd.'|yyyy 'm.' MMMM d 'd.'|yyyy-MM-dd" LangCode lt_LT - AsBabelOptions true End Language lowersorbian GuiName "Lower Sorbian" BabelName lowersorbian PolyglossiaName lsorbian + QuoteStyle german Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy" LangCode dsb_DE End Language magyar GuiName "Hungarian" + HasGuiSupport true BabelName magyar PolyglossiaName magyar + QuoteStyle polish Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "yyyy. MMMM d.|yyyy. MMM d.|yyyy.MM.dd." LangCode hu_HU End +# not yet supported by polyglossia +Language macedonian + GuiName "Macedonian" + BabelName macedonian + QuoteStyle german + Encoding cp1251 + FontEncoding T2A + DateFormats "dd MMMM yyyy|d MMM yyyy|d.M.yyyy" + LangCode mk_MK + Provides textcyrillic +End + +# not supported by babel +Language malayalam + GuiName "Malayalam" + PolyglossiaName malayalam + Encoding utf8 + QuoteStyle english + DateFormats "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy" + LangCode ml_IN +End + # not supported by babel Language marathi GuiName "Marathi" PolyglossiaName marathi Encoding utf8 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy" LangCode mr_IN End @@ -621,8 +1052,10 @@ Language mongolian GuiName "Mongolian" BabelName mongolian Encoding utf8 + FontEncoding T2A + DateFormats "yyyy оны M сарын d|d-M-yyyy|dd-MM-yyyy" LangCode mn_MN - AsBabelOptions true + Provides textcyrillic End Language newzealand @@ -630,23 +1063,39 @@ Language newzealand BabelName newzealand PolyglossiaName english PolyglossiaOpts "variant=newzealand" + QuoteStyle english Encoding iso8859-15 + FontEncoding ASCII + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode en_NZ End Language norsk GuiName "Norwegian (Bokmaal)" + HasGuiSupport true BabelName norsk PolyglossiaName norsk + QuoteStyle swiss Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy" LangCode nb_NO End +# supported by polyglossia but not LyX: +# Language nko +# GuiName "N’Ko" +# PolyglossiaName nko + Language nynorsk GuiName "Norwegian (Nynorsk)" + HasGuiSupport true BabelName nynorsk PolyglossiaName nynorsk + QuoteStyle swiss Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy" LangCode nn_NO End @@ -654,57 +1103,107 @@ End Language occitan GuiName "Occitan" PolyglossiaName occitan + QuoteStyle french Encoding utf8 + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode oc_FR 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 +# FIXME DateFormats +Language piedmontese + GuiName "Piedmontese" + HasGuiSupport true + BabelName piedmontese + PolyglossiaName piedmontese + QuoteStyle french + Encoding iso8859-15 + FontEncoding ASCII + LangCode pms_IT +End + +# FontEncoding: QX required for hyphenation but not set by babel Language polish GuiName "Polish" + HasGuiSupport true BabelName polish PolyglossiaName polish + QuoteStyle polish Encoding iso8859-2 + FontEncoding QX|T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd" LangCode pl_PL End Language portuguese GuiName "Portuguese" + HasGuiSupport true BabelName portuges PolyglossiaName portuges + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|yyyy/MM/dd" LangCode pt_PT End Language romanian GuiName "Romanian" + HasGuiSupport true BabelName romanian PolyglossiaName romanian - Encoding iso8859-2 + QuoteStyle polish + Encoding iso8859-16 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy" LangCode ro_RO End +Language romansh + GuiName "Romansh" + HasGuiSupport true + BabelName romansh + PolyglossiaName romansh + QuoteStyle german + Encoding iso8859-15 + FontEncoding ASCII + DateFormats "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy" + LangCode rm_CH +End + Language russian GuiName "Russian" + HasGuiSupport true BabelName russian PolyglossiaName russian - Encoding koi8 + QuoteStyle russian + Encoding koi8-r + FontEncoding T2A + DateFormats "d MMMM yyyy 'г'.|d MMM yyyy 'г'.|dd.MM.yyyy" LangCode ru_RU + Provides textcyrillic End +# FontEncoding: no hyphenation, but diacritics Language samin GuiName "North Sami" BabelName samin PolyglossiaName samin Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "MMMM d. 'b'. yyyy|MMM d. 'b'. yyyy|d.M.yyyy" LangCode se_NO End @@ -713,39 +1212,66 @@ Language sanskrit GuiName "Sanskrit" PolyglossiaName sanskrit Encoding utf8 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy" LangCode sa_IN End +# Gaidhlig (Scottish Gaelic) +# FontEncoding: no hyphenation, grave accent (à, è, ì, ò, ù) Language scottish GuiName "Scottish" BabelName scottish PolyglossiaName scottish + QuoteStyle english Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode gd_GB End +# Serbian with Cyrillic script. +# Up to Version 3.0 (2019-01-12), input encoding and +# font encoding were set document-wide to "utf8x" and "T2A" respectively +# by "babel-serbianc", overriding LyX settings and leading to errors +# in mulit-lingual documents. Language serbian GuiName "Serbian" - BabelName serbian + HasGuiSupport true + BabelName serbianc PolyglossiaName serbian - Encoding iso8859-5 + PolyglossiaOpts "script=Cyrillic" + # Note: script option is uppercase, even if the polyglossia + # manual states otherwise. + QuoteStyle polish + Encoding utf8 + FontEncoding T2A + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy" LangCode sr_RS 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" + PolyglossiaOpts "script=Latin" + QuoteStyle polish Encoding iso8859-2 - LangCode sr_RS + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy" + LangCode sr_RS-Latin End Language slovak GuiName "Slovak" + HasGuiSupport true BabelName slovak PolyglossiaName slovak + QuoteStyle german Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy" LangCode sk_SK End @@ -753,15 +1279,22 @@ Language slovene GuiName "Slovene" BabelName slovene PolyglossiaName slovenian + QuoteStyle german Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "dd. MMMM yyyy|d. MMM yyyy|d.M.yyyy" LangCode sl_SI End Language spanish GuiName "Spanish" + HasGuiSupport true BabelName spanish PolyglossiaName spanish + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy" LangCode es_ES PostBabelPreamble \addto\shorthandsspanish{\spanishdeactivate{~<>}} @@ -773,7 +1306,10 @@ Language spanish-mexico GuiName "Spanish (Mexico)" BabelName spanish PolyglossiaName spanish + QuoteStyle french Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy" LangCode es_MX PostBabelPreamble \addto\shorthandsspanish{\spanishdeactivate{~<>.}} @@ -782,9 +1318,13 @@ End Language swedish GuiName "Swedish" + HasGuiSupport true BabelName swedish PolyglossiaName swedish + QuoteStyle swedish Encoding iso8859-15 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd" LangCode sv_SE End @@ -793,6 +1333,8 @@ Language syriac GuiName "Syriac" PolyglossiaName syriac Encoding utf8 + RTL true + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode syr_SY End @@ -801,6 +1343,7 @@ Language tamil GuiName "Tamil" PolyglossiaName tamil Encoding utf8 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy" LangCode ta_IN End @@ -809,26 +1352,61 @@ Language telugu GuiName "Telugu" PolyglossiaName telugu Encoding utf8 + DateFormats "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy" LangCode te_IN End +# There is an alternative support with CJK package and Babel name "thaicjk". + Language thai GuiName "Thai" BabelName thai PolyglossiaName thai + QuoteStyle english Encoding tis620-0 + FontEncoding LTH + DateFormats "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy" LangCode th_TH PostBabelPreamble - \usepackage{thswitch} + % Restore \coyright definition corrupted by lthenc.def + \DeclareRobustCommand{\copyright}{% + \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi} + \DeclareTextSymbol{\textcopyright}{LTH}{8} + % Restore catcodes changed by thai.ldf (active characters required for inputenc) + \@tempcnta=161% + \@whilenum\@tempcnta<252\do{% + \catcode\@tempcnta=13 + \advance\@tempcnta\@ne + }% EndPostBabelPreamble + # Fixme: load font package? + # +1 support for font attributes in thai emphasizing etc. + # -1 forces ComputerModern as "non-thai" font + # TODO: set norasi as surrogate font for LTH (substitutefont.sty) + # PostBabelPreamble + # \usepackage{fonts-tlwg} + # EndPostBabelPreamble +End + +# not supported by babel +#FIXME DateFormats +Language tibetan + GuiName "Tibetan" + PolyglossiaName tibetan + Encoding utf8 + LangCode bo_CN End Language turkish GuiName "Turkish" + HasGuiSupport true BabelName turkish PolyglossiaName turkish + QuoteStyle english Encoding iso8859-9 + FontEncoding T1|OT1 LangCode tr_TR + DateFormats "d MMMM yyyy|dd.MMM.yyyy|dd.MM.yyyy" PostBabelPreamble \usepackage{xkeyval} EndPostBabelPreamble @@ -840,24 +1418,34 @@ Language turkmen GuiName "Turkmen" BabelName turkmen PolyglossiaName turkmen + QuoteStyle swiss Encoding utf8 + FontEncoding T1|OT1 + DateFormats "yyyy ý. MMMM d|dd.MM.yyyy ý.|dd.MM.yy ý." LangCode tk_TM - AsBabelOptions true End Language ukrainian GuiName "Ukrainian" + HasGuiSupport true BabelName ukrainian PolyglossiaName ukrainian + QuoteStyle russian Encoding koi8-u + FontEncoding T2A + DateFormats "dd MMMM yyyy|d MM yyyy|dd.MM.yyyy" LangCode uk_UA + Provides textcyrillic End Language uppersorbian GuiName "Upper Sorbian" BabelName uppersorbian PolyglossiaName usorbian + QuoteStyle german Encoding iso8859-2 + FontEncoding T1|OT1 + DateFormats "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy" LangCode hsb_DE End @@ -866,26 +1454,29 @@ Language urdu GuiName "Urdu" PolyglossiaName urdu Encoding utf8 + DateFormats "d MMMM, yyyy|d MMM yyyy|dd/MM/yyyy" + 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 english Encoding utf8 + DateFormats "dd 'tháng' MMMM yyyy|dd-MM-yyyy|dd/MM/yyyy" + FontEncoding T5 LangCode vi_VN - AsBabelOptions true - Requires vietnamese End Language welsh GuiName "Welsh" BabelName welsh PolyglossiaName welsh + QuoteStyle british Encoding iso8859-15 + DateFormats "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy" + FontEncoding T1|OT1 LangCode cy_GB End