hyperref
我发现,当包和同时存在时xeCJK
,无论按什么顺序,命令、等中的破折号都会引发错误Improper alphabetic constant
。这在 TeXLive 2012 中会发生,但在 2011 中不会发生。这是一个 MWE:\section
\subsection
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage{xeCJK}
\usepackage{hyperref} % adds clickable links to TOC
\begin{document}
\section{O my swineherd!}
\subsection{Em-dash --- in subsection}
\end{document}
短破折号不会引起同样的问题。
临时权宜之计
\usepackage[unicode,psdextra]{hyperref}
提供https://tex.stackexchange.com/a/69354/3935在这里不起作用;临时权宜之计
\subsection{Em-dash \texorpdfstring{---}{} in subsection}
下列的https://tex.stackexchange.com/a/69338/3935确实有效,但我更想弄清楚根本问题。有什么想法吗?
现在,我已恢复使用 TeXLive 2011。
答案1
我没有收到任何错误。
更新你的 TeX Live 2012在线的(使用tlmgr
)而不是一次又一次地重新安装它(旧版本)。
在序言中使用\listfiles
以在日志中显示软件包的版本。这是我的:
xeCJK.sty 2012/10/27 v3.0.10 expl3.sty 2012/09/29 v4249 fontspec.sty 2012/05/06 v2.2b hyperref.sty 2012/10/31 v6.83l