`ruby` 和 `xeCJK` 之间的冲突

`ruby` 和 `xeCJK` 之间的冲突

在我的序言中,我调用xeCJKruby来为日文字符添加注音文本。我正在使用进行编译xetex

有人在之前的帖子中提到过该ruby调用CJK会导致编译错误(但文档看起来不错)。

我该如何避免这种情况?的文档xeCJK是用中文写的,所以我看不懂,也找不到的ruby文档(虽然有很多关于编程语言的内容)。


在我们继续之前,这里是所要求的 MWE。

\documentclass{article}

\usepackage{ruby}

\usepackage{xeCJK}
   %\setCJKmainfont{MS Mincho}
   %\setCJKsansfont{MS Gothic}
   %\setmainfont{Times New Roman}
   %\setsansfont{Calibri}


\begin{document}
   %\ruby{日}{に}\\
   %\ruby{本}{hon}\\
   %語\\
   Latin text.\\
   \textsf{Latin text.}
\end{document}

注释在那里,这样您就可以尝试一下,看看错误是否会根据不同类型的输入而改变。

我收到的第一个错误(带有注释)是:

"xparse/command-already-defined"! See the LaTeX3 documentation for further information.

xeCJK交换和的顺序ruby不会产生错误!为什么?

有没有比ruby这更好的方案绝不是否存在冲突,xeCJK或者选择更不容易出错的包?

答案1

您可以通过加载 ruby​​ 来避免错误xecjk。

请注意,这是作弊行为:你只是阻止 xecjk探测您正在加载 cjk。您很可能会遇到其他冲突 —— ruby​​ 和 cjk 不是为 xelatex 编写的。但如果您按照此答案所示调整 \ruby 命令,它可能会起作用:https://tex.stackexchange.com/a/178858/2388

相关内容