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