如何在纯 TeX 中输入 Unicode

如何在纯 TeX 中输入 Unicode

在普通的 TeX 中,

\char<int>

生成十进制代码字符 <整数>. 同样地,

\char'<oct>
\char"<hex>

用八进制代码生成字符<十月> 和十六进制代码 <十六进制> 分别。

有没有这样一种输入 Unicode 符号的方法?

谢谢。

答案1

您也可以使用 Plain TeX 在某种程度上模拟 Unicode;假设您想输入它ć然后退出\'c

\catcode"C4=\active % 0xC4 is a two-byte prefix in UTF-8
\def^^c4#1{\csname\string^^c4#1\endcsname}

\expandafter\def\csname\string^^c4^^87\endcsname{\'c}
%%% add other UTF-8 characters having 0xC4 as prefix

%%% Repeat for all other UTF-8 prefixes you need

ć

\bye

对所有前缀重复此操作。

你可能想看看http://petr.olsak.net/csplain-e.html寻求不同的策略和已经成熟的解决方案。

答案2

您需要一个支持 unicode 的引擎来实现这一点;宏包(如 Plain)本身无法实现这一点。支持 unicode 的引擎示例有 xetex 和 luatex,或许还有带有 enctex 扩展的 etex 和 pdftex。

相关内容