X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fencodings;h=c79db405becdc2e3034bab1fd3531f5425424c37;hb=3d4076b598deb18660e50ec9c327efc3b15f15d0;hp=899a1a813acf5281e4c9cc82a14b303380abfeba;hpb=76e66aaea89045842dc3651d09e2ab525f1a4e61;p=lyx.git diff --git a/lib/encodings b/lib/encodings index 899a1a813a..c79db405be 100644 --- a/lib/encodings +++ b/lib/encodings @@ -3,11 +3,28 @@ # Note that you can only add singlebyte encodings to this file. # LyX does not support the output of multibyte encodings (e.g. utf16). -# It does support singlebyte encodings with variable with (e.g. utf8). +# It does support singlebyte encodings with variable width (e.g. utf8). # These are marked with the "variable" keyword. # Fixed width encodings are marked with the "fixed" keyword. - -# Syntax: Encoding fixed|variable End +# The code points of TeX control characters like {, } and \ can occur in the +# second byte of some variable width encodings. These encodings must not be +# set as document encodings and are marked with the "variableunsafe" keyword. +# They are only needed for proper tex2lyx import. + +# Most encodings require loading a latex package such as "inputenc" or "CJK". +# There is no "japanese" latex package, rather this keyword indicates to LyX +# to switch the buffer format and use platex instead of standard (pdf)latex. +# In this case, TeX control characters in high bytes is not a problem. +# The invocation is platex -kanji= + +# Syntax: Encoding End + +# LyX name: Name used by the file format and in lib/languages. Must be unique! +# LaTeX name: Used in the latex export or passed to platex as command-line switch. +# GUI name: Displayed in document settings. +# iconv name: Used by iconv. +# width: One of fixed, variable, or variableunsafe (see above). +# package: One of none, inputenc, CJK, or japanese (see above). # encodings used by inputenc.sty @@ -112,7 +129,7 @@ End Encoding cp1257 cp1257 "Baltic (CP 1257)" CP1257 fixed inputenc End -Encoding koi8 koi8-r "Cyrillic (KOI8-R)" KOI8-R fixed inputenc +Encoding koi8-r koi8-r "Cyrillic (KOI8-R)" KOI8-R fixed inputenc End Encoding koi8-u koi8-u "Cyrillic (KOI8-U)" KOI8-U fixed inputenc @@ -131,16 +148,19 @@ End # Bg5+, GBt # See the NOTES file of libiconv for details. -# The following encodings can't be handled directly, because the code points -# of TeX control characters like {, } and \ can occur in the second byte: - # For traditional chinese -#Encoding big5 Bg5 "Chinese (traditional) (Big5)" BIG5 variable CJK -#End +Encoding big5 Bg5 "Chinese (traditional) (Big5)" BIG5 variableunsafe CJK +End # For japanese -#Encoding shift-jis SJIS "Japanese (CJK) (SJIS)" SJIS variable CJK -#End +# We use CP932 and not SJIS, since it is a super set of SJIS except that it +# translates SJIS 0x5c to U+005C (REVERSE SOLIDUS aka backslash) instead of +# U+00A5 (YEN SIGN). Strictly speaking this is wrong, but there is a long +# standing confusion which translation is correct, and using CP932 is also +# consistent with the SJIS example file /doc/latex/cjk/examples/SJIS.tex +# of the CJK package. The CP932 extensions over SJIS do not matter here. +Encoding shift-jis SJIS "Japanese (CJK) (SJIS)" CP932 variableunsafe CJK +End # The following encodings need hardcoded support of the encodable unicode # range, but are known by iconv: @@ -177,13 +197,13 @@ End # Traditional Japanese TeX programs require the japanese package. # that is incompatible with CJK and inputenc. -Encoding euc-jp-plain euc "Japanese (non-CJK) (EUC-JP)" EUC-JP variable japanese +Encoding euc-jp-platex euc "Japanese (pLaTeX) (EUC-JP)" EUC-JP variable japanese End -Encoding jis-plain jis "Japanese (non-CJK) (JIS)" ISO-2022-JP variable japanese +Encoding jis-platex jis "Japanese (pLaTeX) (JIS)" ISO-2022-JP variable japanese End -Encoding shift-jis-plain sjis "Japanese (non-CJK) (SJIS)" CP932 variable japanese +Encoding shift-jis-platex sjis "Japanese (pLaTeX) (SJIS)" CP932 variable japanese End -Encoding utf8 utf8 "Japanese (non-CJK) (utf8)" UTF-8 variable japanese +Encoding utf8-platex utf8 "Japanese (pLaTeX) (UTF8)" UTF-8 variable japanese End # This one needs hardcoded support, since the inputenc package does not know @@ -201,4 +221,3 @@ End # Pure 7bit ASCII encoding (partially hardcoded in LyX) Encoding ascii ascii "ASCII" ascii fixed none End -