texlive-base (2009-11+squeeze1) update-lualatex-modules

Summary

 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(-)

    
download this patch

Patch contents

---
 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
 ------------