设置可翻译包

设置可翻译包

我维护一个 LaTeX 包,它的输出是三个英文单词:“and”、“p.”和“pp.”。我希望如果有人在德语文档中使用我的包,这三个字符串会自动变成“und”、“S.”和“S.”

在 LaTeX 包中设置国际化支持的最普遍做法是什么?我不会将这些字符串翻译成每一种语言,但我确实想让我的包可翻译

如果它是一个软件包,那么这可以通过无处不在的 GNU gettext 轻松完成。有某种“LaTeX gettext”吗?

答案1

你可以使用这个translator包。它已经包含许多术语的翻译,例如andPagePages,但你也可以自己添加缺失的术语:

\documentclass[ngerman]{report}

\usepackage{babel}
\usepackage{translator}
\usedictionary{translator-basic-dictionary}

\deftranslation[to=German]{p.}{\translate{S.}}
\deftranslation[to=German]{pp.}{\translate{S.}}

\begin{document}

\translate{and}

\translate{Page}

\translate{Pages}

\translate{p.}

\translate{pp.}

\end{document}

相关内容