我正在使用opmac
宏。我需要在文档中使用意大利语和英语,所以我需要一种方法来设置意大利语(连字符和直接输入字母 à è é ò ù ì 的可能性)以及一种方法来在意大利语和英语之间切换。是否有特定的 opmac 功能可以做到这一点?
答案1
OPmac 是一个宏集合,它与由 csplain 格式生成的纯 TeX 格式一起pdftex
使用xetex
。意大利语内容的设置主要取决于所选的引擎和格式,而不是 OPmac。luatex
etex.src
1) 如果使用 pdfTeX (或 XeTeX 或 LuaTeX) 生成纯 TeX etex.src
,则连字符已加载,您可以通过 进行设置\uselanguage{italian}
。抱歉,我不知道如果使用 pdfTeX 引擎,如何设置此格式中的非 ASCII 字符排版 (à è é ò ù ì)。
2) 如果使用 csplain,则连字符尚未加载。您需要通过以下方式重新生成格式:
pdftex -jobname pdfcsplain -ini -enc "\let\itPatt=y \input csplain-utf8.ini"
or
xetex -jobname pdfcsplain -ini -etex "\let\itPatt=y \input csplain.ini"
or
luatex -jobname pdfcsplain -ini "\let\itPatt=y \input csplain.ini"
然后您可以使用\itlang
选择器设置意大利语连字。
Opmac 仅使用三个预先声明的自动生成单词(取决于所选语言):章节、表格和图形。用户可以定义其他单词。这些单词的意大利语版本可以通过以下方式设置:
\input opmac
\bgroup
\ifx\uselanguage\undefined \else % etex.src is used:
\uselanguage{italian}\sxdef{lan:\the\language}{it}
\gdef\itlang{\uselanguage{italian}}
\gdef\enlang{\language=0 }
\fi
\egroup
\sdef{mt:chap:it}{Capitolo}
\sdef{mt:t:it}{Tabella}
\sdef{mt:f:it}{Figura}
English language is default. So \caption/t prints Table.
\itlang Now the Italian language is set. So \caption/t prints Tabella.
\enlang The English language is used here. \caption/t prints Table.
以下内容是关于 à è é ò ù ì 等 UTF-8 代码的解释。这与 OPmac 宏包没有明确的联系。
CSplain(带 8 位 pdfTeX)默认仅接受 ASCII 以及捷克语和斯洛伐克语字母的 UTF-8 代码。如果您需要使用 à è é ò ù ì,则\input utf8lat1
建议使用,并且必须在之前选择字体的 T1 编码:
\input t1code % T1 encoding
\input lmfonts % T1 encoded fonts, other family can be selected too
\input utf8lat1 % Latin 1 Unicode subtable interpreted by encTeX
Now you can type à è é ò ù ì.
带有 xetex 或 luatex 的 CSplain 或由带有 xetex 或 luatex 的 etex.src 生成的纯 TeX 无需 即可解释 UTF-8 代码\input utf8lat1
,但必须加载适当的字体系列:
\input ucode % Unicode encoding
\input lmfonts % Unicode encoded LM fonts
Now you can type à è é ò ù ì.
答案2
OPmac 不考虑语言设置。如果你想用不同的语言排版文档,你可以尝试设置 hyplain 格式而不是 plain 格式,随意添加语言,然后在文档中手动加载 OPmac。所以,
- 从 CTAN 获取 hyplain 并按照安装说明进行操作。
- 获取并安装连字词典:我推荐你使用以下文件ec-plain;它们有点过时,但是小巧而美丽。
- 编辑 hylang.tex 文件以根据说明添加和命名您的语言。
- 建立您的格式并使用它!