1# FIXME: Have a look at the encodings known by the inputenc package and add
2# missing ones. Caution: File format change!
3
4# Note that you can only add singlebyte encodings to this file.
5# LyX does not support the output of multibyte encodings (e.g. utf16).
6# It does support singlebyte encodings with variable width (e.g. utf8).
7# These are marked with the "variable" keyword.
8# Fixed width encodings are marked with the "fixed" keyword.
9# The code points of TeX control characters like {, } and \ can occur in the
10# second byte of some variable width encodings. These encodings must not be
11# set as document encodings and are marked with the "variableunsafe" keyword.
12# They are only needed for proper tex2lyx import.
13
14# Most encodings require loading a latex package such as "inputenc" or "CJK".
15# There is no "japanese" latex package, rather this keyword indicates to LyX
16# to switch the buffer format and use platex instead of standard (pdf)latex.
17# In this case, TeX control characters in high bytes is not a problem.
18# The invocation is platex -kanji=<LaTeX name>
19
20# The set of "iconv" supported encodings is system dependent.
21
22# For Gnu libiconv, supported encodings are listed at
23# https://www.gnu.org/software/libiconv/
24# and available via the `iconv --list` command.
25
26# Syntax: Encoding <LyX name> <LaTeX name> <GUI name> <iconv name> <width> <package> End
27
28# LyX name:    Name used by the file format and in lib/languages. Must be unique!
29# LaTeX name:  Used in the latex export or passed to platex as command-line switch.
30# GUI name:    Displayed in document settings.
31# iconv name:  Used by iconv.
32# width:       One of fixed, variable, or variableunsafe (see above).
33# package:     One of none, inputenc, CJK, or japanese (see above).
34
35# Encodings used with inputenc.sty
36# ================================
37
38# "inputenc" is a base LaTeX package that provides an extensible framework
39# for conversion of a document encoding into an "LaTeX Internal Character
40# Representation" (LICR) and a set of encoding definitions
41# (<LaTeX name>.def files). Additional encoding definitions are provided by
42# several language support packages.
43#
44# The following encodings from http://www.ctan.org/pkg/latex-cyrillic are
45# not included, because they are not widely used and lack iconv support:
46# ctt, dbk, isoir111, koi8-ru, lcyenc, maccyr, macukr, mik, mls, mnk, mos,
47# and pt254.
48
49# inputenc's standard utf8 support:
50Encoding utf8 utf8 "Unicode (utf8)" UTF-8 variable inputenc
51End
52
53# This one is used by many CJK packages. utf8 is supposed to be the successor,
54# but does not have all features of utf8x yet.
55Encoding utf8x utf8x "Unicode (ucs-extended) (utf8x)" UTF-8 variable inputenc
56End
57
58# from http://www.ctan.org/pkg/armtex
59Encoding armscii8 armscii8 "Armenian (ArmSCII8)" ARMSCII-8 fixed inputenc
60End
61
62Encoding iso8859-1 latin1 "Western European (ISO 8859-1)" ISO-8859-1 fixed inputenc
63End
64
65Encoding iso8859-2 latin2 "Central European (ISO 8859-2)" ISO-8859-2 fixed inputenc
66End
67
68Encoding iso8859-3 latin3 "South European (ISO 8859-3)" ISO-8859-3 fixed inputenc
69End
70
71Encoding iso8859-4 latin4 "Baltic (ISO 8859-4)" ISO-8859-4 fixed inputenc
72End
73
74# from http://www.ctan.org/pkg/latex-cyrillic
75Encoding iso8859-5 iso88595 "Cyrillic (ISO 8859-5)" ISO-8859-5 fixed inputenc
76End
77
78# from http://www.ctan.org/pkg/arabi
79Encoding iso8859-6 8859-6 "Arabic (ISO 8859-6)" ISO-8859-6 fixed inputenc
80End
81
82# from http://www.ctan.org/pkg/greek-inputenc
83Encoding iso8859-7 iso-8859-7 "Greek (ISO 8859-7)" ISO-8859-7 fixed inputenc
84End
85
86Encoding iso8859-8 8859-8 "Hebrew (ISO 8859-8)" ISO-8859-8 fixed inputenc
87End
88
89Encoding iso8859-9 latin5 "Turkish (ISO 8859-9)" ISO-8859-9 fixed inputenc
90End
91
92Encoding iso8859-13 latin7 "Baltic (ISO 8859-13)" ISO-8859-13 fixed inputenc
93End
94
95Encoding iso8859-15 latin9 "Western European (ISO 8859-15)" ISO-8859-15 fixed inputenc
96End
97
98Encoding iso8859-16 latin10 "South-Eastern European (ISO 8859-16)" ISO-8859-16 fixed inputenc
99End
100
101Encoding applemac applemac "Western European (Macintosh Roman)" Macintosh fixed inputenc
102End
103
104Encoding cp437 cp437 "DOS (CP 437)" CP437 fixed inputenc
105End
106
107# like cp437, but on position 225 is sz instead of beta
108Encoding cp437de cp437de "DOS-de (CP 437-de)" CP437 fixed inputenc
109End
110
111Encoding cp850 cp850 "Western European (CP 850)" CP850 fixed inputenc
112End
113
114Encoding cp852 cp852 "Central European (CP 852)" CP852 fixed inputenc
115End
116
117# from http://www.ctan.org/pkg/latex-cyrillic
118Encoding cp855 cp855 "Cyrillic (CP 855)" CP855 fixed inputenc
119End
120
121# Gnu iconv only supports cp858, if configured with "--enable-extra-encodings"
122# (see https://www.gnu.org/software/libiconv/)
123Encoding cp858 cp858 "Western European (CP 858)" CP858 fixed inputenc
124End
125
126Encoding cp862 cp862 "Hebrew (CP 862)" CP862 fixed inputenc
127End
128
129Encoding cp865 cp865 "Nordic languages (CP 865)" CP865 fixed inputenc
130End
131
132# from http://www.ctan.org/pkg/latex-cyrillic
133Encoding cp866 cp866 "Cyrillic (CP 866)" CP866 fixed inputenc
134End
135
136Encoding cp1250 cp1250 "Central European (CP 1250)" CP1250 fixed inputenc
137End
138
139# from http://www.ctan.org/pkg/latex-cyrillic
140Encoding cp1251 cp1251 "Cyrillic (CP 1251)" CP1251 fixed inputenc
141End
142
143# "ansinew" is harcoded as a synonym of this (see Encodings::fromLaTeXName)
144Encoding cp1252 cp1252 "Western European (CP 1252)" CP1252 fixed inputenc
145End
146
147Encoding cp1255 cp1255 "Hebrew (CP 1255)" CP1255 fixed inputenc
148End
149
150# from http://www.ctan.org/pkg/arabi
151Encoding cp1256 cp1256 "Arabic (CP 1256)" CP1256 fixed inputenc
152End
153
154Encoding cp1257 cp1257 "Baltic (CP 1257)" CP1257 fixed inputenc
155End
156
157# from http://www.ctan.org/pkg/latex-cyrillic
158Encoding koi8-r koi8-r "Cyrillic (KOI8-R)" KOI8-R fixed inputenc
159End
160
161# from http://www.ctan.org/pkg/latex-cyrillic
162Encoding koi8-u koi8-u "Cyrillic (KOI8-U)" KOI8-U fixed inputenc
163End
164
165# from http://www.ctan.org/pkg/latex-cyrillic
166Encoding pt154 pt154 "Cyrillic (pt 154)" PT154 fixed inputenc
167End
168
169# encodings used by CJK.sty
170
171# The following encodings that are supported by the CJK package are not
172# included here, because they are not widely used and lack proper iconv support:
173# Bg5+, GBt
174# See the NOTES file of libiconv for details.
175
176# For traditional chinese
177Encoding big5 Bg5 "Chinese (traditional) (Big5)" BIG5 variableunsafe CJK
178End
179
180# For japanese
181# We use CP932 and not SJIS, since it is a super set of SJIS except that it
182# translates SJIS 0x5c to U+005C (REVERSE SOLIDUS aka backslash) instead of
183# U+00A5 (YEN SIGN). Strictly speaking this is wrong, but there is a long
184# standing confusion which translation is correct, and using CP932 is also
185# consistent with the SJIS example file <texmf>/doc/latex/cjk/examples/SJIS.tex
186# of the CJK package. The CP932 extensions over SJIS do not matter here.
187Encoding shift-jis SJIS "Japanese (CJK) (SJIS)" CP932 variableunsafe CJK
188End
189
190# The following encodings need hardcoded support of the encodable unicode
191# range, but are known by iconv:
192
193# For simplified chinese
194Encoding euc-cn GB "Chinese (simplified) (EUC-CN)" EUC-CN variable CJK
195End
196
197# For simplified chinese
198Encoding gbk GBK "Chinese (simplified) (GBK)" GBK variable CJK
199End
200
201# For japanese
202Encoding jis JIS "Japanese (CJK) (JIS)" ISO-2022-JP variable CJK
203End
204
205# For korean
206Encoding euc-kr KS "Korean (EUC-KR)" EUC-KR variable CJK
207End
208
209# The CJK package has yet another name for utf8...
210Encoding utf8-cjk UTF8 "Unicode (CJK) (utf8)" UTF-8 variable CJK
211End
212
213# For traditional chinese
214Encoding euc-tw EUC-TW "Chinese (traditional) (EUC-TW)" EUC-TW variable CJK
215End
216
217# For japanese
218Encoding euc-jp EUC-JP "Japanese (CJK) (EUC-JP)" EUC-JP variable CJK
219End
220
221# encodings that do not use a package
222
223# Traditional Japanese TeX programs require the japanese package.
224# that is incompatible with CJK and inputenc.
225Encoding euc-jp-platex euc "Japanese (pLaTeX) (EUC-JP)" EUC-JP variable japanese
226End
227Encoding jis-platex jis "Japanese (pLaTeX) (JIS)" ISO-2022-JP variable japanese
228End
229Encoding shift-jis-platex sjis "Japanese (pLaTeX) (SJIS)" CP932 variable japanese
230End
231Encoding utf8-platex utf8 "Japanese (pLaTeX) (UTF8)" UTF-8 variable japanese
232End
233
234# This one needs hardcoded support, since the inputenc package does not know
235# tis620-0, and thailatex sets up babel directly to use tis620-0, so the
236# LaTeX name is never output to .tex files (but needed for the hardcoded
237# tis620-0 support).
238Encoding tis620-0 tis620-0 "Thai (TIS 620-0)" TIS620-0 fixed none
239End
240
241# A plain utf8 encoding that does not use the inputenc package.
242# Such an encoding is required for XeTeX.
243Encoding utf8-plain utf8-plain "Unicode (XeTeX) (utf8)" UTF-8 variable none
244End
245
246# Pure 7bit ASCII encoding (partially hardcoded in LyX)
247Encoding ascii ascii "ASCII" ascii fixed none
248End
249
250# Semantic encodings
251
252# Inherit encoding of the context (used by verbatim)
253Encoding inherit inherit "" "" fixed none
254End
255