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