我一直使用\,
和\thinspace
我自己的 hairspace 命令\hrsp
,但我不想关心它是否在 pdf 字符串中使用(通常在 sectioning 和 cite 命令中),这是为了摆脱Package hyperref Warning: Token not allowed in a PDF string (Unicode): (hyperref) removing \hrsp on input line 334.
我想(重新)定义命令,以便它们无论是在TeX
还是中使用,都可以执行不同的事情PDF string
,也许通过\texorpdfstring{}{}
。
我们不需要 MWE,我们需要的是:
% -*- mode: latex; TeX-engine: luatex; coding: utf-8; -*-
\usepackage[twothirds]{thinsp}
\NewDocumentCommand{\hrsp}{}{\ifmmode\mskip1mu\else\kern.08333em\fi}
因为 PDF 字符串\hrsp
不应该执行任何操作,即根本不插入空格,而当无法使用\,
时应该插入普通的单词间空格。\thinspace
好的,我补充了我的序言
\pdfstringdefDisableCommands{%
\def\,{ }%
\def\hrsp{}%
}
效果很好。