]> git.lyx.org Git - lyx.git/blob - lib/languages
Remove profiling.py
[lyx.git] / lib / languages
1 ##########################################################################
2 #
3 # Languages supported by LyX.
4 #
5 # Syntax:
6 #
7 # Language <lyxname>
8 #       GuiName            "<Gui Name>"
9 #       HasGuiSupport      <true|false>
10 #       BabelName          <babelname>
11 #       PolyglossiaName    <polyglossianame>
12 #       PolyglossiaOpts    "<language-specific options>"
13 #       XindyName          <xindyname>
14 #       ActiveChars        <activated characters>
15 #       QuoteStyle         <british|danish|english|french|frenchin|
16 #                           german|polish|russian|swedish|swedishg|swiss|hebrew|plain>
17 #       DateFormats        "<long>|<medium>|<short>"
18 #       Encoding           <encoding>
19 #       FontEncoding       <font encoding|font encoding|...>
20 #       InternalEncoding   <true|false>
21 #       RTL                <true|false>
22 #       WordWrap           <true|false>
23 #       LangCode           <language_code>
24 #       LangVariety        <language_variety>
25 #       PreBabelPreamble
26 #         <extra latex code inserted before babel>
27 #       EndPreBabelPreamble
28 #       PostBabelPreamble
29 #         <extra latex code inserted after babel>
30 #       EndPostBabelPreamble
31 #       Requires           <requirement>
32 #       Provides           <babel language feature>
33 # End
34 #
35 #
36 # NOTES:
37 #
38 # * If we provide Polyglossia languages with different options, the default
39 #   options (such as "variant=american", "spelling=modern") should be
40 #   explicitely spelled out (in order to provide mixing of such variants).
41 # * Omitted elements will be treated as empty (if string) or "false"
42 #   (if boolean).
43 # * When HasGuiSupport is true, the language is candidate to appear in
44 #   the list of possible GUI languages in the Preferences dialog. It
45 #   will actually appear there only if a corresponding .mo file can be
46 #   found among the translations. When several languages correspond to
47 #   the same translation -- like English, English (US) and English
48 #   (UK) -- try to select the entry that is most generic -- here
49 #   English.
50 # * The QuoteStyle arguments correspond to the following styles:
51 #                  PRIMARY              SECONDARY
52 #   - british:    `text'                ``text''        (6_9 -- 66_99)
53 #   - cjk:        corner brackets       white corner br.
54 #   - cjk-angle:  double angle br.      angle br.
55 #   - danish:     >>text<<              >text<          (inward guillemets)
56 #   - english:    ``text''              `text'          (66_99 -- 6_9)
57 #   - french:     <<text>>              ``text''        (outward guillemets -- 66_99)
58 #   - frenchin:   <<text>>              <<text>>        (French Imprimerie Nationale style)
59 #   - german:     ,,text``              ,text`          (99/66 -- 9/6)
60 #   - hebrew:     ''text,,              'text,          (99/99 -- 9/9)
61 #   - hungarian:  ,,text''              >>text<<        (99/99 -- double inward guillemets)
62 #   - polish:     ,,text''              ,text'          (99/99 -- 9/9)
63 #   - russian:    <<text>>              ,,text``        (outward guillemets -- 99/66)
64 #   - swedish:    ''text''              'text'          (99_99 -- 9_9)
65 #   - swedishg:   >>text>>              'text'          (Swedish Guillemets)
66 #   - swiss:      <<text>>              <text>          (outward guillemets)
67 #   - plain:      "text"                'text'          (non-typographical quotes)
68 #   Note that the option names have been selected (rather arbitrarily)
69 #   because the respective styles are common in the respective countries.
70 #   Of course this does not imply any fixed relation to those countries.
71 # * DateFormats lists the localized conventions for three date forms:
72 #   - Long: December 1, 2018
73 #   - Medium: Dec 1, 2018
74 #   - Short: 1/12/2018
75 #   These are separated by | and use the QDate syntax:
76 #   * d the day as number without a leading zero (1 to 31)
77 #   * dd        the day as number with a leading zero (01 to 31)
78 #   * ddd       the abbreviated localized day name (e.g. 'Mon' to 'Sun')
79 #   * dddd      the long localized day name (e.g. 'Monday' to 'Sunday')
80 #   * M the month as number without a leading zero (1 to 12)
81 #   * MM        the month as number with a leading zero (01 to 12)
82 #   * MMM       the abbreviated localized month name (e.g. 'Jan' to 'Dec')
83 #   * MMMM      the long localized month name (e.g. 'January' to 'December')
84 #   * yy        the year as two digit number (00 to 99)
85 #   * yyyy      the year as four digit number
86 # * Encoding is the default encoding used with TeX fonts.
87 #   It is only used if Document > Settings > Language > Encoding
88 #   is set to "Language Default" or "Language Default (no inputenc)"
89 #   and "use non-TeX fonts" is FALSE.
90 #   Encoding "inherit" means: keep encoding of the context (used by
91 #   latex_language).
92 # * FontEncoding is a bar-separated list of font encodings.
93 #   The first value is the required font encoding for correct hyphenation with
94 #   8-bit TeX (http://www.hyphenation.org). Eventually following values may be
95 #   used if the selected font is unavailable in FontEncoding. They provide all
96 #   letters used in the language, but some only as "surrogate pairs" with
97 #   possible problems for hyphenation and drag-and-drop from the generated
98 #   documents. Default: "ASCII".
99 #   * "FontEncoding ASCII" means: "works with any standard text encoding
100 #     (T<n>) as well as OT1".
101 #   * "FontEncoding none" tells LyX that fontenc should not be loaded with
102 #     this language.
103 # * InternalEncoding is used to tell LyX that babel internally sets a
104 #   non-standard font encoding (such as hebrew to LHE or greek to LGR).
105 #   If True, LyX takes care for characters/macros that do not exist in
106 #   some font encodings ("<", ">", "|" and straight quote).
107 #   It is not required for standard encodings like T2A. See bug #5091.
108 # * WordWrap is only used for on-screen display: when is is true (the default), rows are broken
109 #   at word boundary; otherwise, they can be ended at arbitrary position. This
110 #   setting is useful for CJK languages.
111 # * LangCode is also used for spellchecking and thesaurus, where the
112 #   dictionaries are named accordingly. Thus, check this when introducing/
113 #   changing language codes (especially aspell, thesaurus).
114 #   TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
115 #         http://www.rfc-editor.org/rfc/bcp/bcp47.txt
116 #         http://www.w3.org/International/articles/language-tags/
117 #         http://www.iana.org/assignments/language-subtag-registry
118 # * LangVariety is used by the aspell spellchecker to differentiate
119 #   dictionaries for different varieties of a given language (e.g. German
120 #   pre-1998 and post-1998 spelling). The aspell dictionaries are named
121 #   language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
122 #   spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
123 # * Provides lists features that are provided by specific Babel languages,
124 #   but are available globally if this language is used (not only for this
125 #   language. Examples are \textgreek (Greek) and \textcyrillic (Russian).
126 # * ActiveChars provides a string of the characters that are made active
127 #   by the language. We record particularly those characters that have to
128 #   be de-activated in some contexts (such as - or =).
129 # * XindyName holds the value to the (te)xindy -L option. We only give it
130 #   if a corresponding language module exists.
131 #
132 ##########################################################################
133
134 #
135 # LyX-internal languages
136 #
137
138 Language ignore
139         GuiName          "Ignore"
140         BabelName        ignore
141         PolyglossiaName  ignore
142         Encoding         inherit
143         LangCode         ignore
144 End
145
146 Language latex
147         GuiName          "LaTeX"
148         Encoding         inherit
149         LangCode         latex
150 End
151
152 #
153 # Real languages
154 #
155
156 Language afrikaans
157         GuiName          "Afrikaans"
158         BabelName        afrikaans
159         PolyglossiaName  afrikaans
160         QuoteStyle       polish
161         Encoding         iso8859-15
162         FontEncoding     T1|OT1
163         DateFormats      "dd MMMM yyyy|dd MMM yyyy|yyyy/MM/dd"
164         LangCode         af_ZA
165 End
166
167 # FontEncoding: no hyphenation, but uses Ç/ç und Ë/ë
168 Language albanian
169         GuiName          "Albanian"
170         BabelName        albanian
171         # babel-albanian (albanian.ldf) (re-)defines the functions
172         # \sh \ch \th \cth \arsh \arch \arth \arcth \tg \ctg \arctg
173         # as math operators. This clashes with \th == letter thorn
174         # in font encoding T1
175         PostBabelPreamble
176           % fix albanian: restore \th as LATIN LETTER THORN
177           \@ifl@aded{def}{t1enc}{\DeclareTextSymbol{\th}{T1}{254}}{}
178         EndPostBabelPreamble
179         PolyglossiaName  albanian
180         XindyName        albanian
181         QuoteStyle       swiss
182         Encoding         iso8859-2
183         FontEncoding     T1|OT1
184         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
185         LangCode         sq_AL
186 End
187
188 Language american
189         GuiName          "English (USA)"
190         BabelName        american
191         PolyglossiaName  english
192         PolyglossiaOpts  "variant=american"
193         XindyName        english
194         QuoteStyle       english
195         Encoding         iso8859-15
196         FontEncoding     ASCII
197         DateFormats      "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy"
198         LangCode         en_US
199 End
200
201 # not supported by babel
202 Language amharic
203         GuiName          "Amharic"
204         PolyglossiaName  amharic
205         Encoding         utf8
206         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
207         LangCode         am_ET
208 End
209
210 # In Babel, this is supported since v. 1.8a of babel-greek (2013-12-03)
211 # We introduce it with LyX 2.2 to give the support time to settle.
212 Language ancientgreek
213         GuiName          "Greek (ancient)"
214         BabelName        greek
215         PostBabelPreamble
216         \languageattribute{greek}{ancient}
217         EndPostBabelPreamble
218         PolyglossiaName  greek
219         PolyglossiaOpts  "variant=ancient"
220         XindyName        greek
221         QuoteStyle       french
222         Encoding         iso8859-7
223         InternalEncoding true
224         FontEncoding     LGR
225         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
226         LangCode         grc_GR
227         Provides         textgreek
228 End
229
230 # FIXME: dummy babel language for arabic_arabtex to be able
231 # to switch the language the way of the ArabTeX-package
232 Language arabic_arabtex
233         GuiName          "Arabic (ArabTeX)"
234         HasGuiSupport    true
235         BabelName        arabtex
236         QuoteStyle       french
237         Encoding         cp1256
238         DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
239         RTL              true
240         LangCode         ar_SA
241 End
242
243 # polyglossia uses "Arabic" for the lang environment
244 Language arabic_arabi
245         GuiName          "Arabic (Arabi)"
246         BabelName        arabic
247         PolyglossiaName  arabic
248         QuoteStyle       french
249         Encoding         cp1256
250         FontEncoding     LAE
251         DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
252         RTL              true
253         PostBabelPreamble
254           \@ifundefined{if@rl}{}{
255                   % arabic + hyperref redefines \noboundary as local textcommand
256                   \let\orig@noboundary\noboundary
257                   \DeclareTextCommandDefault{\noboundary}{\orig@noboundary}
258                   % work around too simple test for article-like classes in arabicore.sty
259                   \@ifundefined{chapter}{
260                     \def\thesection{\protect\if@rl\protect\I{\number\c@section}%
261                       \protect\else\protect\textLR{\number\c@section}%
262                       \protect\fi}
263                     \def\thesubsection{\protect\if@rl\protect\I{\number\c@subsection.\number\c@section}%
264                       \protect\else\protect\textLR{\number\c@section.\number\c@subsection}%
265                       \protect\fi}
266                     \def\thetable{\protect\if@rl\protect\I{\number\c@table}%
267                       \protect\else\protect\textLR{\number\c@table}%
268                       \protect\fi}
269                     \def\thefigure{\protect\if@rl\protect\I{\number\c@figure}%
270                       \protect\else\protect\textLR{\number\c@figure}%
271                       \protect\fi}
272                   }{}
273           }
274         EndPostBabelPreamble
275         LangCode         ar_SA
276 End
277
278 # not supported by babel
279 Language armenian
280         GuiName          "Armenian"
281         PolyglossiaName  armenian
282         QuoteStyle       swiss
283         Encoding         utf8
284         DateFormats      "d MMMM، yyyy|d MMM، yyyy|d/M/yyyy"
285         LangCode         hy_AM
286 End
287
288 # not supported by babel
289 Language asturian
290         GuiName          "Asturian"
291         PolyglossiaName  asturian
292         QuoteStyle       french
293         Encoding         iso8859-15
294         DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
295         LangCode         ast_ES
296 End
297
298
299 Language australian
300         GuiName          "English (Australia)"
301         BabelName        australian
302         PolyglossiaName  english
303         PolyglossiaOpts  "variant=australian"
304         XindyName        english
305         Encoding         iso8859-15
306         FontEncoding     ASCII
307         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
308         QuoteStyle       english
309         LangCode         en_AU
310 End
311
312 # In polyglossia, this is supported since release 1.33.4 (May 2014)
313 # Due to the variety, we use no country code.
314 Language austrian
315         GuiName          "German (Austria, old spelling)"
316         BabelName        austrian
317         PolyglossiaName  german
318         PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
319         XindyName        german-duden
320         QuoteStyle       german
321         Encoding         iso8859-15
322         FontEncoding     T1|OT1
323         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
324         LangCode         de
325         LangVariety      alt
326 End
327
328 # In polyglossia, this is supported since release 1.33.4 (May 2014)
329 Language naustrian
330         GuiName          "German (Austria)"
331         BabelName        naustrian
332         PolyglossiaName  german
333         PolyglossiaOpts  "variant=austrian,spelling=new,babelshorthands=true"
334         XindyName        german-duden
335         QuoteStyle       german
336         Encoding         iso8859-15
337         FontEncoding     T1|OT1
338         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
339         LangCode         de_AT
340 End
341
342 Language azerbaijani
343         GuiName          "Azerbaijani"
344         BabelName        azerbaijani
345         QuoteStyle       russian
346         Encoding         iso8859-9
347         FontEncoding     T2A,T1
348         DateFormats      "d MMMM yyyy|dd.MMM.yyyy|dd.MM.yyyy"
349         LangCode         az_AZ
350         Requires         textschwa
351         # use \cyrschwa in T1, allow hyphenation in remainder of word
352         PostBabelPreamble
353           \DeclareTextCommand{\textschwa}{T1}{\cyrschwa\bbl@allowhyphens}
354           \DeclareTextCommand{\textSchwa}{T1}{\CYRSCHWA\bbl@allowhyphens}
355         EndPostBabelPreamble
356 End
357
358 Language bahasa
359         GuiName          "Indonesian"
360         HasGuiSupport    true
361         BabelName        bahasa
362         PolyglossiaName  bahasai
363         QuoteStyle       english
364         Encoding         iso8859-15
365         FontEncoding     ASCII
366         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
367         LangCode         id_ID
368 End
369
370 Language bahasam
371         GuiName          "Malay"
372         BabelName        bahasam
373         PolyglossiaName  bahasam
374         QuoteStyle       english
375         Encoding         iso8859-15
376         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
377         LangCode         ms_MY
378 End
379
380 Language basque
381         GuiName          "Basque"
382         HasGuiSupport    true
383         BabelName        basque
384         PolyglossiaName  basque
385         QuoteStyle       swiss
386         Encoding         iso8859-15
387         FontEncoding     T1|OT1
388         DateFormats      "yyyy MMMM dd|yyyy MMM dd|yyyy/MM/dd"
389         LangCode         eu_ES
390         PostBabelPreamble
391         \addto\extrasbasque{\bbl@deactivate{~}}
392         EndPostBabelPreamble
393 End
394
395 # Up to 2018-08-25 (babel-belarusian 1.4), the babel option is "belarusianb"
396 # but the language name "belarusian" (without trailing "b").
397 Language belarusian
398         GuiName          "Belarusian"
399         BabelName        belarusian
400         PolyglossiaName  belarusian
401         XindyName        belarusian
402         QuoteStyle       french
403         Encoding         cp1251
404         FontEncoding     T2A
405         DateFormats      "dd MMMM yyyy|d MMM yyyy|d.M.yyyy"
406         LangCode         be_BY
407 End
408
409 # supported by polyglossia but not babel:
410 Language bengali
411         GuiName          "Bengali"
412         PolyglossiaName  bengali
413         QuoteStyle       english
414         Encoding         utf8
415         LangCode         be_IN
416 End
417
418
419 # The (rarely used) Cyrillic script is not supported (try serbian).
420 Language bosnian
421         GuiName          "Bosnian"
422         BabelName        bosnian
423         PolyglossiaName  bosnian
424         QuoteStyle       polish
425         Encoding         iso8859-2
426         FontEncoding     T1|OT1
427         DateFormats      "d. MMMM yyyy|d. MMM yyyy|yyyy-MM-dd"
428         LangCode         bs_BA
429 End
430
431 Language brazilian
432         GuiName          "Portuguese (Brazil)"
433         HasGuiSupport    true
434         BabelName        brazil
435         PolyglossiaName  brazil
436         XindyName        portuguese
437         QuoteStyle       english
438         Encoding         iso8859-15
439         FontEncoding     T1|OT1
440         DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy"
441         LangCode         pt_BR
442 End
443
444 # FontEncoding: # ? no hyphenation, but uses ñ
445 Language breton
446         GuiName          "Breton"
447         BabelName        breton
448         PolyglossiaName  breton
449         QuoteStyle       french
450         Encoding         iso8859-15
451         #FontEncoding    T1
452         DateFormats      "dd MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
453         LangCode         br_FR
454 End
455
456 Language british
457         GuiName          "English (UK)"
458         BabelName        british
459         PolyglossiaName  english
460         PolyglossiaOpts  "variant=british"
461         XindyName        english
462         QuoteStyle       british
463         Encoding         iso8859-15
464         FontEncoding     ASCII
465         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
466         LangCode         en_GB
467 End
468
469 Language bulgarian
470         GuiName          "Bulgarian"
471         HasGuiSupport    true
472         BabelName        bulgarian
473         PolyglossiaName  bulgarian
474         XindyName        bulgarian
475         QuoteStyle       german
476         Encoding         cp1251
477         FontEncoding     T2A
478         DateFormats      "dd MMMM yyyy|d MMM yyyy|yyyy-M-d"
479         LangCode         bg_BG
480         Provides         textcyrillic
481 End
482
483 Language canadian
484         GuiName          "English (Canada)"
485         BabelName        canadian
486         PolyglossiaName  english
487         PolyglossiaOpts  "variant=canadian"
488         XindyName        english
489         QuoteStyle       english
490         Encoding         iso8859-15
491         FontEncoding     ASCII
492         DateFormats      "MMMM d, yyyy|d MMM yyyy|yyyy-MM-dd"
493         LangCode         en_CA
494 End
495
496 Language canadien
497         GuiName          "French (Canada)"
498         BabelName        acadian
499         PolyglossiaName  french
500         PolyglossiaOpts  "variant=canadian"
501         ActiveChars      ;!?:
502         XindyName        french
503         QuoteStyle       french
504         Encoding         iso8859-15
505         FontEncoding     T1|OT1
506         DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
507         LangCode         fr_CA
508 End
509
510 Language catalan
511         GuiName          "Catalan"
512         HasGuiSupport    true
513         BabelName        catalan
514         PolyglossiaName  catalan
515         PolyglossiaOpts  "babelshorthands=true"
516         QuoteStyle       french
517         Encoding         iso8859-15
518         FontEncoding     T1|OT1
519         DateFormats      "d / MMMM / yyyy|d / MMM / yyyy|dd/MM/yyyy"
520         LangCode         ca_ES
521 End
522
523 # uses CJK package
524 Language chinese-simplified
525         GuiName          "Chinese (simplified)"
526         HasGuiSupport    true
527         Encoding         euc-cn
528         QuoteStyle       english
529         WordWrap         false
530         LangCode         zh_CN
531         DateFormats      "yyyy年M月d日|yyyy-M-d|yy-M-d"
532         Requires         CJK
533 End
534
535 # uses CJK package
536 Language chinese-traditional
537         GuiName         "Chinese (traditional)"
538         HasGuiSupport    true
539         QuoteStyle       cjk
540         Encoding         utf8-cjk
541         WordWrap         false
542         LangCode         zh_TW
543         DateFormats      "yyyy年M月d日|yyyy年M月d日|yy年M月d日"
544         Requires         CJK
545 End
546
547 # supported by polyglossia but not LyX:
548 Language churchslavonic
549         GuiName         "Church Slavonic"
550         PolyglossiaName  churchslavonic
551         QuoteStyle       swiss
552         Encoding         utf8
553         FontEncoding     T2A
554         DateFormats      "d MMMM yyyy 'л'.|d MMM yyyy 'л'.|dd.MM.yyyy"
555         LangCode         cu
556         Provides         textcyrillic
557 End
558
559 # not supported by babel
560 # FIXME DateFormats
561 Language coptic
562         GuiName          "Coptic"
563         PolyglossiaName  coptic
564         Encoding         utf8
565         LangCode         cop_EG
566 End
567
568 Language croatian
569         GuiName          "Croatian"
570         BabelName        croatian
571         PolyglossiaName  croatian
572         XindyName        croatian
573         QuoteStyle       polish
574         Encoding         iso8859-2
575         FontEncoding     T1|OT1
576         DateFormats      "d. MMMM yyyy.|d. MMM. yyyy.|dd.MM.yyyy."
577         LangCode         hr_HR
578 End
579
580 Language czech
581         GuiName          "Czech"
582         HasGuiSupport    true
583         BabelName        czech
584         PolyglossiaName  czech
585         XindyName        czech
586         QuoteStyle       german
587         ActiveChars      -
588         Encoding         iso8859-2
589         FontEncoding     T1|OT1
590         DateFormats      "d. MMMM yyyy|d. MMM. yyyy|d.M.yyyy"
591         LangCode         cs_CZ
592 End
593
594 Language danish
595         GuiName          "Danish"
596         HasGuiSupport    true
597         BabelName        danish
598         PolyglossiaName  danish
599         XindyName        danish
600         QuoteStyle       danish
601         Encoding         iso8859-15
602         FontEncoding     T1|OT1
603         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy"
604         LangCode         da_DK
605 End
606
607 # not supported by babel
608 Language divehi
609         GuiName          "Divehi (Maldivian)"
610         PolyglossiaName  divehi
611         Encoding         utf8
612         DateFormats      "yyyy MMMM dd|yyyy MMM dd|dd/MM/yyyy"
613         LangCode         dv_MV
614 End
615
616 Language dutch
617         GuiName          "Dutch"
618         HasGuiSupport    true
619         BabelName        dutch
620         PolyglossiaName  dutch
621         PolyglossiaOpts  "babelshorthands=true"
622         XindyName        dutch
623         QuoteStyle       polish
624         Encoding         iso8859-15
625         FontEncoding     T1|OT1
626         DateFormats      "d MMMM yyyy|d MMM yyyy|d-M-yyyy"
627         LangCode         nl_NL
628 End
629
630 Language english
631         GuiName          "English"
632         HasGuiSupport    true
633         BabelName        english
634         PolyglossiaName  english
635         PolyglossiaOpts  "variant=american"
636         XindyName        english
637         QuoteStyle       english
638         DateFormats      "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy"
639         Encoding         iso8859-15
640         FontEncoding     ASCII
641         LangCode         en_US
642 End
643
644 # Esperanto has no country code because it is an auxiliary language.
645 # We therefore use the name of its hunspell dictionary.
646 Language esperanto
647         GuiName          "Esperanto"
648         BabelName        esperanto
649         PolyglossiaName  esperanto
650         XindyName        esperanto
651         QuoteStyle       english
652         Encoding         iso8859-3
653         FontEncoding     IL3|T1|OT1
654         DateFormats      "'la' d 'de' MMMM yyyy|'la' d 'de' MMM yyyy|MM/dd/yyyy"
655         LangCode         eo_EO
656 End
657
658 Language estonian
659         GuiName          "Estonian"
660         BabelName        estonian
661         PolyglossiaName  estonian
662         XindyName        estonian
663         QuoteStyle       german
664         Encoding         iso8859-15
665         FontEncoding     T1|OT1
666         DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
667         LangCode         et_EE
668         PostBabelPreamble
669         \addto\extrasestonian{\bbl@deactivate{~}}
670         EndPostBabelPreamble
671 End
672
673 # the preamble definitions are only used due to bugs in the
674 # arabi-package -- remove them if they become unnecessary!
675 Language farsi
676         GuiName          "Farsi"
677         BabelName        farsi
678         PolyglossiaName  farsi
679         XindyName        persian
680         Encoding         utf8
681         FontEncoding     LAE,LFE
682         DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy/M/d"
683         RTL              true
684         LangCode         fa_IR
685         QuoteStyle       english
686         PostBabelPreamble
687         \DeclareTextSymbol{\guillemotright}{LFE}{62}
688         \DeclareTextSymbol{\guillemotleft}{LFE}{60}
689         EndPostBabelPreamble
690 End
691
692 Language finnish
693         GuiName          "Finnish"
694         HasGuiSupport    true
695         BabelName        finnish
696         PolyglossiaName  finnish
697         XindyName        finnish
698         QuoteStyle       swedish
699         Encoding         iso8859-15
700         FontEncoding     T1|OT1
701         DateFormats      "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
702         LangCode         fi_FI
703 End
704
705 Language french
706         GuiName          "French"
707         HasGuiSupport    true
708         BabelName        french
709         ActiveChars      ;!?:
710         PolyglossiaName  french
711         XindyName        french
712         QuoteStyle       french
713         Encoding         iso8859-15
714         FontEncoding     T1|OT1
715         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
716         LangCode         fr_FR
717 End
718
719 Language friulan
720         GuiName          "Friulian"
721         HasGuiSupport    true
722         BabelName        friulan
723         PolyglossiaName  friulan
724         QuoteStyle       french
725         Encoding         iso8859-15
726         FontEncoding     T1|OT1
727         DateFormats      "d 'di' MMMM 'dal' yyyy|d 'di' MMM 'dal' yyyy|dd/MM/yyyy"
728         LangCode         fur_IT
729 End
730
731 Language galician
732         GuiName          "Galician"
733         HasGuiSupport    true
734         BabelName        galician
735         PolyglossiaName  galician
736         QuoteStyle       french
737         Encoding         iso8859-15
738         FontEncoding     T1|OT1
739         DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy"
740         LangCode         gl_ES
741         PostBabelPreamble
742         \addto\shorthandsgalician{\galiciandeactivate{~}}
743         EndPostBabelPreamble
744 End
745
746 # FIXME DateFormats
747 Language georgian
748         GuiName          "Georgian"
749         BabelName        georgian
750         PolyglossiaName  georgian
751         XindyName        georgian
752         QuoteStyle       german
753         Encoding         utf8
754         FontEncoding     T8M
755         LangCode         ka_GE
756 End
757
758 # german does not use a country code (due to the variety)
759 Language german
760         GuiName          "German (old spelling)"
761         BabelName        german
762         PolyglossiaName  german
763         PolyglossiaOpts  "variant=german,spelling=old,babelshorthands=true"
764         XindyName        german-duden
765         QuoteStyle       german
766         Encoding         iso8859-15
767         FontEncoding     T1|OT1
768         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
769         LangCode         de
770         LangVariety      alt
771 End
772
773 Language ngerman
774         GuiName          "German"
775         HasGuiSupport    true
776         BabelName        ngerman
777         PolyglossiaName  german
778         PolyglossiaOpts  "variant=german,spelling=new,babelshorthands=true"
779         XindyName        german-duden
780         QuoteStyle       german
781         Encoding         iso8859-15
782         FontEncoding     T1|OT1
783         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
784         LangCode         de_DE
785 End
786
787 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
788 # We introduce it with LyX 2.2 to give the support time to settle.
789 # In polyglossia, this is supported since release 1.33.6 (May 2015)
790 # We introduce it with LyX 2.3 to give the support time to settle.
791 Language german-ch
792         GuiName          "German (Switzerland)"
793         BabelName        nswissgerman
794         PolyglossiaName  german
795         PolyglossiaOpts  "variant=swiss,spelling=new,babelshorthands=true"
796         XindyName        german-duden
797         QuoteStyle       swiss
798         Encoding         iso8859-15
799         FontEncoding     T1|OT1
800         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
801         LangCode         de_CH
802 End
803
804 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
805 # In polyglossia, this is supported since release 1.33.6 (May 2015)
806 # We introduce it with LyX 2.3 to give the support time to settle.
807 Language german-ch-old
808         GuiName          "German (Switzerland, old spelling)"
809         BabelName        swissgerman
810         PolyglossiaName  german
811         PolyglossiaOpts  "variant=swiss,spelling=old,babelshorthands=true"
812         XindyName        german-duden
813         QuoteStyle       swiss
814         Encoding         iso8859-15
815         FontEncoding     T1|OT1
816         DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
817         LangCode         de_CH
818 End
819
820 Language greek
821         GuiName          "Greek"
822         HasGuiSupport    true
823         BabelName        greek
824         PolyglossiaName  greek
825         PolyglossiaOpts  "variant=monotonic"
826         XindyName        greek
827         QuoteStyle       french
828         Encoding         iso8859-7
829         InternalEncoding true
830         FontEncoding     LGR
831         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
832         LangCode         el_GR
833         Provides         textgreek
834 End
835
836 Language polutonikogreek
837         GuiName          "Greek (polytonic)"
838         BabelName        polutonikogreek
839         PolyglossiaName  greek
840         PolyglossiaOpts  "variant=polytonic"
841         XindyName        greek
842         QuoteStyle       french
843         Encoding         iso8859-7
844         InternalEncoding true
845         FontEncoding     LGR
846         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
847         LangCode         el_GR
848         Provides         textgreek
849 End
850
851 Language hebrew
852         GuiName          "Hebrew"
853         HasGuiSupport    true
854         BabelName        hebrew
855         PolyglossiaName  hebrew
856         XindyName        hebrew
857         Encoding         cp1255
858         QuoteStyle       hebrew
859         InternalEncoding true
860         # babel-hebrew expects the encoding for *other* languages last:
861         FontEncoding    HE8,T1|LHE,T1
862         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
863         RTL              true
864         LangCode         he_IL
865 End
866
867 # not supported by babel
868 Language hindi
869         GuiName          "Hindi"
870         PolyglossiaName  hindi
871         Encoding         utf8
872         DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd-MM-yyyy"
873         LangCode         hi_IN
874 End
875
876 # Currently not supported (file format change!)
877 # "hungarian" is a synonym for the "magyar" babel language option
878 # "hungarian" might be used for special purposes,
879 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
880 #Language hungarian
881 #       GuiName         "Hungarian"
882 #       BabelName       hungarian
883 #       Encoding        iso8859-2
884 #       LangCode        hu_HU
885 #       QuoteStyle      polish
886 #End
887
888 # FontEncoding: OT1 misses ð and Þ
889 Language icelandic
890         GuiName          "Icelandic"
891         BabelName        icelandic
892         PolyglossiaName  icelandic
893         XindyName        icelandic
894         QuoteStyle       german
895         Encoding         iso8859-15
896         FontEncoding     T1
897         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
898         LangCode         is_IS
899 End
900
901 # Interlingua has no official country code because it is an auxiliary
902 # language. We use the name of its hunspell dictionary.
903 Language interlingua
904         GuiName          "Interlingua"
905         HasGuiSupport    true
906         BabelName        interlingua
907         PolyglossiaName  interlingua
908         Encoding         iso8859-15
909         FontEncoding     ASCII
910         LangCode         ia_IA
911         DateFormats      "'le' d 'de' MMMM yyyy|'le' d 'de' MMM yyyy|yyyy-mm-dd"
912         QuoteStyle       english
913 End
914
915 Language irish
916         GuiName          "Irish"
917         BabelName        irish
918         PolyglossiaName  irish
919         QuoteStyle       english
920         Encoding         iso8859-15
921         FontEncoding     T1|OT1
922         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy"
923         LangCode         ga_IE
924 End
925
926 Language italian
927         GuiName          "Italian"
928         HasGuiSupport    true
929         BabelName        italian
930         PolyglossiaName  italian
931         XindyName        italian
932         QuoteStyle       french
933         Encoding         iso8859-15
934         FontEncoding     ASCII
935         DateFormats      "dd MMMM yyyy|dd/MMM/yyyy|dd/MM/yyyy"
936         LangCode         it_IT
937 End
938
939 # Since 2016-12-18, babel-japanese works with non-TeX fonts (Xe/LuaTeX), too
940 # (use with "Japanese (bxjs)" or standard document classes)
941 Language japanese
942         GuiName          "Japanese"
943         HasGuiSupport    true
944         BabelName        japanese
945         Encoding         jis-platex
946         WordWrap         false
947         LangCode         ja_JP
948         Requires         japanese
949         FontEncoding     ASCII
950         DateFormats      "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd"
951         QuoteStyle       cjk
952 End
953
954 # uses CJK package
955 Language japanese-cjk
956         GuiName         "Japanese (CJK)"
957         Encoding        euc-jp
958         DateFormats     "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd"
959         WordWrap        false
960         LangCode        ja_JP
961         Requires        CJK
962         QuoteStyle      cjk
963 End
964
965 # not supported by babel
966 Language kannada
967         GuiName          "Kannada"
968         PolyglossiaName  kannada
969         Encoding         utf8
970         DateFormats      "dd MMMM yyyy|dd MMMM yyyy|dd-MM-yyyy"
971         LangCode         kn_IN
972 End
973
974 # not yet supported by polyglossia
975 # not supported by babel
976 Language kazakh
977         GuiName          "Kazakh"
978         Encoding         ascii
979         # FontEncoding   T2A # not set (no Babel support)
980         DateFormats      "dd MMMM yyyy|dd MMMM yyyy|yyyy-dd-MM"
981         LangCode         kk_KZ
982 End
983
984 # not supported by babel
985 Language khmer
986         GuiName          "Khmer"
987         PolyglossiaName  khmer
988         Encoding         utf8
989         DateFormats      "d MMMM yyyy|d MMMM yyyy|dd/MM/yyyy"
990         LangCode         km_KH
991 End
992
993 Language korean
994         GuiName         "Korean"
995         PolyglossiaName korean
996         XindyName       korean
997         Encoding        euc-kr
998         QuoteStyle      cjkangle
999         DateFormats     "yyyy년 M월 d일|yyyy. M. d.|yy. M. d."
1000         WordWrap        false
1001         LangCode        ko_KR
1002         Requires        CJK
1003 End
1004
1005 # Language korean-kotex
1006 #       GuiName         "Korean (koTeX)"
1007 #       Encoding        utf8
1008 #       QuoteStyle      cjkangle
1009 #       DateFormats     "yyyy년 M월 d일|yyyy. M. d.|yy. M. d."
1010 #       LangCode        ko_KR
1011 #       Requires        kotex
1012 # End
1013
1014 Language kurmanji
1015         GuiName          "Kurdish (Kurmanji)"
1016         BabelName        kurmanji
1017         PolyglossiaName  kurdish
1018         XindyName        kurdish-bedirxan
1019         PolyglossiaOpts  "variant=kurmanji"
1020         Encoding         utf8
1021         FontEncoding     T1|OT1
1022         DateFormats      "d. MMMM yyyy|d. M. yyyy|yyyy-MM-dd"
1023         LangCode         kmr
1024 End
1025
1026 # not supported by babel
1027 Language lao
1028         GuiName          "Lao"
1029         PolyglossiaName  lao
1030         Encoding         utf8
1031         DateFormats      "dd MMMM yyyy|dd MMMM yyyy|dd/MM/yyyy"
1032         LangCode         lo_LA
1033 End
1034
1035 # There is no country code for Latin because it is a dead language.
1036 # We therefore the name of its hunspell dictionary.
1037 # FIXME DateFormats
1038 Language latin
1039         GuiName          "Latin"
1040         BabelName        latin
1041         PolyglossiaName  latin
1042         XindyName        latin
1043         ActiveChars      ^=
1044         Encoding         iso8859-15
1045         FontEncoding     T1|OT1
1046         LangCode         la_LA
1047 End
1048
1049 # latvian must be loaded locally with babel options,
1050 # not globally via class options
1051 # FontEncoding: L7x required for hyphenation but not set by Babel
1052 Language latvian
1053         GuiName          "Latvian"
1054         BabelName        latvian
1055         PolyglossiaName  latvian
1056         XindyName        latvian
1057         QuoteStyle       german
1058         Encoding         iso8859-4
1059         FontEncoding     L7x|T1|OT1
1060         DateFormats      "yyyy. 'gada' d. MMMM|yyyy. 'gada' d. MMM|dd.MM.yyyy"
1061         LangCode         lv_LV
1062 End
1063
1064 # FontEncoding: L7x required for hyphenation but no longer set by Babel
1065 # (since 2017-12-06)
1066 Language lithuanian
1067         GuiName          "Lithuanian"
1068         BabelName        lithuanian
1069         PolyglossiaName  lithuanian
1070         XindyName        lithuanian
1071         QuoteStyle       german
1072         Encoding         iso8859-13
1073         FontEncoding     L7x
1074         # L7x defines \copyright as TextSymbol which leads to an endless loop
1075         # when it is used in other font encodings.
1076         PostBabelPreamble
1077           \@ifl@aded{def}{l7xenc}{
1078             % restore corrupted \coyright definition
1079             \DeclareRobustCommand{\copyright}{%
1080               \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi
1081             }
1082             % Switch to L7x and back
1083             \addto\extraslithuanian{
1084               \let\bbl@lithuanian@cfencoding\cf@encoding
1085               \fontencoding{L7x}\selectfont
1086               \def\encodingdefault{L7x}
1087             }
1088             \addto\noextraslithuanian{
1089               \def\encodingdefault{\bbl@lithuanian@cfencoding}
1090               \fontencoding{\encodingdefault}\selectfont
1091             }  
1092           }{}
1093         EndPostBabelPreamble
1094         DateFormats      "yyyy 'm.' MMMM d 'd.'|yyyy 'm.' MMMM d 'd.'|yyyy-MM-dd"
1095         LangCode         lt_LT
1096 End
1097
1098 Language lowersorbian
1099         GuiName          "Lower Sorbian"
1100         BabelName        lowersorbian
1101         PolyglossiaName  lsorbian
1102         XindyName        lower-sorbian
1103         QuoteStyle       german
1104         Encoding         iso8859-2
1105         FontEncoding     T1|OT1
1106         DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
1107         LangCode         dsb_DE
1108 End
1109
1110 Language magyar
1111         GuiName          "Hungarian"
1112         HasGuiSupport    true
1113         BabelName        magyar
1114         PolyglossiaName  magyar
1115         XindyName        hungarian
1116         QuoteStyle       hungarian
1117         Encoding         iso8859-2
1118         FontEncoding     T1|OT1
1119         DateFormats      "yyyy. MMMM d.|yyyy. MMM d.|yyyy.MM.dd."
1120         LangCode         hu_HU
1121 End
1122
1123 Language macedonian
1124         GuiName          "Macedonian"
1125         BabelName        macedonian
1126         PolyglossiaName  macedonian
1127         XindyName        macedonian
1128         QuoteStyle       german
1129         Encoding         cp1251
1130         FontEncoding     T2A
1131         DateFormats      "dd MMMM yyyy|d MMM yyyy|d.M.yyyy"
1132         LangCode         mk_MK
1133         Provides         textcyrillic
1134 End
1135
1136 # not supported by babel
1137 Language malayalam
1138         GuiName          "Malayalam"
1139         PolyglossiaName  malayalam
1140         Encoding         utf8
1141         QuoteStyle       english
1142         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
1143         LangCode         ml_IN
1144 End
1145
1146 # not supported by babel
1147 Language marathi
1148         GuiName          "Marathi"
1149         PolyglossiaName  marathi
1150         Encoding         utf8
1151         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
1152         LangCode         mr_IN
1153 End
1154
1155 # mongolian must be loaded locally with babel options,
1156 # not globally via class options
1157 Language mongolian
1158         GuiName          "Mongolian"
1159         BabelName        mongolian
1160         PolyglossiaName  mongolian
1161         XindyName        mongolian
1162         Encoding         utf8
1163         FontEncoding     T2A
1164         DateFormats      "yyyy оны M сарын d|d-M-yyyy|dd-MM-yyyy"
1165         LangCode         mn_MN
1166         Provides         textcyrillic
1167 End
1168
1169 Language newzealand
1170         GuiName          "English (New Zealand)"
1171         BabelName        newzealand
1172         PolyglossiaName  english
1173         PolyglossiaOpts  "variant=newzealand"
1174         XindyName        english
1175         QuoteStyle       english
1176         Encoding         iso8859-15
1177         FontEncoding     ASCII
1178         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1179         LangCode         en_NZ
1180 End
1181
1182 Language norsk
1183         GuiName          "Norwegian (Bokmaal)"
1184         HasGuiSupport    true
1185         BabelName        norsk
1186         PolyglossiaName  norsk
1187         XindyName        norwegian
1188         QuoteStyle       swiss
1189         Encoding         iso8859-15
1190         FontEncoding     T1|OT1
1191         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd./MM./yyyy"
1192         LangCode         nb_NO
1193 End
1194
1195 # supported by polyglossia but not LyX:
1196 # Language nko
1197 #       GuiName          "N’Ko"
1198 #       PolyglossiaName  nko
1199 #       QuoteStyle       swiss
1200 #       Encoding         utf8
1201 #       FIXME: DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
1202 #       gloss-nko.ldf says:
1203 #       In n'ko, this is an example of date :
1204 #         ߂߀߁߃ ߞߏ߲ߞߏߜߍ ߕߟߋ߬ ߁߈ (RTL)
1205 #         ( 18 February 2013 )
1206 #       The word "ߕߟߋ߬" is mandatory between month name and day number.
1207 #       RTL              true
1208 #       LangCode         nqo
1209 # End
1210
1211 Language nynorsk
1212         GuiName          "Norwegian (Nynorsk)"
1213         HasGuiSupport    true
1214         BabelName        nynorsk
1215         PolyglossiaName  nynorsk
1216         XindyName        norwegian
1217         QuoteStyle       swiss
1218         Encoding         iso8859-15
1219         FontEncoding     T1|OT1
1220         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
1221         LangCode         nn_NO
1222 End
1223
1224 # not supported by babel
1225 Language occitan
1226         GuiName          "Occitan"
1227         PolyglossiaName  occitan
1228         QuoteStyle       french
1229         Encoding         utf8
1230         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1231         LangCode         oc_FR
1232 End
1233
1234 # Currently not supported (file format change!)
1235 # Russian orthography from the Petrine orthographic reforms of
1236 # 1708 to the 1917 orthographic reform
1237 Language oldrussian
1238         GuiName          "Russian (Petrine orthography)"
1239         PolyglossiaName  russian
1240         PolyglossiaOpts  "spelling=old"
1241         XindyName        russian
1242         QuoteStyle       russian
1243         LangCode         ru_petr1708
1244 End
1245
1246 # FIXME DateFormats
1247 Language piedmontese
1248         GuiName          "Piedmontese"
1249         HasGuiSupport    true
1250         BabelName        piedmontese
1251         PolyglossiaName  piedmontese
1252         QuoteStyle       french
1253         Encoding         iso8859-15
1254         FontEncoding     ASCII
1255         LangCode         pms_IT
1256 End
1257
1258 # FontEncoding: QX required for hyphenation but not set by babel
1259 Language polish
1260         GuiName          "Polish"
1261         HasGuiSupport    true
1262         BabelName        polish
1263         PolyglossiaName  polish
1264         XindyName        polish
1265         QuoteStyle       polish
1266         Encoding         iso8859-2
1267         FontEncoding     QX|T1|OT1
1268         DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
1269         LangCode         pl_PL
1270 End
1271
1272 Language portuguese
1273         GuiName          "Portuguese"
1274         HasGuiSupport    true
1275         BabelName        portuges
1276         PolyglossiaName  portuges
1277         XindyName        portuguese
1278         QuoteStyle       french
1279         Encoding         iso8859-15
1280         FontEncoding     T1|OT1
1281         DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|yyyy/MM/dd"
1282         LangCode         pt_PT
1283 End
1284
1285 Language romanian
1286         GuiName          "Romanian"
1287         HasGuiSupport    true
1288         BabelName        romanian
1289         PolyglossiaName  romanian
1290         XindyName        romanian
1291         QuoteStyle       polish
1292         Encoding         iso8859-16
1293         FontEncoding     T1|OT1
1294         DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
1295         LangCode         ro_RO
1296 End
1297
1298 Language romansh
1299         GuiName          "Romansh"
1300         HasGuiSupport    true
1301         BabelName        romansh
1302         PolyglossiaName  romansh
1303         QuoteStyle       german
1304         Encoding         iso8859-15
1305         FontEncoding     ASCII
1306         DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
1307         LangCode         rm_CH
1308 End
1309
1310 Language russian
1311         GuiName          "Russian"
1312         HasGuiSupport    true
1313         BabelName        russian
1314         PolyglossiaName  russian
1315         PolyglossiaOpts  "spelling=modern"
1316         XindyName        russian
1317         QuoteStyle       russian
1318         Encoding         koi8-r
1319         FontEncoding     T2A
1320         DateFormats      "d MMMM yyyy 'г'.|d MMM yyyy 'г'.|dd.MM.yyyy"
1321         LangCode         ru_RU
1322         Provides         textcyrillic
1323 End
1324
1325 # FontEncoding: no hyphenation, but diacritics
1326 Language samin
1327         GuiName          "North Sami"
1328         BabelName        samin
1329         PolyglossiaName  samin
1330         Encoding         iso8859-15
1331         FontEncoding     T1|OT1
1332         DateFormats      "MMMM d. 'b'. yyyy|MMM d. 'b'. yyyy|d.M.yyyy"
1333         LangCode         se_NO
1334 End
1335
1336 # not supported by babel
1337 Language sanskrit
1338         GuiName          "Sanskrit"
1339         PolyglossiaName  sanskrit
1340         Encoding         utf8
1341         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
1342         LangCode         sa_IN
1343 End
1344
1345 # Gaidhlig (Scottish Gaelic)
1346 # FontEncoding: no hyphenation, grave accent (à, è, ì, ò, ù)
1347 Language scottish
1348         GuiName          "Scottish"
1349         BabelName        scottish
1350         PolyglossiaName  scottish
1351         QuoteStyle       english
1352         Encoding         iso8859-15
1353         FontEncoding     T1|OT1
1354         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1355         LangCode         gd_GB
1356 End
1357
1358 # Serbian with Cyrillic script.
1359 # Up to Version 3.0 (2019-01-12), input encoding and
1360 # font encoding were set document-wide to "utf8x" and "T2A" respectively
1361 # by "babel-serbianc", overriding LyX settings and leading to errors
1362 # in mulit-lingual documents.
1363 Language serbian
1364         GuiName          "Serbian"
1365         HasGuiSupport    true
1366         BabelName        serbianc
1367         PolyglossiaName  serbian
1368         PolyglossiaOpts  "script=Cyrillic"
1369         XindyName        serbian
1370         # Note: script option is uppercase, even if the polyglossia
1371         #       manual states otherwise.
1372         QuoteStyle       polish
1373         Encoding         utf8
1374         FontEncoding     T2A
1375         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
1376         LangCode         sr_RS
1377 End
1378
1379 # We use croatian for Latin Serbian index ordering
1380 Language serbian-latin
1381         GuiName          "Serbian (Latin)"
1382         BabelName        serbian
1383         PolyglossiaName  serbian
1384         PolyglossiaOpts  "script=Latin"
1385         XindyName        croatian
1386         QuoteStyle       polish
1387         Encoding         iso8859-2
1388         FontEncoding     T1|OT1
1389         DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
1390         LangCode         sr_RS-Latin
1391 End
1392
1393 Language slovak
1394         GuiName          "Slovak"
1395         HasGuiSupport    true
1396         BabelName        slovak
1397         PolyglossiaName  slovak
1398         XindyName        slovak-large
1399         QuoteStyle       german
1400         ActiveChars      -^
1401         Encoding         iso8859-2
1402         FontEncoding     T1|OT1
1403         DateFormats      "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
1404         LangCode         sk_SK
1405 End
1406
1407 Language slovene
1408         GuiName          "Slovene"
1409         BabelName        slovene
1410         PolyglossiaName  slovenian
1411         XindyName        slovenian
1412         QuoteStyle       german
1413         Encoding         iso8859-2
1414         FontEncoding     T1|OT1
1415         DateFormats      "dd. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
1416         LangCode         sl_SI
1417 End
1418
1419 Language spanish
1420         GuiName          "Spanish"
1421         HasGuiSupport    true
1422         BabelName        spanish
1423         PolyglossiaName  spanish
1424         XindyName        spanish-modern
1425         QuoteStyle       french
1426         Encoding         iso8859-15
1427         FontEncoding     T1|OT1
1428         DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
1429         LangCode         es_ES
1430         PostBabelPreamble
1431         \addto\shorthandsspanish{\spanishdeactivate{~<>}}
1432         \deactivatequoting
1433         EndPostBabelPreamble
1434 End
1435
1436 # there are no spanish shorthands in polyglossia
1437 Language spanish-mexico
1438         GuiName          "Spanish (Mexico)"
1439         BabelName        spanish
1440         PolyglossiaName  spanish
1441         XindyName        spanish-modern
1442         QuoteStyle       french
1443         Encoding         iso8859-15
1444         FontEncoding     T1|OT1
1445         DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
1446         LangCode         es_MX
1447         PostBabelPreamble
1448         \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
1449         \deactivatequoting
1450         EndPostBabelPreamble
1451 End
1452
1453 Language swedish
1454         GuiName          "Swedish"
1455         HasGuiSupport    true
1456         BabelName        swedish
1457         PolyglossiaName  swedish
1458         XindyName        swedish
1459         QuoteStyle       swedish
1460         Encoding         iso8859-15
1461         FontEncoding     T1|OT1
1462         DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
1463         LangCode         sv_SE
1464 End
1465
1466 # not supported by babel
1467 Language syriac
1468         GuiName          "Syriac"
1469         PolyglossiaName  syriac
1470         Encoding         utf8
1471         RTL              true
1472         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1473         LangCode         syr_SY
1474 End
1475
1476 # not supported by babel
1477 Language tamil
1478         GuiName          "Tamil"
1479         PolyglossiaName  tamil
1480         Encoding         utf8
1481         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
1482         LangCode         ta_IN
1483 End
1484
1485 # not supported by babel
1486 Language telugu
1487         GuiName          "Telugu"
1488         PolyglossiaName  telugu
1489         Encoding         utf8
1490         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
1491         LangCode         te_IN
1492 End
1493
1494 # There is an alternative support with CJK package and Babel name "thaicjk".
1495
1496 Language thai
1497         GuiName          "Thai"
1498         BabelName        thai
1499         PolyglossiaName  thai
1500         QuoteStyle       english
1501         Encoding         tis620-0
1502         FontEncoding     LTH
1503         DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1504         LangCode         th_TH
1505         # The first workaround requires loading inputenc after babel
1506         # (cf. BufferParams.cpp):
1507         PostBabelPreamble
1508           % Restore catcodes changed by thai.ldf (active characters required for inputenc)
1509           \@tempcnta=161%
1510           \@whilenum\@tempcnta<252\do{%
1511             \catcode\@tempcnta=13
1512             \advance\@tempcnta\@ne
1513           }%
1514           % Restore \coyright definition corrupted by lthenc.def
1515           \DeclareRobustCommand{\copyright}{%
1516             \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi}
1517           \DeclareTextSymbol{\textcopyright}{LTH}{8}
1518           %
1519           % set up Thai fonts as substitue for the default families
1520           % The 'substitutefont' package is obsolete now, since commands
1521           % from the LaTeX kernel can be used instead. See here:
1522           %   https://ctan.org/pkg/substitutefont
1523           %   https://www.latex-project.org/news/latex2e-news/ltnews31.pdf
1524           \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
1525           \IfFormatAtLeastTF{2020/02/01}{%
1526             \DeclareFontFamilySubstitution{LTH}{\rmdefault}{norasi}
1527             \DeclareFontFamilySubstitution{LTH}{\sfdefault}{garuda}
1528             \DeclareFontFamilySubstitution{LTH}{\ttdefault}{ttypist}
1529           }{%
1530             \usepackage{substitutefont}
1531             \substitutefont{LTH}{\rmdefault}{norasi}
1532             \substitutefont{LTH}{\sfdefault}{garuda}
1533             \substitutefont{LTH}{\ttdefault}{ttypist}
1534           }
1535         EndPostBabelPreamble
1536 End
1537
1538 # not supported by babel
1539 #FIXME DateFormats
1540 Language tibetan
1541         GuiName          "Tibetan"
1542         PolyglossiaName  tibetan
1543         Encoding         utf8
1544         LangCode         bo_CN
1545 End
1546
1547 Language turkish
1548         GuiName          "Turkish"
1549         HasGuiSupport    true
1550         BabelName        turkish
1551         PolyglossiaName  turkish
1552         XindyName        turkish
1553         QuoteStyle       english
1554         ActiveChars      =
1555         Encoding         iso8859-9
1556         FontEncoding     T1|OT1
1557         LangCode         tr_TR
1558         DateFormats      "d MMMM yyyy|dd.MMM.yyyy|dd.MM.yyyy"
1559 End
1560
1561 # turkmen must be loaded locally with babel options,
1562 # not globally via class options
1563 Language turkmen
1564         GuiName          "Turkmen"
1565         BabelName        turkmen
1566         PolyglossiaName  turkmen
1567         QuoteStyle       swiss
1568         Encoding         utf8
1569         FontEncoding     T1|OT1
1570         DateFormats      "yyyy ý. MMMM d|dd.MM.yyyy ý.|dd.MM.yy ý."
1571         LangCode         tk_TM
1572 End
1573
1574 Language ukrainian
1575         GuiName          "Ukrainian"
1576         HasGuiSupport    true
1577         BabelName        ukrainian
1578         PolyglossiaName  ukrainian
1579         XindyName        ukrainian
1580         QuoteStyle       russian
1581         Encoding         koi8-u
1582         FontEncoding     T2A
1583         DateFormats      "dd MMMM yyyy|d MM yyyy|dd.MM.yyyy"
1584         LangCode         uk_UA
1585         Provides         textcyrillic
1586 End
1587
1588 Language uppersorbian
1589         GuiName          "Upper Sorbian"
1590         BabelName        uppersorbian
1591         PolyglossiaName  usorbian
1592         XindyName        upper-sorbian
1593         QuoteStyle       german
1594         Encoding         iso8859-2
1595         FontEncoding     T1|OT1
1596         DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
1597         LangCode         hsb_DE
1598 End
1599
1600 # not supported by babel
1601 Language urdu
1602         GuiName          "Urdu"
1603         PolyglossiaName  urdu
1604         Encoding         utf8
1605         DateFormats      "d MMMM, yyyy|d MMM yyyy|dd/MM/yyyy"
1606         RTL              true
1607         LangCode         ur_PK
1608 End
1609
1610 Language vietnamese
1611         GuiName          "Vietnamese"
1612         BabelName        vietnamese
1613         PolyglossiaName  vietnamese
1614         XindyName        vietnamese
1615         QuoteStyle       english
1616         Encoding         utf8
1617         DateFormats      "dd 'tháng' MMMM yyyy|dd-MM-yyyy|dd/MM/yyyy"
1618         FontEncoding     T5
1619         LangCode         vi_VN
1620 End
1621
1622 Language welsh
1623         GuiName          "Welsh"
1624         BabelName        welsh
1625         PolyglossiaName  welsh
1626         QuoteStyle       british
1627         Encoding         iso8859-15
1628         DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
1629         FontEncoding     T1|OT1
1630         LangCode         cy_GB
1631 End