如何防止 xeTeX 在参考文献中的《前插入空格?

如何防止 xeTeX 在参考文献中的《前插入空格?

正如这个问题的标题中也发生的那样,输入《(根据我的参考,Unicode+300A)会产生很大的前导空格。我想阻止 xeTex 显示这个空格。我特别想在代码中抑制它:

\documentclass{article}
\usepackage{xeCJK}

\usepackage[utf8]{inputenc}

% Start the document
\begin{document}
\cite[《儲小寶》]{jiejie}

\bibliographystyle{acm}
\bibliography{document.bib}
\end{document}

document.bib 的内容如下:

@misc{jiejie, author = "魏伟", title = "姐姐和弟弟" }

生成结果: 在此处输入图片描述

答案1

这就是 guillemet 的设计方式。

但是,你可以修改它们的行为方式。

\begin{filecontents*}{\jobname.bib}
@misc{jiejie, author = "Wei Wei", title = "姐姐和弟弟" }
\end{filecontents*}

\documentclass{article}
\usepackage{xeCJK}
\usepackage{newunicodechar}

\newunicodechar{《}{\makebox[\width][r]{《}}
\newunicodechar{》}{\makebox[.5\width][l]{》}}


% Start the document
\begin{document}

X《X》X

\cite[《儲小寶》]{jiejie}

[1, X]

\bibliographystyle{acm}
\bibliography{\jobname}

\end{document}

在此处输入图片描述

几点说明:

  1. inputenc除了显示警告外,对 XeLaTeX 不执行任何操作;

  2. 参数\bibliography不应该有.bib扩展(它适用于 MiKTeX,但不适用于其他 TeX 发行版);

  3. filecontents*环境仅用于使示例自成一体。

相关内容