]> git.lyx.org Git - lyx.git/blob - lib/encodings
ANNOUNCE updates.
[lyx.git] / lib / encodings
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:
50 Encoding utf8 utf8 "Unicode (utf8)" UTF-8 variable inputenc
51 End
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.
55 Encoding utf8x utf8x "Unicode (ucs-extended) (utf8x)" UTF-8 variable inputenc
56 End
57
58 # from http://www.ctan.org/pkg/armtex
59 Encoding armscii8 armscii8 "Armenian (ArmSCII8)" ARMSCII-8 fixed inputenc
60 End
61
62 Encoding iso8859-1 latin1 "Western European (ISO 8859-1)" ISO-8859-1 fixed inputenc
63 End
64
65 Encoding iso8859-2 latin2 "Central European (ISO 8859-2)" ISO-8859-2 fixed inputenc
66 End
67
68 Encoding iso8859-3 latin3 "South European (ISO 8859-3)" ISO-8859-3 fixed inputenc
69 End
70
71 Encoding iso8859-4 latin4 "Baltic (ISO 8859-4)" ISO-8859-4 fixed inputenc
72 End
73
74 # from http://www.ctan.org/pkg/latex-cyrillic
75 Encoding iso8859-5 iso88595 "Cyrillic (ISO 8859-5)" ISO-8859-5 fixed inputenc
76 End
77
78 # from http://www.ctan.org/pkg/arabi
79 Encoding iso8859-6 8859-6 "Arabic (ISO 8859-6)" ISO-8859-6 fixed inputenc
80 End
81
82 # from http://www.ctan.org/pkg/greek-inputenc
83 Encoding iso8859-7 iso-8859-7 "Greek (ISO 8859-7)" ISO-8859-7 fixed inputenc
84 End
85
86 Encoding iso8859-8 8859-8 "Hebrew (ISO 8859-8)" ISO-8859-8 fixed inputenc
87 End
88
89 Encoding iso8859-9 latin5 "Turkish (ISO 8859-9)" ISO-8859-9 fixed inputenc
90 End
91
92 Encoding iso8859-13 latin7 "Baltic (ISO 8859-13)" ISO-8859-13 fixed inputenc
93 End
94
95 Encoding iso8859-15 latin9 "Western European (ISO 8859-15)" ISO-8859-15 fixed inputenc
96 End
97
98 Encoding iso8859-16 latin10 "South-Eastern European (ISO 8859-16)" ISO-8859-16 fixed inputenc
99 End
100
101 Encoding applemac applemac "Western European (Macintosh Roman)" Macintosh fixed inputenc
102 End
103
104 Encoding cp437 cp437 "DOS (CP 437)" CP437 fixed inputenc
105 End
106
107 # like cp437, but on position 225 is sz instead of beta
108 Encoding cp437de cp437de "DOS-de (CP 437-de)" CP437 fixed inputenc
109 End
110
111 Encoding cp850 cp850 "Western European (CP 850)" CP850 fixed inputenc
112 End
113
114 Encoding cp852 cp852 "Central European (CP 852)" CP852 fixed inputenc
115 End
116
117 # from http://www.ctan.org/pkg/latex-cyrillic
118 Encoding cp855 cp855 "Cyrillic (CP 855)" CP855 fixed inputenc
119 End
120
121 # Gnu iconv only supports cp858, if configured with "--enable-extra-encodings"
122 # (see https://www.gnu.org/software/libiconv/)
123 Encoding cp858 cp858 "Western European (CP 858)" CP858 fixed inputenc
124 End
125
126 Encoding cp862 cp862 "Hebrew (CP 862)" CP862 fixed inputenc
127 End
128
129 Encoding cp865 cp865 "Nordic languages (CP 865)" CP865 fixed inputenc
130 End
131
132 # from http://www.ctan.org/pkg/latex-cyrillic
133 Encoding cp866 cp866 "Cyrillic (CP 866)" CP866 fixed inputenc
134 End
135
136 Encoding cp1250 cp1250 "Central European (CP 1250)" CP1250 fixed inputenc
137 End
138
139 # from http://www.ctan.org/pkg/latex-cyrillic
140 Encoding cp1251 cp1251 "Cyrillic (CP 1251)" CP1251 fixed inputenc
141 End
142
143 # "ansinew" is harcoded as a synonym of this (see Encodings::fromLaTeXName)
144 Encoding cp1252 cp1252 "Western European (CP 1252)" CP1252 fixed inputenc
145 End
146
147 Encoding cp1255 cp1255 "Hebrew (CP 1255)" CP1255 fixed inputenc
148 End
149
150 # from http://www.ctan.org/pkg/arabi
151 Encoding cp1256 cp1256 "Arabic (CP 1256)" CP1256 fixed inputenc
152 End
153
154 Encoding cp1257 cp1257 "Baltic (CP 1257)" CP1257 fixed inputenc
155 End
156
157 # from http://www.ctan.org/pkg/latex-cyrillic
158 Encoding koi8-r koi8-r "Cyrillic (KOI8-R)" KOI8-R fixed inputenc
159 End
160
161 # from http://www.ctan.org/pkg/latex-cyrillic
162 Encoding koi8-u koi8-u "Cyrillic (KOI8-U)" KOI8-U fixed inputenc
163 End
164
165 # from http://www.ctan.org/pkg/latex-cyrillic
166 Encoding pt154 pt154 "Cyrillic (pt 154)" PT154 fixed inputenc
167 End
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
177 Encoding big5 Bg5 "Chinese (traditional) (Big5)" BIG5 variableunsafe CJK
178 End
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.
187 Encoding shift-jis SJIS "Japanese (CJK) (SJIS)" CP932 variableunsafe CJK
188 End
189
190 # The following encodings need hardcoded support of the encodable unicode
191 # range, but are known by iconv:
192
193 # For simplified chinese
194 Encoding euc-cn GB "Chinese (simplified) (EUC-CN)" EUC-CN variable CJK
195 End
196
197 # For simplified chinese
198 Encoding gbk GBK "Chinese (simplified) (GBK)" GBK variable CJK
199 End
200
201 # For japanese
202 Encoding jis JIS "Japanese (CJK) (JIS)" ISO-2022-JP variable CJK
203 End
204
205 # For korean
206 Encoding euc-kr KS "Korean (EUC-KR)" EUC-KR variable CJK
207 End
208
209 # The CJK package has yet another name for utf8...
210 Encoding utf8-cjk UTF8 "Unicode (CJK) (utf8)" UTF-8 variable CJK
211 End
212
213 # For traditional chinese
214 Encoding euc-tw EUC-TW "Chinese (traditional) (EUC-TW)" EUC-TW variable CJK
215 End
216
217 # For japanese
218 Encoding euc-jp EUC-JP "Japanese (CJK) (EUC-JP)" EUC-JP variable CJK
219 End
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.
225 Encoding euc-jp-platex euc "Japanese (pLaTeX) (EUC-JP)" EUC-JP variable japanese
226 End
227 Encoding jis-platex jis "Japanese (pLaTeX) (JIS)" ISO-2022-JP variable japanese
228 End
229 Encoding shift-jis-platex sjis "Japanese (pLaTeX) (SJIS)" CP932 variable japanese
230 End
231 Encoding utf8-platex utf8 "Japanese (pLaTeX) (UTF8)" UTF-8 variable japanese
232 End
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).
238 Encoding tis620-0 tis620-0 "Thai (TIS 620-0)" TIS620-0 fixed none
239 End
240
241 # A plain utf8 encoding that does not use the inputenc package.
242 # Such an encoding is required for XeTeX.
243 Encoding utf8-plain utf8-plain "Unicode (XeTeX) (utf8)" UTF-8 variable none
244 End
245
246 # Pure 7bit ASCII encoding (partially hardcoded in LyX)
247 Encoding ascii ascii "ASCII" ascii fixed none
248 End
249
250 # Semantic encodings
251
252 # Inherit encoding of the context (used by verbatim)
253 Encoding inherit inherit "" "" fixed none
254 End