[XeTeX] XeTeX 0.99994 and xeCJK

Qing Lee sobenlee at gmail.com
Sun Feb 7 04:29:29 CET 2016


On 2016-02-07 at 07:26:18 +0800 GMT, Akira Kakuto wrote:
> Dear xeCJK authors,
>
> In the developing XeTeX, which will be in the upcoming TeX Live 2016,
> the limit of character class is changed as:
>
> @d char_class_limit = 16384
> @d char_class_ignored == char_class_limit
> @d char_class_boundary == (char_class_limit - 1)
>
> If I test xeCJK with the new XeTeX:
>
> \documentclass{article}
> \usepackage{xeCJK}
> \begin{document}
> Test.
> \end{document}
>
> it crashes as shown below.
> In the case of the old
> @d char_class_limit = 256
> there is no error, of course.
>
> I think the new XeTeX can be discriminated from the old one like     \ifnum\strcmp{\XeTeXrevision}{.99993}>0
>      New XeTeX
>      \else
>      Old XeTeX
>      \fi
>
> Is it possible to support the new XeTeX in xeCJK?
> Sorry to bother you.
>
> Best regards,
> Akira
>
> ------------
> This is XeTeX, Version 3.14159265-2.6-0.99994 (TeX Live 2016/W32TeX/dev) (preloaded form
> at=xelatex)
> restricted \write18 enabled.
> entering extended mode
> (./tt.tex
> LaTeX2e <2016/02/01>
> Babel <3.9o> and hyphenation patterns for 80 language(s) loaded.
> (c:/usr/local/share/texmf-dist/tex/latex/base/article.cls
> Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
> (c:/usr/local/share/texmf-dist/tex/latex/base/size10.clo))
> (c:/usr/local/share/texmf-dist/tex/xelatex/xecjk/xeCJK.sty
> (c:/usr/local/share/texmf-dist/tex/latex/l3kernel/expl3.sty
> (c:/usr/local/share/texmf-dist/tex/latex/l3kernel/expl3-code.tex)
> (c:/usr/local/share/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def))
> (c:/usr/local/share/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty)
> (c:/usr/local/share/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)
> (c:/usr/local/share/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty)
> (c:/usr/local/share/texmf-dist/tex/latex/fontspec/fontspec.sty
> (c:/usr/local/share/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
> (c:/usr/local/share/texmf-dist/tex/latex/base/fontenc.sty
> (c:/usr/local/share/texmf-dist/tex/latex/euenc/eu1enc.def)
> (c:/usr/local/share/texmf-dist/tex/latex/euenc/eu1lmr.fd))
> (c:/usr/local/share/texmf-dist/tex/xelatex/xunicode/xunicode.sty
> (c:/usr/local/share/texmf-dist/tex/latex/tipa/t3enc.def
> (c:/usr/local/share/texmf-dist/tex/latex/euenc/eu1lmss.fd))
> (c:/usr/local/share/texmf-dist/tex/latex/graphics/graphicx.sty
> (c:/usr/local/share/texmf-dist/tex/latex/graphics/keyval.sty)
> (c:/usr/local/share/texmf-dist/tex/latex/graphics/graphics.sty
> (c:/usr/local/share/texmf-dist/tex/latex/graphics/trig.sty)
> (c:/usr/local/share/texmf-dist/tex/xelatex/graphics/graphics.cfg)
> (c:/usr/local/share/texmf-dist/tex/xelatex/xetex-def/xetex.def
> (c:/usr/local/share/texmf-dist/tex/generic/oberdiek/infwarerr.sty)
> (c:/usr/local/share/texmf-dist/tex/generic/oberdiek/ltxcmds.sty)))))
> (c:/usr/local/share/texmf-dist/tex/latex/fontspec/fontspec.cfg)))
> (c:/usr/local/share/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty)
> (c:/usr/local/share/texmf-dist/tex/xelatex/xunicode/xunicode.sty
> *** Reloading Xunicode for encoding 'EU1' ***
> ) (c:/usr/local/share/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def)
> (c:/usr/local/share/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg))
> *************************************************
> * xeCJK warning: "fandol"
> *
> * Fandol is being set as the default font for CJK text.
> * Please make sure it has been properly installed.
> *************************************************
> *************************************************
> * fontspec warning: "script-not-exist"
> *
> * Font 'FandolSong-Regular' does not contain script 'CJK'.
> *************************************************
> No file tt.aux.
> (c:/usr/local/share/texmf-dist/tex/latex/tipa/t3cmr.fd)
> --- crashes here ---
>

Dear Akira-san,

It is easy to support this extension in xeCJK
(https://github.com/CTeX-org/ctex-kit/commit/e8b6e404d16bc2c5040192c280abab43d556c046).

But I find two issues after installing new XeTeX from w32tex.org.

Firstly, the character class argument of \XeTeXinterchartoks seems not to be enlarged:

\XeTeXinterchartoks 1 300 = {\relax}
\bye

I get

This is XeTeX, Version 3.14159265-2.6-0.99994 (TeX Live 2016/W32TeX/dev) (preloaded format=xetex 2016.2.7)  7 FEB 2016 11:06
entering extended mode
  restricted \write18 enabled.
  %&-line parsing enabled.
**./z.tex
(./z.tex
! Bad register code (300).
l.15 \XeTeXinterchartoks 1 300
                                = {\relax}
?
  )
No pages of output.

Moreover, the character class functionality seems to be broken:

\XeTeXinterchartokenstate = 1
ab
\bye

I get a Windows error message which says that xetex.exe has stopped working.

Best regards,
Qing Lee


More information about the XeTeX mailing list