summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/tex/latex/latexconfig/dvilualatex.ini30
-rw-r--r--Master/texmf-dist/tex/latex/latexconfig/lualatex-reset-codes.tex33
-rw-r--r--Master/texmf-dist/tex/latex/latexconfig/lualatex.ini25
-rw-r--r--Master/texmf-dist/tex/plain/config/dviluatex.ini4
4 files changed, 82 insertions, 10 deletions
diff --git a/Master/texmf-dist/tex/latex/latexconfig/dvilualatex.ini b/Master/texmf-dist/tex/latex/latexconfig/dvilualatex.ini
index c213f6193b3..d068a7cb29b 100644
--- a/Master/texmf-dist/tex/latex/latexconfig/dvilualatex.ini
+++ b/Master/texmf-dist/tex/latex/latexconfig/dvilualatex.ini
@@ -1,13 +1,31 @@
% $Id$
% Karl Berry, originally written 2008. public domain.
-%
+
+% must be done first (activation of primitives)
\input lualatexiniconfig.tex
-\input pdftexconfig
-\pdfoutput=0 % dvi output by default
-%
+
+% settings inherited from pdftex
+\input pdftexconfig.tex
+% pdf output by default
+
+% prevent latex.ltx from \dump-ing
+\let\DUMP\dump
+\let\dump\relax
+
% the usual format initialization.
\scrollmode
-\let\dump\relax
\input latex.ltx
+
+% latex.ltx sets \everyjob, so this must come afterwards
\input lualatexquotejobname.tex
-\pdfprimitive\dump
+
+% latex.ltx sets wrong (T1) \lccodes, \uccodes for the "80-"ff range
+\input lualatex-reset-codes.tex % reset them
+\input luatex-unicode-letters.tex % set codes based on Unicode (full range)
+% Note: unlike xelatex, we don't need to load unicode-letters before latex.ltx
+% (hence hyphenation patterns) due to diferences in \patterns hendling
+
+% restore \dump for derived formats (mylatex, etc) that might use it
+\let\dump\DUMP
+\let\DUMP\undefined
+\dump
diff --git a/Master/texmf-dist/tex/latex/latexconfig/lualatex-reset-codes.tex b/Master/texmf-dist/tex/latex/latexconfig/lualatex-reset-codes.tex
new file mode 100644
index 00000000000..cbee05cba09
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/latexconfig/lualatex-reset-codes.tex
@@ -0,0 +1,33 @@
+% $Id $
+% Manuel Pégourié-Gonnard, originally written 2010. WTFPL v2.
+
+% To be loaded after latex.ltx and before luatex-unicode-letters.tex.
+
+% latex.ltx (ltfinal.dtx) sets lccodes, uccodes, sfcodes and catcodes for
+% characters in the "00-"ff range.
+%
+% In the "80-"ff range, lccodes, uccodes & sfcodes are based on T1, and need
+% to be reset before the correct, Unicode-based, codes are set. Also, the
+% catcodes are set to 12 (other).
+%
+\begingroup
+\makeatletter
+\count@=128
+\loop \ifnum\count@<256
+ \global\uccode\count@=0
+ \global\lccode\count@=0
+ \global\sfcode\count@=1000
+ \global\catcode\count@=12
+ \advance\count@\@ne
+\repeat
+\endgroup
+
+% A few codes in the ASCII range are set by latex.ltx:
+%
+% \lccode`\^^[=`\^^[ % oe in OT1
+% \lccode`\- =`\- % default hyphen char
+% \lccode 127=127 % alternate hyphen char
+% \lccode 23 =23 % textcompwordmark in T1
+%
+% They don't look too problematic, so we don't reset them now, but this may
+% change later if problems are found.
diff --git a/Master/texmf-dist/tex/latex/latexconfig/lualatex.ini b/Master/texmf-dist/tex/latex/latexconfig/lualatex.ini
index 4a5e0e16b4a..d068a7cb29b 100644
--- a/Master/texmf-dist/tex/latex/latexconfig/lualatex.ini
+++ b/Master/texmf-dist/tex/latex/latexconfig/lualatex.ini
@@ -4,11 +4,28 @@
% must be done first (activation of primitives)
\input lualatexiniconfig.tex
-\input luatex-unicode-letters.tex
+% settings inherited from pdftex
\input pdftexconfig.tex
-% pdf output by default.
-\scrollmode
+% pdf output by default
+
+% prevent latex.ltx from \dump-ing
+\let\DUMP\dump
\let\dump\relax
+
+% the usual format initialization.
+\scrollmode
\input latex.ltx
+
+% latex.ltx sets \everyjob, so this must come afterwards
\input lualatexquotejobname.tex
-\pdfprimitive\dump
+
+% latex.ltx sets wrong (T1) \lccodes, \uccodes for the "80-"ff range
+\input lualatex-reset-codes.tex % reset them
+\input luatex-unicode-letters.tex % set codes based on Unicode (full range)
+% Note: unlike xelatex, we don't need to load unicode-letters before latex.ltx
+% (hence hyphenation patterns) due to diferences in \patterns hendling
+
+% restore \dump for derived formats (mylatex, etc) that might use it
+\let\dump\DUMP
+\let\DUMP\undefined
+\dump
diff --git a/Master/texmf-dist/tex/plain/config/dviluatex.ini b/Master/texmf-dist/tex/plain/config/dviluatex.ini
index 7c93be69dca..e4a1f86ad35 100644
--- a/Master/texmf-dist/tex/plain/config/dviluatex.ini
+++ b/Master/texmf-dist/tex/plain/config/dviluatex.ini
@@ -1,5 +1,9 @@
% $Id$
% Karl Berry, originally written 2008. Public domain.
% DVI output by default.
+
+% must be done first (activation of primitives)
\input luatexiniconfig.tex
+
+\input luatex-unicode-letters.tex
\input etex.ini