结果

结果

在 TeX Live 2015 中使用XeLaTeX似乎会破坏经典的 LaTeX 引用(或强制输入 unicode,取决于如何看待它)。

结果

TeX Live 2014

fontspec.sty 2015/03/14 v2.4c XeLaTeX 和 LuaLaTeX 的字体选择

``something quoted''显示为“引用的内容”

TeX Live 2015

fontspec.sty 2016/01/30 v2.5 XeLaTeX 和 LuaLaTeX 的字体选择

``something quoted''显示为“引用的内容”。

这是正常的吗?我看到了这个问题:使用 fontspec 时左右引号不正确,但我的源代码没有任何变化。添加Ligatures=TeX参数似乎\setmainfont可以解决问题,但为什么只在 TeX Live 2015 中出现?

\documentclass{article}
\usepackage{fontspec}
\setmainfont{DejaVu Sans}
\begin{document}
\obeylines
``check it out''
“check it out”
\end{document}

发行说明fontspec

https://www.ctan.org/tex-archive/macros/xetex/latex/fontspec/?lang=en

v2.5a(2016/02/01)“修复错误”

  • 相当尴尬的错误修复!(unicode-math已损坏。)
  • 请记住将该文件添加fontspec.cfg到分发版中。
  • 删除(不再需要)+trepLigatures=TeX
  • 使用添加一些基本测试l3build;更多内容即将推出。
  • 简化一些内部Lua代码和包加载代码。

v2.5(2016/01/30)“TL2016 发布”

  • 提供新的 Unicode 字体编码(“TU”)来替代 EU1/EU2 和 xunicode。如果这导致问题,请加载 fontspec 并选择[euenc]恢复到旧行为。
  • \emfontdeclare任意嵌套命令时定义字体形状的新命令\emph
  • 允许倾斜的小型大写字母和更好的“组合”字体形状的内部方法;这修复了一些错误。
  • 为印度字体添加“新”字体脚本标签。例如,选择 时Script=Bengali,fontspec 将首先查询字体的bng2OpenType 脚本,如果未找到,则选择beng
  • 限制某些字体功能的使用,以免\addfontfeatures造成字体加载混乱。
  • \baselineskip修复了在加载包后和\f@size可能改变值的行为。
  • 删除fixltx2e脚注符号代码的副本;现在由 LaTeX2e 处理。
  • 弃用ExternalLocation更简单(且相同)Path的选项。
  • 改进一些警告/信息消息。
  • 改进代码结构。

答案1

fontspecv2.5a(2016/02/01)“错误修复”解决了该问题。

  • 2.5 版并未包含指定为默认功能的fontspec.cfg位置。Ligatures=TeX

Ligatures=TeX是通常加载的字体的默认选项fontspec。因此我没有在我的文档中将其指定为参数。在 TeX Live 2015 中,它意外地成为非违约。这意味着 LaTeX 不会通过字符组合``和创建连字''

相关内容