latex3 / fontspec

Font selection in LaTeX for XeTeX and LuaTeX
http://latex3.github.io/fontspec/
LaTeX Project Public License v1.3c
276 stars 33 forks source link

Undefined control sequence \xetex_suppressfontnotfounderror:D #215

Closed itoijala closed 8 years ago

itoijala commented 8 years ago

The new update on CTAN breaks under both xelatex und lualatex.

EDIT: seems to be due to upcoming changes to expl3. Guess this was pushed to TL too early.

\documentclass{article}

\usepackage{fontspec}
\usepackage{unicode-math}

\begin{document}
foo
\end{document}

gives

! Undefined control sequence.
<argument> \xetex_suppressfontnotfounderror:D 

l.6 \begin{document}
josephwright commented 8 years ago

Update has gone to CTAN: expect this to be fixed by the next TL update.

vvilp commented 8 years ago

This bug has affected so many packages such as ctex, xeCJK.

wspr commented 8 years ago

@vvilp — sorry, it should be fixed very soon. I should have written this update with more care for the chance that the expl3 update wouldn't come through exactly in sync, but I was in a big rush to submit it before my wedding…

josephwright commented 8 years ago

@vvilp As I've already noted, this was spotted and updated within roughly 24 h of the issue. That does happen: updates are never 100% risk-free. (We are also extending our test system to catch more of these cases.)

syphar commented 8 years ago

@josephwright thanks for the fast fix :)

to give us a feeling, (without knowing CTAN details), when is the update available for tlmgr ?

syphar commented 8 years ago

anything we can do to help here?

ghost commented 8 years ago

Here is a quick fix, if any one need an urgent patch.

\expandafter\let\csname xetex_suppressfontnotfounderror:D\endcsname\suppressfontnotfounderror

Usage: putting this just before you loading the fontspec package, including the packages that will load fontspec internally.

syphar commented 8 years ago

Thanks @LiamHuang0205 :)

ghost commented 8 years ago

@wspr Glad to know and congs!

May all the dreams in your heart come true!

zhou13 commented 8 years ago

Unfortunately this workaround does not work for lualatex.

teoric commented 8 years ago

On the TeX live mailing list, Will Robertson posted:

\ifdefined\suppressfontnotfounderror
  \expandafter\let\csname xetex_suppressfontnotfounderror:D\endcsname
    \suppressfontnotfounderror
\else
  \expandafter\let\csname xetex_suppressfontnotfounderror:D\endcsname
  \luatexsuppressfontnotfounderror
\fi

, which works in both Lua and XeTeX for me.

ghost commented 8 years ago

@zhou13 This is because that if you are using LuaTeX, \suppressfontnotfounderror is undefined. You should use \luatexsuppressfontnotfounderror instead.

surmann commented 8 years ago

Thanks for this quick fix! To push the question from @syphar: When will be an update for tlmgr available?

josephwright commented 8 years ago

@surmann Updates to TeX Live are outside of the control of package authors! I understand from the TL team the update is likely to be made later today, but cannot guarantee it.

surmann commented 8 years ago

I know, its only for a feeling and to decide whether I wait for your update or do a quick fix. One day is perfect. Thanks!

ghost commented 8 years ago

@surmann From the time that the CTAN main server accepts authors' upload, it could take about 24 hours for mirrors of CTAN, all around the world, to sync. Hence, if everything goes well, you will be able to get the update from tlmgr later today.

I hope you chose an ''quick mirror''. : )

ghost commented 8 years ago

Since l3kernel has updated, this issue could be closed safely. @wspr

If anyone encounters this problem, just update packages in TeX system.

dflipo commented 8 years ago

The initial test file shown here compiles fine on my system (up to date TL2015) but the following one crashes with the same error:

! Undefined control sequence.

\xetex_suppressfontnotfounderror:D %%%%%%%% \documentclass{article} \usepackage{luatexbase} %%% ERROR if loaded before fontspec \usepackage{fontspec} \setmainfont{Latin Modern Roman} % \setmainfont{Erewhon} %%% same error % \usepackage{luatexbase} %%% No ERROR if loaded after fontspec \begin{document} TEST \end{document} %%%%%%%% Loading luatexbase after fontspec solves the issue.
davidcarlisle commented 8 years ago

Loading luatexbase after fontspec solves the issue.

yes sorry or better just don't load it at all (it shouldn't be needed) the load order problem is fixed in the development version of expl3 but it hasn't reached texlive/ctan yet, hopefully in a day or so.

David

wspr commented 8 years ago

this should be fixed for everyone by now