---
texmf-dist/doc/luatex/luatextra/README | 17 +
texmf-dist/source/lualatex/luainputenc/luainputenc.dtx | 31 ++-
texmf-dist/source/luatex/luatextra/luatextra.dtx | 150 ++++++++++++-----
texmf-dist/tex/lualatex/luainputenc/eu2enc.def | 2
texmf-dist/tex/lualatex/luainputenc/eu2lmr.fd | 2
texmf-dist/tex/lualatex/luainputenc/luainputenc.lua | 4
texmf-dist/tex/lualatex/luainputenc/luainputenc.sty | 7
texmf-dist/tex/lualatex/luainputenc/lutf8.def | 2
texmf-dist/tex/lualatex/luainputenc/lutf8x.def | 2
texmf-dist/tex/luatex/luatextra/luatextra.lua | 39 +++-
texmf-dist/tex/luatex/luatextra/luatextra.sty | 57 ++++--
11 files changed, 238 insertions(+), 75 deletions(-)
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/eu2enc.def
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/eu2enc.def 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/eu2enc.def 2009-12-29 07:22:59.000000000 +0900
@@ -26,7 +26,7 @@
%% eu2enc.def, eu2lmr.fd and luainputenc.pdf
%%
-\ProvidesFile{eu2enc.def}[2009/09/23 v0.1 a unicode font encoding for LuaTeX.]
+\ProvidesFile{eu2enc.def}[2009/11/20 v0.1 a unicode font encoding for LuaTeX.]
\DeclareFontEncoding{EU2}{}{}
\DeclareErrorFont{EU2}{lmr}{m}{n}{10}
\DeclareFontSubstitution{EU2}{lmr}{m}{n}
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/eu2lmr.fd
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/eu2lmr.fd 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/eu2lmr.fd 2009-12-29 07:22:59.000000000 +0900
@@ -27,7 +27,7 @@
%%
\ProvidesFile{eu2lmr.fd}
- [2009/09/23 v0.2 Font defs for Latin Modern for LuaTeX's EU2 encoding]
+ [2009/11/20 v0.2 Font defs for Latin Modern for LuaTeX's EU2 encoding]
\DeclareFontFamily{EU2}{lmr}{}
\DeclareFontShape{EU2}{lmr}{m}{n}%
{<-5.5> "lmroman5-regular:+tlig;+tsub;+liga;+rlig;"
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/luainputenc.lua
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/luainputenc.lua 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/luainputenc.lua 2009-12-29 07:22:59.000000000 +0900
@@ -30,8 +30,8 @@
luainputenc.module = {
name = "luainputenc",
- version = 0.94,
- date = "2009/09/23",
+ version = 0.95,
+ date = "2009/11/20",
description = "Lua simple inputenc package.",
author = "Elie Roux",
copyright = "Elie Roux",
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/luainputenc.sty
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/luainputenc.sty 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/luainputenc.sty 2009-12-29 07:22:59.000000000 +0900
@@ -28,7 +28,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{luainputenc}
- [2009/09/23 v0.94 inputenc package for LuaTeX]
+ [2009/11/20 v0.95 inputenc package for LuaTeX]
%% This file was adapted from inputenc.sty, which copyright is:
%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004
@@ -111,11 +111,12 @@
\@inpenc@loop\^^A\^^H%
\@inpenc@loop\^^K\^^K%
\@inpenc@loop\^^N\^^_%
- \advance\endlinechar\@M
+ \xdef\saved@endlinechar{\the\endlinechar }%
+ \endlinechar=-1
\xdef\saved@space@catcode{\the\catcode`\ }%
\catcode`\ 9\relax
\input{#1.def}%
- \advance\endlinechar-\@M
+ \endlinechar=\saved@endlinechar{}%
\catcode`\ \saved@space@catcode\relax
\ifx\@inpenc@test\relax\else
\PackageWarning{inputenc}%
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/lutf8.def
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/lutf8.def 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/lutf8.def 2009-12-29 07:22:59.000000000 +0900
@@ -44,7 +44,7 @@
\ProvidesFile{lutf8.def}
- [2009/09/23 v0.94 UTF-8 support for luainputenc]
+ [2009/11/20 v0.95 UTF-8 support for luainputenc]
\makeatletter
\catcode`\ \saved@space@catcode
Index: texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/lutf8x.def
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/lualatex/luainputenc/lutf8x.def 2009-12-29 07:22:30.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/lualatex/luainputenc/lutf8x.def 2009-12-29 07:22:59.000000000 +0900
@@ -44,7 +44,7 @@
\ProvidesFile{lutf8x.def}
- [2009/09/23 v0.94 UTF-8 support for luainputenc]
+ [2009/11/20 v0.95 UTF-8 support for luainputenc]
\makeatletter
\catcode`\ \saved@space@catcode
Index: texlive-base-2009/texmf-dist/source/lualatex/luainputenc/luainputenc.dtx
===================================================================
--- texlive-base-2009.orig/texmf-dist/source/lualatex/luainputenc/luainputenc.dtx 2009-12-29 07:23:54.000000000 +0900
+++ texlive-base-2009/texmf-dist/source/lualatex/luainputenc/luainputenc.dtx 2009-12-29 07:24:18.000000000 +0900
@@ -41,7 +41,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: luainputenc 2009/09/23 v0.94 inputenc package for LuaTeX}
+\Msg{* Package: luainputenc 2009/11/20 v0.95 inputenc package for LuaTeX}
\Msg{************************************************************************}
\keepsilent
@@ -129,7 +129,7 @@
%<package>
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{luainputenc}
-%<package> [2009/09/23 v0.94 inputenc package for LuaTeX]
+%<package> [2009/11/20 v0.95 inputenc package for LuaTeX]
%<package>
% \fi
%<*driver>
@@ -164,7 +164,7 @@
% \GetFileInfo{luainputenc.sty}
%
% \title{The \textsf{luainputenc} package}
-% \date{2009/09/23 v0.94}
+% \date{2009/11/20 v0.95}
% \author{Elie Roux \\ \texttt{elie.roux@telecom-bretagne.eu}}
%
% \maketitle
@@ -434,6 +434,12 @@
% |\@inpenc@loop\^^?\^^ff|, because it made no sense in UTF-8 mode. We will
% call this line for 8-bit encodings.
%
+% Note that the code has been changed for |\endlinechar|, because in new
+% versions (from v0.43) of Lua\TeX{} the value cannot exceed 127.
+% Thus, with the old version of \textsf{luainputenc}, when trying
+% to add 10000, it fails silently, and when 10000 is substracted, the
+% new value is -1, resulting in no end of lines at all in the document.
+%
% \begin{macrocode}
\def\inputencoding#1{%
@@ -444,11 +450,12 @@
\@inpenc@loop\^^A\^^H%
\@inpenc@loop\^^K\^^K%
\@inpenc@loop\^^N\^^_%
- \advance\endlinechar\@M
+ \xdef\saved@endlinechar{\the\endlinechar }%
+ \endlinechar=-1
\xdef\saved@space@catcode{\the\catcode`\ }%
\catcode`\ 9\relax
\input{#1.def}%
- \advance\endlinechar-\@M
+ \endlinechar=\saved@endlinechar{}%
\catcode`\ \saved@space@catcode\relax
\ifx\@inpenc@test\relax\else
\PackageWarning{inputenc}%
@@ -763,7 +770,7 @@
\ProvidesFile{lutf8.def}
- [2009/09/23 v0.94 UTF-8 support for luainputenc]
+ [2009/11/20 v0.95 UTF-8 support for luainputenc]
\makeatletter
\catcode`\ \saved@space@catcode
@@ -879,7 +886,7 @@
% \begin{macrocode}
\ProvidesFile{lutf8x.def}
- [2009/09/23 v0.94 UTF-8 support for luainputenc]
+ [2009/11/20 v0.95 UTF-8 support for luainputenc]
\makeatletter
\catcode`\ \saved@space@catcode
@@ -1024,7 +1031,7 @@
%
% \begin{macrocode}
-\ProvidesFile{eu2enc.def}[2009/09/23 v0.1 a unicode font encoding for LuaTeX.]
+\ProvidesFile{eu2enc.def}[2009/11/20 v0.1 a unicode font encoding for LuaTeX.]
\DeclareFontEncoding{EU2}{}{}
\DeclareErrorFont{EU2}{lmr}{m}{n}{10}
\DeclareFontSubstitution{EU2}{lmr}{m}{n}
@@ -1048,7 +1055,7 @@
% \begin{macrocode}
\ProvidesFile{eu2lmr.fd}
- [2009/09/23 v0.2 Font defs for Latin Modern for LuaTeX's EU2 encoding]
+ [2009/11/20 v0.2 Font defs for Latin Modern for LuaTeX's EU2 encoding]
\DeclareFontFamily{EU2}{lmr}{}
\DeclareFontShape{EU2}{lmr}{m}{n}%
{<-5.5> "lmroman5-regular:+tlig;+tsub;+liga;+rlig;"
@@ -1121,8 +1128,8 @@
luainputenc.module = {
name = "luainputenc",
- version = 0.94,
- date = "2009/09/23",
+ version = 0.95,
+ date = "2009/11/20",
description = "Lua simple inputenc package.",
author = "Elie Roux",
copyright = "Elie Roux",
@@ -1443,4 +1450,4 @@
% \fi
%
% \Finale
-\endinput
+\endinput
\ No newline at end of file
Index: texlive-base-2009/texmf-dist/source/luatex/luatextra/luatextra.dtx
===================================================================
--- texlive-base-2009.orig/texmf-dist/source/luatex/luatextra/luatextra.dtx 2009-12-29 07:26:24.000000000 +0900
+++ texlive-base-2009/texmf-dist/source/luatex/luatextra/luatextra.dtx 2009-12-29 07:26:32.000000000 +0900
@@ -34,7 +34,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: luatextra 2009/09/22 v0.94 Extra low level functions for LuaTeX}
+\Msg{* Package: luatextra 2009/12/16 v0.95 Extra low level functions for LuaTeX}
\Msg{************************************************************************}
\keepsilent
@@ -101,7 +101,7 @@
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{luaminimalotf.drv}%
- [2009/09/22 v0.94 LuaTeX extra low-level macros.]%
+ [2009/12/16 v0.95 LuaTeX extra low-level macros.]%
\documentclass{ltxdoc}
\EnableCrossrefs
\CodelineIndex
@@ -132,7 +132,7 @@
% \GetFileInfo{luatextra.drv}
%
% \title{The \textsf{luatextra} package}
-% \date{2009/09/22 v0.94}
+% \date{2009/12/16 v0.95}
% \author{Elie Roux \\ \texttt{elie.roux@telecom-bretagne.eu}}
%
% \maketitle
@@ -264,7 +264,7 @@
if luatextrapath:sub(1,2) == "./" then
luatextrapath = luatextrapath:sub(3)
end
- texio.write(' ('..luatextrapath)
+ texio.write_nl('('..luatextrapath)
end
end
@@ -292,9 +292,9 @@
luatextra.modules = {}
luatextra.modules['luatextra'] = {
- version = 0.94,
+ version = 0.95,
name = "luatextra",
- date = "2009/09/22",
+ date = "2009/12/16",
description = "Additional low level functions for LuaTeX",
author = "Elie Roux",
copyright = "Elie Roux, 2009",
@@ -426,7 +426,7 @@
if path:sub(1,2) == "./" then
path = path:sub(3)
end
- texio.write(' ('..path)
+ texio.write_nl('('..path)
dofile(path)
if not luatextra.modules[name] then
luatextra.internal_warning(format("You have requested module `%s',\n%s but the file %s does not provide it.", name, luatextra.internal_warning_spaces, filename))
@@ -635,6 +635,45 @@
% \end{macrocode}
%
+% With this function we create some shortcuts for a
+% better readability in lua code. This makes
+% |tex.catcodetablenumber.latex| equivalent to
+% |tex.catcodetablenumber['CatcodeTableLaTeX']|.
+%
+% \begin{macrocode}
+
+function luatextra.catcodetable_do_shortcuts()
+ local cat = tex.catcodetablenumber
+ local val = cat['CatcodeTableLaTeX']
+ if val then
+ cat['latex'] = val
+ end
+ val = cat['CatcodeTableLaTeXAtLetter']
+ if val then
+ cat['latex-package'] = val
+ cat['latex-atletter'] = val
+ end
+ val = cat['CatcodeTableIniTeX']
+ if val then
+ cat['ini'] = val
+ end
+ val = cat['CatcodeTableExpl']
+ if val then
+ cat['expl3'] = val
+ cat['expl'] = val
+ end
+ val = cat['CatcodeTableString']
+ if val then
+ cat['string'] = val
+ end
+ val = cat['CatcodeTableOther']
+ if val then
+ cat['other'] = val
+ end
+end
+
+% \end{macrocode}
+%
% \subsection{Multiple callbacks on the \texttt{open\_read\_file}
% callback\label{sub:orf}}
%
@@ -890,7 +929,7 @@
% \end{macrocode}
%
-% Then we load \textsf{ifluatex}.
+% Then we load \textsf{ifluatex} and etex if under \LaTeX.
%
% \begin{macrocode}
@@ -900,43 +939,66 @@
\fi
\else
\RequirePackage{ifluatex}
+ \NeedsTeXFormat{LaTeX2e}
+ \ProvidesPackage{luatextra}
+ [2009/12/16 v0.95 LuaTeX extra low-level macros]
+ \RequirePackage{etex}[1998/03/26]
\fi
-\expandafter\ifx\csname ProvidesPackage\endcsname\relax
% \end{macrocode}
%
-% If the package is loaded with Plain, we raise an error if the package is
-% called with a non-Lua\TeX\ engine, and we define
-% \texttt{\string\luaRequireModule} with two mandatory arguments.
+% The two macros \texttt{\string\LuaTeX} and \texttt{\string\LuaLaTeX} are
+% defined to Lua\TeX\ and Lua\LaTeX , because that's the way it's written
+% in the Lua\TeX 's manual (not in small capitals).
+%
+% These two macros are the only two loaded if we are under a non-Lua\TeX{}
+% engine.
+%
+% \begin{macrocode}
+
+\def\LuaTeX{Lua\TeX }
+\def\LuaLaTeX{Lua\LaTeX }
+
+% \end{macrocode}
+%
+% Here we end the loading of the file if we are under a non-Lua\TeX{}
+% engine, and we issue a warning.
%
% \begin{macrocode}
- \ifluatex\else
+
+\ifluatex\else
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
\immediate\write16{}
- \errmessage{Package luatextra Error: This package must be used with LuaTeX}
+ \immediate\write16{Package luatextra Warning: this package should be used with LuaTeX.}
+ \else
+ \PackageWarning{luatextra}{this package should be used with LuaTeX.}
\fi
+ \expandafter\endinput
+\fi
+
+\expandafter\ifx\csname ProvidesPackage\endcsname\relax
+% \end{macrocode}
+%
+% If the package is loaded with Plain, we define
+% \texttt{\string\luaRequireModule} with two mandatory arguments.
+%
+% \begin{macrocode}
\def\luatexRequireModule#1#2{\luadirect{luatextra.require_module([[#1]], [[#2]])}}
\else
% \end{macrocode}
%
-% If the package is loaded with \LaTeX , we also print the error message,
-% and we define \texttt{\string\luaRequireModule} with one mandatory
+% If the package is loaded with \LaTeX , we define
+% \texttt{\string\luaRequireModule} with one mandatory
% argument (the name of the package) and one optional (the version or the
% date). We also define the environment \texttt{luacode}.
%
% \begin{macrocode}
- \ifluatex\else
- \PackageError{luatextra}{This package must be used with LuaTeX.}
- \fi
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{luatextra}
- [2009/04/15 v0.93 LuaTeX extra low-level macros]
\RequirePackage{environ}
\NewEnviron{luacode}{\luadirect{\BODY}}
\newcommand\luatexRequireModule[2][0]{\luadirect{luatextra.require_module([[#2]], [[#1]])}}
% \end{macrocode}
%
-% We also require the package \textsf{etex} to be loaded. The
-% \texttt{\string\input} is a hack that modifies some values in the
+% The \texttt{\string\input} is a hack that modifies some values in the
% register attribution scheme of $\varepsilon$-\TeX\ and remaps
% \texttt{\string\newcount} to \textsf{etex}'s \texttt{\string\globcount}.
% We have to do such a remapping in a separate file that Plain doesn't see,
@@ -945,23 +1007,11 @@
% macro). See section \ref{sub:latex} for the file content.
%
% \begin{macrocode}
- \RequirePackage{etex}[1998/03/26]%
\input luatextra-latex.tex
\fi
% \end{macrocode}
%
-% The two macros \texttt{\string\LuaTeX} and \texttt{\string\LuaLaTeX} are
-% defined to Lua\TeX\ and Lua\LaTeX , because that's the way it's written
-% in the Lua\TeX 's manual (not in small capitals).
-%
-% \begin{macrocode}
-
-\def\LuaTeX{Lua\TeX }
-\def\LuaLaTeX{Lua\LaTeX }
-
-% \end{macrocode}
-%
% \subsection{Primitives renaming}
%
% Here we differenciate two very different cases: Lua\TeX\ version < 0.36
@@ -1207,6 +1257,9 @@
% \item \texttt{\string\CatcodeTableOther}: all characters have catcode 12
% (even space)
% \item \texttt{\string\CatcodeTableLaTeX}: the \LaTeX\ classical catcodes
+% \item \texttt{\string\CatcodeTableLaTeXAtLetter}: the \LaTeX\ classical
+% catcodes and |@| letter
+% \item \texttt{\string\CatcodeTableExpl}: the expl3 catcodes
% \end{itemize}
%
% \begin{macrocode}
@@ -1215,6 +1268,8 @@
\newluatexcatcodetable\CatcodeTableString
\newluatexcatcodetable\CatcodeTableOther
\newluatexcatcodetable\CatcodeTableLaTeX
+\newluatexcatcodetable\CatcodeTableLaTeXAtLetter
+\newluatexcatcodetable\CatcodeTableExpl
\initluatexcatcodetable\CatcodeTableIniTeX
\expandafter\ifx\csname @firstofone\endcsname\relax
@@ -1241,6 +1296,27 @@
\catcode126=13 % tilde
\catcode127=15 %
\saveluatexcatcodetable\CatcodeTableLaTeX
+ \catcode64=11 %
+ \saveluatexcatcodetable\CatcodeTableLaTeXAtLetter
+ \endgroup
+ \begingroup
+ \luatexsetcatcoderange{0}{8}{15}%
+ \catcode9=9 % tab ignored
+ \catcode11=15 %
+ \catcode12=13 % form feed
+ \luatexsetcatcoderange{14}{31}{15}%
+ \catcode32=9 % space is ignored
+ \catcode35=6 % hash mark is macro parameter character
+ \catcode36=3 % dollar (not so sure about the catcode...)
+ \catcode38=4 % ampersand
+ \catcode58=11 % colon letter
+ \catcode94=7 % circumflex is superscript character
+ \catcode95=11 % underscore letter
+ \catcode123=1 % left brace is begin-group character
+ \catcode125=2 % right brace is end-group character
+ \catcode126=10 % tilde is a space char.
+ \catcode127=15 %
+ \saveluatexcatcodetable\CatcodeTableExpl
\endgroup
\@makeother{0}% nul
\@makeother{13}% carriage return
@@ -1257,6 +1333,8 @@
\ltxtra@AtEnd
+\luadirect{luatextra.catcodetable_do_shortcuts()}
+
% \end{macrocode}
%
% We provide some functions for backward compatibility with old versions of luatextra.
Index: texlive-base-2009/texmf-dist/tex/luatex/luatextra/luatextra.lua
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/luatex/luatextra/luatextra.lua 2009-12-29 07:26:24.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/luatex/luatextra/luatextra.lua 2009-12-29 07:26:32.000000000 +0900
@@ -21,7 +21,7 @@
if luatextrapath:sub(1,2) == "./" then
luatextrapath = luatextrapath:sub(3)
end
- texio.write(' ('..luatextrapath)
+ texio.write_nl('('..luatextrapath)
end
end
@@ -34,9 +34,9 @@
luatextra.modules = {}
luatextra.modules['luatextra'] = {
- version = 0.94,
+ version = 0.95,
name = "luatextra",
- date = "2009/09/22",
+ date = "2009/12/16",
description = "Additional low level functions for LuaTeX",
author = "Elie Roux",
copyright = "Elie Roux, 2009",
@@ -126,7 +126,7 @@
if path:sub(1,2) == "./" then
path = path:sub(3)
end
- texio.write(' ('..path)
+ texio.write_nl('('..path)
dofile(path)
if not luatextra.modules[name] then
luatextra.internal_warning(format("You have requested module `%s',\n%s but the file %s does not provide it.", name, luatextra.internal_warning_spaces, filename))
@@ -251,6 +251,37 @@
end
+function luatextra.catcodetable_do_shortcuts()
+ local cat = tex.catcodetablenumber
+ local val = cat['CatcodeTableLaTeX']
+ if val then
+ cat['latex'] = val
+ end
+ val = cat['CatcodeTableLaTeXAtLetter']
+ if val then
+ cat['latex-package'] = val
+ cat['latex-atletter'] = val
+ end
+ val = cat['CatcodeTableIniTeX']
+ if val then
+ cat['ini'] = val
+ end
+ val = cat['CatcodeTableExpl']
+ if val then
+ cat['expl3'] = val
+ cat['expl'] = val
+ end
+ val = cat['CatcodeTableString']
+ if val then
+ cat['string'] = val
+ end
+ val = cat['CatcodeTableOther']
+ if val then
+ cat['other'] = val
+ end
+end
+
+
function luatextra.open_read_file(filename)
local path = kpse.find_file(filename)
local env = {
Index: texlive-base-2009/texmf-dist/tex/luatex/luatextra/luatextra.sty
===================================================================
--- texlive-base-2009.orig/texmf-dist/tex/luatex/luatextra/luatextra.sty 2009-12-29 07:26:24.000000000 +0900
+++ texlive-base-2009/texmf-dist/tex/luatex/luatextra/luatextra.sty 2009-12-29 07:26:32.000000000 +0900
@@ -25,33 +25,37 @@
\fi
\else
\RequirePackage{ifluatex}
+ \NeedsTeXFormat{LaTeX2e}
+ \ProvidesPackage{luatextra}
+ [2009/12/16 v0.95 LuaTeX extra low-level macros]
+ \RequirePackage{etex}[1998/03/26]
\fi
-\expandafter\ifx\csname ProvidesPackage\endcsname\relax
- \ifluatex\else
+
+\def\LuaTeX{Lua\TeX }
+\def\LuaLaTeX{Lua\LaTeX }
+
+
+\ifluatex\else
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
\immediate\write16{}
- \errmessage{Package luatextra Error: This package must be used with LuaTeX}
+ \immediate\write16{Package luatextra Warning: this package should be used with LuaTeX.}
+ \else
+ \PackageWarning{luatextra}{this package should be used with LuaTeX.}
\fi
+ \expandafter\endinput
+\fi
+
+\expandafter\ifx\csname ProvidesPackage\endcsname\relax
\def\luatexRequireModule#1#2{\luadirect{luatextra.require_module([[#1]], [[#2]])}}
\else
- \ifluatex\else
- \PackageError{luatextra}{This package must be used with LuaTeX.}
- \fi
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{luatextra}
- [2009/04/15 v0.93 LuaTeX extra low-level macros]
\RequirePackage{environ}
\NewEnviron{luacode}{\luadirect{\BODY}}
\newcommand\luatexRequireModule[2][0]{\luadirect{luatextra.require_module([[#2]], [[#1]])}}
- \RequirePackage{etex}[1998/03/26]%
\input luatextra-latex.tex
\fi
-\def\LuaTeX{Lua\TeX }
-\def\LuaLaTeX{Lua\LaTeX }
-
-
\ifnum\luatexversion<36
\def\directlua{\pdfprimitive\directlua0}
\def\latelua{\pdfprimitive\latelua0}
@@ -189,6 +193,8 @@
\newluatexcatcodetable\CatcodeTableString
\newluatexcatcodetable\CatcodeTableOther
\newluatexcatcodetable\CatcodeTableLaTeX
+\newluatexcatcodetable\CatcodeTableLaTeXAtLetter
+\newluatexcatcodetable\CatcodeTableExpl
\initluatexcatcodetable\CatcodeTableIniTeX
\expandafter\ifx\csname @firstofone\endcsname\relax
@@ -215,6 +221,27 @@
\catcode126=13 % tilde
\catcode127=15 %
\saveluatexcatcodetable\CatcodeTableLaTeX
+ \catcode64=11 %
+ \saveluatexcatcodetable\CatcodeTableLaTeXAtLetter
+ \endgroup
+ \begingroup
+ \luatexsetcatcoderange{0}{8}{15}%
+ \catcode9=9 % tab ignored
+ \catcode11=15 %
+ \catcode12=13 % form feed
+ \luatexsetcatcoderange{14}{31}{15}%
+ \catcode32=9 % space is ignored
+ \catcode35=6 % hash mark is macro parameter character
+ \catcode36=3 % dollar (not so sure about the catcode...)
+ \catcode38=4 % ampersand
+ \catcode58=11 % colon letter
+ \catcode94=7 % circumflex is superscript character
+ \catcode95=11 % underscore letter
+ \catcode123=1 % left brace is begin-group character
+ \catcode125=2 % right brace is end-group character
+ \catcode126=10 % tilde is a space char.
+ \catcode127=15 %
+ \saveluatexcatcodetable\CatcodeTableExpl
\endgroup
\@makeother{0}% nul
\@makeother{13}% carriage return
@@ -231,6 +258,8 @@
\ltxtra@AtEnd
+\luadirect{luatextra.catcodetable_do_shortcuts()}
+
\let\newluaattribute\newluatexattribute
\let\luaattribute\luatexattribute
Index: texlive-base-2009/texmf-dist/doc/luatex/luatextra/README
===================================================================
--- texlive-base-2009.orig/texmf-dist/doc/luatex/luatextra/README 2009-12-29 07:29:21.000000000 +0900
+++ texlive-base-2009/texmf-dist/doc/luatex/luatextra/README 2009-12-29 07:29:58.000000000 +0900
@@ -21,6 +21,23 @@
This package is developped on <http://github.com/eroux/lualatex/tree/master>.
+History
+-------
+
+2009/12/16, luatextra v0.95:
+ * package can now be loaded with a different engine, it then loads only
+ \LuaTeX and \LuaLaTeX
+ * \CatcodeTableLaTeXAtLetter and \CatcodeTableExpl have appeared
+ * short names have been added to the tex.catcodetablenumber table
+
+2009/09/22, luatextra v0.94:
+ * prefixing macros with \luatex instead of \lua, to be coherent with
+ TeX Live 2009.
+
+2009/09/18, luamcallbacks v0.93:
+ * adding the callback process_output_buffer, to use it with luainputenc
+
+
Installation
------------