2

Two days ago when I installed a new package (breakurl) and it refused to run, I decided to update all my components. I installed the latest version of texlive for the mac and updated all my packages via tlmgr. After the normal sort of minor issues, I ran into one I couldn't address.

xelatex -shell-escape screen.tex
This is XeTeX, Version 3.14159265-2.6-0.99996 (TeX Live 2016) (preloaded format=xelatex)
 \write18 enabled.
entering extended mode
(./screen.tex
LaTeX2e <2016/03/31>
Babel <3.9r> and hyphenation patterns for 22 language(s) loaded.
(./main.tex (/usr/local/texlive/2016basic/texmf-dist/tex/latex/base/book.cls
Document Class: book 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/base/bk10.clo))
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/listings/listings.sty
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/listings/lstmisc.sty)
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/listings/listings.cfg))
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/fontspec/fontspec.sty
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/l3kernel/expl3-code.tex)
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def))
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
)
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
*************************************************
* fontspec warning: "tu-clash"
* 
* I have found the tuenc.def encoding definition file but the TU encoding is
* not defined by the LaTeX2e kernel; attempting to correct but you really
* should update to the latest version of LaTeX2e.
*************************************************
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/base/fontenc.sty
(/usr/local/texlive/2016basic/texmf-dist/tex/latex/base/tuenc.def
! Missing \endcsname inserted.
<to be read again> 
                   \def 
l.252 ...           \UnicodeEncodingName {}{"007E}

Note: I'm in the process of creating a minimal example that replicates this error. Here's to hoping that efforts helps me isolate the problem.

pydanny
  • 121
  • 4
  • 3
    This seems depressingly common on the mac but it is not clear why the configuration there is so fragile. You have LaTeX2e <2016/03/31> but are using the latex sources from 2017, so your format is 7 latex releases behind your installed files. You should be able to go texmf-sys --all and rebuild your formats (and perhaps delete any formats you have in your local area) – David Carlisle Mar 17 '17 at 17:44
  • see http://tex.stackexchange.com/questions/356931/fontspec-is-giving-me-some-absurd-error/356936#356936 – David Carlisle Mar 17 '17 at 17:45
  • as a quick workaround you can simply delete the two lines in tuenc.def that have empty argument {} but that only gets rid of the hard error it still leaves your system in the state it's been since April last year of having a format that is not being updated even when the latex sources on your system are updated – David Carlisle Mar 17 '17 at 17:49
  • please run kpsewhich -all --engine=xetex xelatex.fmt and report what it says as the paths for any xelatex.fmt that it finds. – David Carlisle Mar 17 '17 at 17:52
  • After running kpsewhich -all --engine=xetex xelatex.fmt it says: /usr/local/texlive/2016basic/texmf-var/web2c/xetex/xelatex.fmt – pydanny Mar 17 '17 at 18:04
  • I commented out the two lines in tuenc.def and got past that error. Thanks so much! – pydanny Mar 17 '17 at 18:07
  • Ahem... The new error is fontspec error: "font-not-found". I'll see if I can resolve on my own. – pydanny Mar 17 '17 at 18:07
  • 1
    Imho you should better try to find out why your system updates fontspec but not he formats. The newest fontspec expects the newest format and it is asking for trouble to use it with an older one. – Ulrike Fischer Mar 17 '17 at 18:13
  • I agree with updating the formats. I tried texmf-sys --all but my system doesn't have that command. Is there another way to force a rebuild? – pydanny Mar 17 '17 at 18:17
  • 2
    @pydanny It is sudo fmtutil-sys --all – egreg Mar 17 '17 at 18:19
  • @egreg That got rid of the original error! Even when I replaced the two lines in tuenc.def. But now I'm stuck with the fontspec error: "font-not-found" problem. I'll see if I can address that, and if I can't, I'll open a new discussion. – pydanny Mar 17 '17 at 18:24
  • 1
    The fontspec error: "font-not-found" was due to a corrupted font file. That's been replaced and now everything works great! – pydanny Mar 17 '17 at 22:32
  • 4
    I'm voting to close this question as off-topic as it was caused by a corrupted font. – Martin Schröder Mar 17 '17 at 23:01
  • 1
    Please don't close it as off-topic as the corrupted font was a tangential issue. The real problem was that on my mac I had to type sudo fmtutil-sys --all. Later today I'll write an answer for my problem. – pydanny Mar 24 '17 at 20:02

0 Answers0