summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/tex/latex/latexconfig/xelatex.ini21
-rw-r--r--Master/texmf-dist/tex/plain/config/xetex.ini20
2 files changed, 39 insertions, 2 deletions
diff --git a/Master/texmf-dist/tex/latex/latexconfig/xelatex.ini b/Master/texmf-dist/tex/latex/latexconfig/xelatex.ini
index 6a2b7efebd7..c139c3aaa29 100644
--- a/Master/texmf-dist/tex/latex/latexconfig/xelatex.ini
+++ b/Master/texmf-dist/tex/latex/latexconfig/xelatex.ini
@@ -1,6 +1,6 @@
% xelatex.ini
% jonathan kew
-% updated: 16 June 2008
+% updated: 7 June 2009
% Public domain
\XeTeXuseglyphmetrics=1
\input unicode-letters
@@ -8,6 +8,25 @@
\expandafter\let\csname saved-dump-cs\endcsname\dump
\let\dump=\relax
\input latex.ltx
+%
+% Allocator for \XeTeXintercharclass values, from Enrico Gregorio
+%
+\catcode`\@=11
+\newcount\xe@alloc@intercharclass % allocates intercharclass
+\xe@alloc@intercharclass=\thr@@ % from 4 (1,2 and 3 are used by CJK, AFAIK)
+\def\xe@alloc@#1#2#3#4#5{\global\advance#1\@ne
+ \xe@ch@ck#1#4#2% make sure there's still room
+ \allocationnumber#1%
+ \global#3#5\allocationnumber
+ \wlog{\string#5=\string#2\the\allocationnumber}}
+\def\xe@ch@ck#1#2#3{%
+ \ifnum#1<#2\else
+ \errmessage{No room for a new #3}%
+ \fi}
+\def\newXeTeXintercharclass{%
+ \xe@alloc@\xe@alloc@intercharclass\XeTeXintercharclass\chardef\@cclv} %at most 254
+\catcode`\@=12
+%
% Because latex.ltx sets up character code tables for T1 encoding by default,
% we need to reset values from unicode-letters that may have been overridden
\begingroup
diff --git a/Master/texmf-dist/tex/plain/config/xetex.ini b/Master/texmf-dist/tex/plain/config/xetex.ini
index f66b58467af..7a4bde4d631 100644
--- a/Master/texmf-dist/tex/plain/config/xetex.ini
+++ b/Master/texmf-dist/tex/plain/config/xetex.ini
@@ -1,7 +1,7 @@
% xetex.ini
% jonathan kew
% public domain
-% updated: 15 Sept 2006
+% updated: 7 June 2009
%% Disable the \font\preloaded=... entries from plain.tex
%% as xetex is primarily intended for use with other fonts
@@ -29,6 +29,24 @@
\let\d@ntpreload=\und@fined
\let\sk@pf@nt=\und@fined
\let\s@vef@nt=\und@fined
+
+%
+% Allocator for \XeTeXintercharclass values, from Enrico Gregorio
+%
+\newcount\xe@alloc@intercharclass % allocates intercharclass
+\xe@alloc@intercharclass=\thr@@ % from 4 (1,2 and 3 are used by CJK, AFAIK)
+\def\xe@alloc@#1#2#3#4#5{\global\advance#1\@ne
+ \xe@ch@ck#1#4#2% make sure there's still room
+ \allocationnumber#1%
+ \global#3#5\allocationnumber
+ \wlog{\string#5=\string#2\the\allocationnumber}}
+\def\xe@ch@ck#1#2#3{%
+ \ifnum#1<#2\else
+ \errmessage{No room for a new #3}%
+ \fi}
+\def\newXeTeXintercharclass{%
+ \xe@alloc@\xe@alloc@intercharclass\XeTeXintercharclass\chardef\@cclv} %at most 254
+
\catcode`\@=12
\XeTeXuseglyphmetrics=1