bidi 和 hyperref 更改连字符

bidi 和 hyperref 更改连字符

我尝试编译以下文档。如果我同时加载bidihyperref,Mittelbach 就不会被连字符连接。如果我注释掉其中一个,一切都会好起来。文件bst在这里:http://celxj.org/downloads/unified.bst

\documentclass{scrbook}

\usepackage{natbib}
\bibliographystyle{unified} 

\usepackage[hyphens]{url}
\urlstyle{same}


\usepackage{hyperref}

\usepackage{bidi}

\usepackage{filecontents}

\begin{filecontents}{SM.bib}
@book{GMS2013a,
        Address = {Boston},
        Author = {Frank Mittelbach and Michael Goossens},
        Edition = {2},
        Publisher = {Addison-Wesley},
        Title = {The {\LaTeX} Companion},
        Year = {2013}}
\end{filecontents}

\begin{document}

Xx There is a huge amount of packages that can be used for various purposes. \citet{GMS2013a} is a good
reference book.

\bibliography{SM}

\end{document}

答案1

更新2:Peter Breitenlohner 说道:

tex.web解决方案可能是修改([40] Pre-hyphenation)中“潜在可连字符部分”的定义。

\hyphenation{first-word next-word last-word}
\showhyphens{start $ $firstword nextword nextword lastword$ $ end}
\bye

这似乎不是 bidi 的问题,而是 etex 的问题。尝试以下操作(不使用bidi):

\documentclass{scrbook}

\usepackage{natbib}
\bibliographystyle{unified} 

\usepackage[hyphens]{url}
\urlstyle{same}


\usepackage{hyperref}

%\usepackage{bidi}

\TeXXeTstate=1

\usepackage{filecontents}

\begin{filecontents}{SM.bib}
@book{GMS2013a,
        Address = {Boston},
        Author = {Frank Mittelbach and Michael Goossens},
        Edition = {2},
        Publisher = {Addison-Wesley},
        Title = {The {\LaTeX} Companion},
        Year = {2013}}
\end{filecontents}

\begin{document}
Xx There is a huge amount of packages that can be used for various purposes. \beginL\citet{GMS2013a}\endL{} is a good
reference book.

\bibliography{SM}

\end{document}

甚至一个更简单的例子:

\documentclass{scrbook}
\TeXXeTstate=1
\begin{document}
Xx There is a huge amount of packages that can be used for various purposes. \beginL Mittelbach \&  Goossens\endL{} is a good
reference book.
\end{document}

另外,您在评论中所说的有关 bidi 手册和 hyperref 的内容与此无关。

更新:我已经向 e-tex 的作者报告了这个问题;希望他能解决这个问题。好吧,从我这边来说,除了等待他的回复之外,没有别的办法了。

答案2

TeXLive 源中已修复此问题。请参阅这次提交。因此请等待 texlive 2014 或从源代码构建 xetex。

相关内容