3

Using XeLaTeX in TeX Live 2015 seems to break classic LaTeX quotations (or force unicode entry, depending on how one looks at it).

Results

TeX Live 2014

fontspec.sty 2015/03/14 v2.4c Font selection for XeLaTeX and LuaLaTeX

``something quoted'' appears as “something quoted”

TeX Live 2015

fontspec.sty 2016/01/30 v2.5 Font selection for XeLaTeX and LuaLaTeX

``something quoted'' appears as ``something quoted''.

Is this normal? I saw this question: Left and right quotation marks aren't correct when using fontspec, but nothing has changed in my source code. Adding Ligatures=TeX as a parameter to \setmainfont seems to fix the issue, but why just in TeX Live 2015?

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

Release Notes for fontspec

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

v2.5a (2016/02/01) "bugs fixed"

  • Rather embarrassing bug fix! (unicode-math was broken.)
  • Remember to add the fontspec.cfg file to the distribution.
  • Remove +trep from Ligatures=TeX (no longer necessary).
  • Add some basic tests using l3build; more to come.
  • Simplify some internal Lua code and package loading code.

v2.5 (2016/01/30) "TL2016 re­lease"

  • Provide a new Unicode font encoding ("TU") to replace EU1/EU2 and xunicode. If this causes problems, load fontspec with the [euenc] option to revert to the old behaviour.
  • New command \emfontdeclare for defining font shapes when arbitrarily nesting the \emph command.
  • Allow slanted small caps and better internal methods for "combining" font shapes; this fixes a few bugs.
  • Incorporate "new" font script tags for Indic fonts. E.g., when selecting Script=Bengali, fontspec will first query the font for the bng2 OpenType script, and if not found select beng.
  • Restrict some font features from being able to be used within \addfontfeatures that were causing some font-loading confusion.
  • Fixed behaviour in which \baselineskip and \f@size would (possibly) change values after loading the packge.
  • Remove copy of fixltx2e's code for footnote symbols; handled by LaTeX2e now.
  • Deprecate ExternalLocation for the simpler (and identical) Path option.
  • Improvement to some warnings/info messages.
  • Improve structure of code.
  • I get exactly the same for the two lines with an up-to-date TL 2015. What fonts are included in your pdf? It should be LMRoman10-Regular-Identity-H CID Type 0C –  Feb 05 '16 at 07:03
  • @Herbert It happens when switching fonts. The issue occurs with DejaVu Sans. This code works fine in 2014. – Jonathan Komar Feb 05 '16 at 07:22
  • Have you updated to the very latest version of fontspec? There was a bug, quickly corrected, in the second-to-last release. – Will Robertson Feb 05 '16 at 07:46
  • @macmadness86: works also fine with DejaVu and up-to-date TL –  Feb 05 '16 at 07:55
  • 1
    Version 2.5 forgot to add fontspec.cfg, where Ligatures=TeX is specified as default feature. See http://chat.stackexchange.com/transcript/41?m=27244271#27244271 – egreg Feb 05 '16 at 09:49
  • 4
    I'm voting to close this question as off-topic because this is about a bug that has been fixed in a release issued before the question was made – egreg Feb 05 '16 at 09:50
  • 2
    @egreg Ok, I voted to close it. That designation "off-topic" still needs to be changed to something like "bug already fixed". The question itself is clearly on topic. What i mean is that it was deemed off-topic after the fact. A truly off-topic question will be off-topic at all points in time. – Jonathan Komar Feb 05 '16 at 09:59
  • 1
    For anybody who is struggling with figuring this out, it is very "on topic". – A Feldman Feb 05 '16 at 14:51

1 Answers1

4

fontspec v2.5a (2016/02/01) "bugs fixed" solves the issue.

  • Version 2.5 did not include fontspec.cfg where Ligatures=TeX was specified as a default feature.

Ligatures=TeX is a default option for fonts loaded by fontspec normally. I therefore did not specify it as a parameter in my documents. In TeX Live 2015, it accidentally became non-default. This meant that LaTeX was not creating ligatures out of the character combinations `` and ''.