summaryrefslogtreecommitdiff
path: root/Build/source
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source')
-rw-r--r--Build/source/texk/web2c/Makefile.in108
-rw-r--r--Build/source/texk/web2c/luatexdir/ChangeLog6
-rw-r--r--Build/source/texk/web2c/luatexdir/NEWS11
-rw-r--r--Build/source/texk/web2c/luatexdir/am/libluatex.am1
-rw-r--r--Build/source/texk/web2c/luatexdir/dvi/dvigen.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/dvi/dvigen.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/dofont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/luafont.w7
-rw-r--r--Build/source/texk/web2c/luatexdir/font/luatexfont.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/mapfile.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/mapfile.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/pkin.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/sfnt.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/sfnt.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/subfont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/texfont.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/texfont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tfmofm.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tounicode.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tt_glyf.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tt_glyf.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tt_table.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/tt_table.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/vfovf.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/vfpacket.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writecff.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writecff.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writeenc.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writefont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writet1.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writet3.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writettf.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writettf.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writetype0.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/font/writetype2.w4
-rwxr-xr-xBuild/source/texk/web2c/luatexdir/getluatexsvnversion.sh1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/epdf.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/image.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/pdftoepdf.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/pdftoepdf.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writeimg.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writeimg.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejbig2.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejbig2.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejp2.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejp2.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejpg.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writejpg.w175
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writepng.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/image/writepng.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/lang/hyphen.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/lang/texlang.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/lang/texlang.w61
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lauxlib_bridge.h2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lcallbacklib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lepdflib.cc3
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lfontlib.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/limglib.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/liolibext.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lkpselib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/llanglib.c4
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/llfslibext.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/llualib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lnodelib.c88
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/loslibext.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lpdflib.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lstatslib.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lstrlibext.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/ltexiolib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/ltexlib.c5
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/ltokenlib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luagen.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luagen.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luainit.w25
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luajitstuff.w7
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luanode.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luastuff.w5
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luatex-api.h37
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/luatoken.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/texluac.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c3
-rw-r--r--Build/source/texk/web2c/luatexdir/luapeg/lpeg.c575
-rw-r--r--Build/source/texk/web2c/luatexdir/luapeg/lpeg.h59
-rw-r--r--Build/source/texk/web2c/luatexdir/luascripts/pdflua.c29
-rw-r--r--Build/source/texk/web2c/luatexdir/luascripts/pdflua.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/luascripts/pdflua.lua2
-rw-r--r--Build/source/texk/web2c/luatexdir/luascripts/txt2zlib.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/luatex-common.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/luatex.c13
-rw-r--r--Build/source/texk/web2c/luatexdir/luatex.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/luatexcallbackids.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/luazlib/lzlib.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfaction.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfaction.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfannot.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfannot.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfdest.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfdest.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdffont.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdffont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfgen.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfgen.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfglyph.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfimage.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfimage.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdflink.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdflink.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdflistout.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdflistout.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfliteral.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfliteral.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfobj.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfobj.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfoutline.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfoutline.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfpage.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfpage.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfrule.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfrule.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfshipout.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfshipout.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdftables.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdftables.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfthread.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfthread.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdftypes.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfxform.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfxform.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/ptexlib.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/align.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/align.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/arithmetic.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/arithmetic.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/buildpage.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/buildpage.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/commands.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/commands.w6
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/conditional.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/conditional.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/directions.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/directions.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/dumpdata.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/dumpdata.w8
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/equivalents.h4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/equivalents.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/errors.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/errors.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/expand.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/expand.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/extensions.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/extensions.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/filename.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/filename.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/inputstack.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/inputstack.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/linebreak.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/linebreak.w11
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mainbody.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mainbody.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/maincontrol.h2
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/maincontrol.w19
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mathcodes.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mathcodes.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/memoryword.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/memoryword.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mlist.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/mlist.w120
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/nesting.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/nesting.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/packaging.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/packaging.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/postlinebreak.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/postlinebreak.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/primitive.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/primitive.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/printing.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/printing.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/scanning.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/scanning.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/stringpool.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/stringpool.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texdeffont.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texdeffont.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texfileio.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texfileio.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texmath.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texmath.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texnodes.h8
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texnodes.w43
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/textcodes.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/textcodes.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/textoken.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/textoken.w12
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/avlstuff.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/avlstuff.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/managed-sa.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/managed-sa.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/unistring.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/unistring.w4
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/utils.h1
-rw-r--r--Build/source/texk/web2c/luatexdir/utils/utils.w4
214 files changed, 1008 insertions, 906 deletions
diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in
index 507bfd877b5..fe1b28004f0 100644
--- a/Build/source/texk/web2c/Makefile.in
+++ b/Build/source/texk/web2c/Makefile.in
@@ -573,6 +573,7 @@ am__objects_5 = luatexdir/lua/libluajittex_a-lcallbacklib.$(OBJEXT) \
luatexdir/lua/libluajittex_a-ltexiolib.$(OBJEXT) \
luatexdir/lua/libluajittex_a-ltexlib.$(OBJEXT) \
luatexdir/lua/libluajittex_a-ltokenlib.$(OBJEXT) \
+ luatexdir/lua/libluajittex_a-lnewtokenlib.$(OBJEXT) \
luatexdir/utils/libluajittex_a-avl.$(OBJEXT) \
synctexdir/libluajittex_a-synctex.$(OBJEXT)
am__objects_6 = libluajittex_a-dvigen.$(OBJEXT) \
@@ -732,6 +733,7 @@ am__objects_9 = luatexdir/lua/libluatex_a-lcallbacklib.$(OBJEXT) \
luatexdir/lua/libluatex_a-ltexiolib.$(OBJEXT) \
luatexdir/lua/libluatex_a-ltexlib.$(OBJEXT) \
luatexdir/lua/libluatex_a-ltokenlib.$(OBJEXT) \
+ luatexdir/lua/libluatex_a-lnewtokenlib.$(OBJEXT) \
luatexdir/utils/libluatex_a-avl.$(OBJEXT) \
synctexdir/libluatex_a-synctex.$(OBJEXT)
am__objects_10 = libluatex_a-dvigen.$(OBJEXT) \
@@ -3289,41 +3291,41 @@ dist_libluatex_sources = luatexdir/luatexcallbackids.h \
luatexdir/lua/loslibext.c luatexdir/lua/lpdflib.c \
luatexdir/lua/lstatslib.c luatexdir/lua/ltexiolib.c \
luatexdir/lua/ltexlib.c luatexdir/lua/ltokenlib.c \
- luatexdir/lua/luagen.h luatexdir/lua/luatex-api.h \
- luatexdir/pdf/pdfpagetree.h luatexdir/pdf/pdfaction.h \
- luatexdir/pdf/pdfannot.h luatexdir/pdf/pdfcolorstack.h \
- luatexdir/pdf/pdfdest.h luatexdir/pdf/pdffont.h \
- luatexdir/pdf/pdfgen.h luatexdir/pdf/pdfglyph.h \
- luatexdir/pdf/pdfimage.h luatexdir/pdf/pdflink.h \
- luatexdir/pdf/pdflistout.h luatexdir/pdf/pdfliteral.h \
- luatexdir/pdf/pdfluaapi.h luatexdir/pdf/pdfobj.h \
- luatexdir/pdf/pdfoutline.h luatexdir/pdf/pdfpage.h \
- luatexdir/pdf/pdfrule.h luatexdir/pdf/pdfsaverestore.h \
- luatexdir/pdf/pdfsetmatrix.h luatexdir/pdf/pdfshipout.h \
- luatexdir/pdf/pdftables.h luatexdir/pdf/pdfthread.h \
- luatexdir/pdf/pdftypes.h luatexdir/pdf/pdfxform.h \
- luatexdir/luascripts/pdflua.h luatexdir/tex/align.h \
- luatexdir/tex/arithmetic.h luatexdir/tex/buildpage.h \
- luatexdir/tex/commands.h luatexdir/tex/conditional.h \
- luatexdir/tex/directions.h luatexdir/tex/dumpdata.h \
- luatexdir/tex/equivalents.h luatexdir/tex/errors.h \
- luatexdir/tex/expand.h luatexdir/tex/extensions.h \
- luatexdir/tex/filename.h luatexdir/tex/inputstack.h \
- luatexdir/tex/linebreak.h luatexdir/tex/mainbody.h \
- luatexdir/tex/maincontrol.h luatexdir/tex/mathcodes.h \
- luatexdir/tex/memoryword.h luatexdir/tex/mlist.h \
- luatexdir/tex/nesting.h luatexdir/tex/packaging.h \
- luatexdir/tex/postlinebreak.h luatexdir/tex/primitive.h \
- luatexdir/tex/printing.h luatexdir/tex/scanning.h \
- luatexdir/tex/stringpool.h luatexdir/tex/texdeffont.h \
- luatexdir/tex/texfileio.h luatexdir/tex/texmath.h \
- luatexdir/tex/texnodes.h luatexdir/tex/textoken.h \
- luatexdir/tex/textcodes.h luatexdir/utils/avl.c \
- luatexdir/utils/avl.h luatexdir/utils/avlstuff.h \
- luatexdir/utils/managed-sa.h luatexdir/utils/utils.h \
- luatexdir/utils/unistring.h synctexdir/synctex-common.h \
- synctexdir/synctex-luatex.h synctexdir/synctex.c \
- synctexdir/synctex.h
+ luatexdir/lua/lnewtokenlib.c luatexdir/lua/luagen.h \
+ luatexdir/lua/luatex-api.h luatexdir/pdf/pdfpagetree.h \
+ luatexdir/pdf/pdfaction.h luatexdir/pdf/pdfannot.h \
+ luatexdir/pdf/pdfcolorstack.h luatexdir/pdf/pdfdest.h \
+ luatexdir/pdf/pdffont.h luatexdir/pdf/pdfgen.h \
+ luatexdir/pdf/pdfglyph.h luatexdir/pdf/pdfimage.h \
+ luatexdir/pdf/pdflink.h luatexdir/pdf/pdflistout.h \
+ luatexdir/pdf/pdfliteral.h luatexdir/pdf/pdfluaapi.h \
+ luatexdir/pdf/pdfobj.h luatexdir/pdf/pdfoutline.h \
+ luatexdir/pdf/pdfpage.h luatexdir/pdf/pdfrule.h \
+ luatexdir/pdf/pdfsaverestore.h luatexdir/pdf/pdfsetmatrix.h \
+ luatexdir/pdf/pdfshipout.h luatexdir/pdf/pdftables.h \
+ luatexdir/pdf/pdfthread.h luatexdir/pdf/pdftypes.h \
+ luatexdir/pdf/pdfxform.h luatexdir/luascripts/pdflua.h \
+ luatexdir/tex/align.h luatexdir/tex/arithmetic.h \
+ luatexdir/tex/buildpage.h luatexdir/tex/commands.h \
+ luatexdir/tex/conditional.h luatexdir/tex/directions.h \
+ luatexdir/tex/dumpdata.h luatexdir/tex/equivalents.h \
+ luatexdir/tex/errors.h luatexdir/tex/expand.h \
+ luatexdir/tex/extensions.h luatexdir/tex/filename.h \
+ luatexdir/tex/inputstack.h luatexdir/tex/linebreak.h \
+ luatexdir/tex/mainbody.h luatexdir/tex/maincontrol.h \
+ luatexdir/tex/mathcodes.h luatexdir/tex/memoryword.h \
+ luatexdir/tex/mlist.h luatexdir/tex/nesting.h \
+ luatexdir/tex/packaging.h luatexdir/tex/postlinebreak.h \
+ luatexdir/tex/primitive.h luatexdir/tex/printing.h \
+ luatexdir/tex/scanning.h luatexdir/tex/stringpool.h \
+ luatexdir/tex/texdeffont.h luatexdir/tex/texfileio.h \
+ luatexdir/tex/texmath.h luatexdir/tex/texnodes.h \
+ luatexdir/tex/textoken.h luatexdir/tex/textcodes.h \
+ luatexdir/utils/avl.c luatexdir/utils/avl.h \
+ luatexdir/utils/avlstuff.h luatexdir/utils/managed-sa.h \
+ luatexdir/utils/utils.h luatexdir/utils/unistring.h \
+ synctexdir/synctex-common.h synctexdir/synctex-luatex.h \
+ synctexdir/synctex.c synctexdir/synctex.h
luatex_dvi_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/dvi $(ctangle)
luatex_font_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/font $(ctangle)
luatex_image_ctangle = $(ctangle_silent)CWEBINPUTS=$(srcdir)/luatexdir/image $(ctangle)
@@ -4263,6 +4265,9 @@ luatexdir/lua/libluajittex_a-ltexlib.$(OBJEXT): \
luatexdir/lua/libluajittex_a-ltokenlib.$(OBJEXT): \
luatexdir/lua/$(am__dirstamp) \
luatexdir/lua/$(DEPDIR)/$(am__dirstamp)
+luatexdir/lua/libluajittex_a-lnewtokenlib.$(OBJEXT): \
+ luatexdir/lua/$(am__dirstamp) \
+ luatexdir/lua/$(DEPDIR)/$(am__dirstamp)
luatexdir/utils/$(am__dirstamp):
@$(MKDIR_P) luatexdir/utils
@: > luatexdir/utils/$(am__dirstamp)
@@ -4437,6 +4442,9 @@ luatexdir/lua/libluatex_a-ltexlib.$(OBJEXT): \
luatexdir/lua/libluatex_a-ltokenlib.$(OBJEXT): \
luatexdir/lua/$(am__dirstamp) \
luatexdir/lua/$(DEPDIR)/$(am__dirstamp)
+luatexdir/lua/libluatex_a-lnewtokenlib.$(OBJEXT): \
+ luatexdir/lua/$(am__dirstamp) \
+ luatexdir/lua/$(DEPDIR)/$(am__dirstamp)
luatexdir/utils/libluatex_a-avl.$(OBJEXT): \
luatexdir/utils/$(am__dirstamp) \
luatexdir/utils/$(DEPDIR)/$(am__dirstamp)
@@ -5513,6 +5521,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-llanglib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-llfslibext.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-llualib.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-lnodelib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-loslibext.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluajittex_a-lpdflib.Po@am__quote@
@@ -5531,6 +5540,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-llanglib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-llfslibext.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-llualib.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-lnodelib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-loslibext.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@luatexdir/lua/$(DEPDIR)/libluatex_a-lpdflib.Po@am__quote@
@@ -7700,6 +7710,20 @@ luatexdir/lua/libluajittex_a-ltokenlib.obj: luatexdir/lua/ltokenlib.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluajittex_a-ltokenlib.obj `if test -f 'luatexdir/lua/ltokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltokenlib.c'; fi`
+luatexdir/lua/libluajittex_a-lnewtokenlib.o: luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/libluajittex_a-lnewtokenlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/libluajittex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/libluajittex_a-lnewtokenlib.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluajittex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c
+
+luatexdir/lua/libluajittex_a-lnewtokenlib.obj: luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/libluajittex_a-lnewtokenlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/libluajittex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/libluajittex_a-lnewtokenlib.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/libluajittex_a-lnewtokenlib.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluajittex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi`
+
luatexdir/utils/libluajittex_a-avl.o: luatexdir/utils/avl.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluajittex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/libluajittex_a-avl.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Tpo -c -o luatexdir/utils/libluajittex_a-avl.o `test -f 'luatexdir/utils/avl.c' || echo '$(srcdir)/'`luatexdir/utils/avl.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Tpo luatexdir/utils/$(DEPDIR)/libluajittex_a-avl.Po
@@ -9702,6 +9726,20 @@ luatexdir/lua/libluatex_a-ltokenlib.obj: luatexdir/lua/ltokenlib.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluatex_a-ltokenlib.obj `if test -f 'luatexdir/lua/ltokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/ltokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/ltokenlib.c'; fi`
+luatexdir/lua/libluatex_a-lnewtokenlib.o: luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/libluatex_a-lnewtokenlib.o -MD -MP -MF luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/libluatex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/libluatex_a-lnewtokenlib.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluatex_a-lnewtokenlib.o `test -f 'luatexdir/lua/lnewtokenlib.c' || echo '$(srcdir)/'`luatexdir/lua/lnewtokenlib.c
+
+luatexdir/lua/libluatex_a-lnewtokenlib.obj: luatexdir/lua/lnewtokenlib.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/lua/libluatex_a-lnewtokenlib.obj -MD -MP -MF luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Tpo -c -o luatexdir/lua/libluatex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Tpo luatexdir/lua/$(DEPDIR)/libluatex_a-lnewtokenlib.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='luatexdir/lua/lnewtokenlib.c' object='luatexdir/lua/libluatex_a-lnewtokenlib.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o luatexdir/lua/libluatex_a-lnewtokenlib.obj `if test -f 'luatexdir/lua/lnewtokenlib.c'; then $(CYGPATH_W) 'luatexdir/lua/lnewtokenlib.c'; else $(CYGPATH_W) '$(srcdir)/luatexdir/lua/lnewtokenlib.c'; fi`
+
luatexdir/utils/libluatex_a-avl.o: luatexdir/utils/avl.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libluatex_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT luatexdir/utils/libluatex_a-avl.o -MD -MP -MF luatexdir/utils/$(DEPDIR)/libluatex_a-avl.Tpo -c -o luatexdir/utils/libluatex_a-avl.o `test -f 'luatexdir/utils/avl.c' || echo '$(srcdir)/'`luatexdir/utils/avl.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) luatexdir/utils/$(DEPDIR)/libluatex_a-avl.Tpo luatexdir/utils/$(DEPDIR)/libluatex_a-avl.Po
diff --git a/Build/source/texk/web2c/luatexdir/ChangeLog b/Build/source/texk/web2c/luatexdir/ChangeLog
index 191879c727e..7c9c0207524 100644
--- a/Build/source/texk/web2c/luatexdir/ChangeLog
+++ b/Build/source/texk/web2c/luatexdir/ChangeLog
@@ -1,6 +1,10 @@
+2015-03-19 Luigi Scarso <luigi.scarso@gmail.com>
+ New library newtokenlib; several bugs fixed.
+
+
2015-01-14 Luigi Scarso <luigi.scarso@gmail.com>
- * tex/mlist.w: mlist_to_hlist(pointer mlist, boolean penalties, int cur_style)
+ tex/mlist.w: mlist_to_hlist(pointer mlist, boolean penalties, int cur_style)
HH-LS: was cur_mu = x_over_n(get_math_quad(cur_size), 18);
This is an old bug so the fix can influence outcome
The current mu is instead
diff --git a/Build/source/texk/web2c/luatexdir/NEWS b/Build/source/texk/web2c/luatexdir/NEWS
index dd91cc13b69..5680cb661c9 100644
--- a/Build/source/texk/web2c/luatexdir/NEWS
+++ b/Build/source/texk/web2c/luatexdir/NEWS
@@ -1,6 +1,17 @@
This file is in the public domain.
+
+==============================================================
+Luatex beta-0.80.0 was released 20150319 (5195)
+==============================================================
+
+* New library newtokenlib. It will replace the current token lib.
+* Fixed a bug on the normal random generator for double/decimal/binary
+ number systems.
+* Several others bugs fixed.
+
+
==============================================================
Luatex beta-0.79.3.1 was released 20150122 (5140)
==============================================================
diff --git a/Build/source/texk/web2c/luatexdir/am/libluatex.am b/Build/source/texk/web2c/luatexdir/am/libluatex.am
index 5be74fddb30..4d66fefc67e 100644
--- a/Build/source/texk/web2c/luatexdir/am/libluatex.am
+++ b/Build/source/texk/web2c/luatexdir/am/libluatex.am
@@ -245,6 +245,7 @@ dist_libluatex_sources += \
luatexdir/lua/ltexiolib.c \
luatexdir/lua/ltexlib.c \
luatexdir/lua/ltokenlib.c \
+ luatexdir/lua/lnewtokenlib.c \
luatexdir/lua/luagen.h \
luatexdir/lua/luatex-api.h
diff --git a/Build/source/texk/web2c/luatexdir/dvi/dvigen.h b/Build/source/texk/web2c/luatexdir/dvi/dvigen.h
index 9d6b5ff85d6..001e1744ddf 100644
--- a/Build/source/texk/web2c/luatexdir/dvi/dvigen.h
+++ b/Build/source/texk/web2c/luatexdir/dvi/dvigen.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: dvigen.h 4679 2013-12-19 15:47:53Z luigi $ */
#ifndef DVIGEN_H
# define DVIGEN_H
diff --git a/Build/source/texk/web2c/luatexdir/dvi/dvigen.w b/Build/source/texk/web2c/luatexdir/dvi/dvigen.w
index 97bd38e7d0c..b158524d99c 100644
--- a/Build/source/texk/web2c/luatexdir/dvi/dvigen.w
+++ b/Build/source/texk/web2c/luatexdir/dvi/dvigen.w
@@ -29,10 +29,6 @@
@ Initial identification of this file, and the needed headers.
@c
-static const char _svn_version[] =
- "$Id: dvigen.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/dvi/dvigen.w $";
-
#include "ptexlib.h"
@ Here is the start of the actual C file.
diff --git a/Build/source/texk/web2c/luatexdir/font/dofont.w b/Build/source/texk/web2c/luatexdir/font/dofont.w
index 15688fd63e3..a7fd7122fca 100644
--- a/Build/source/texk/web2c/luatexdir/font/dofont.w
+++ b/Build/source/texk/web2c/luatexdir/font/dofont.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: dofont.w 4524 2012-12-20 15:38:02Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/dofont.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/luafont.w b/Build/source/texk/web2c/luatexdir/font/luafont.w
index 089558c1314..d45ea7aa0d4 100644
--- a/Build/source/texk/web2c/luatexdir/font/luafont.w
+++ b/Build/source/texk/web2c/luatexdir/font/luafont.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luafont.w 5064 2014-10-13 12:47:11Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/luafont.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -1412,8 +1410,7 @@ int font_from_lua(lua_State * L, int f)
set_font_dsize(f, i);
i = lua_numeric_field_by_index(L,lua_key_index(size), font_dsize(f));
set_font_size(f, i);
- i = lua_numeric_field_by_index(L,lua_key_index(checksum), 0);
- set_font_checksum(f, (unsigned) i);
+ set_font_checksum(f, (unsigned)(lua_unsigned_numeric_field_by_index(L,lua_key_index(checksum), 0))) ;
i = lua_numeric_field_by_index(L,lua_key_index(direction), 0);
set_font_natural_dir(f, i);
i = lua_numeric_field_by_index(L,lua_key_index(encodingbytes), 0);
diff --git a/Build/source/texk/web2c/luatexdir/font/luatexfont.h b/Build/source/texk/web2c/luatexdir/font/luatexfont.h
index bb4901d5107..d9ff3ea89d6 100644
--- a/Build/source/texk/web2c/luatexdir/font/luatexfont.h
+++ b/Build/source/texk/web2c/luatexdir/font/luatexfont.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luatexfont.h 4781 2014-02-10 11:05:24Z taco $ */
#ifndef LUATEXFONT_H
# define LUATEXFONT_H
diff --git a/Build/source/texk/web2c/luatexdir/font/mapfile.h b/Build/source/texk/web2c/luatexdir/font/mapfile.h
index 544ebd9c9c3..8ad05c77bb1 100644
--- a/Build/source/texk/web2c/luatexdir/font/mapfile.h
+++ b/Build/source/texk/web2c/luatexdir/font/mapfile.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: mapfile.h 3404 2010-01-28 11:17:10Z taco $ */
#ifndef MAPFILE_H
# define MAPFILE_H
diff --git a/Build/source/texk/web2c/luatexdir/font/mapfile.w b/Build/source/texk/web2c/luatexdir/font/mapfile.w
index 6c6f749425a..70abf22bf0d 100644
--- a/Build/source/texk/web2c/luatexdir/font/mapfile.w
+++ b/Build/source/texk/web2c/luatexdir/font/mapfile.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: mapfile.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/mapfile.w $";
+
#include "ptexlib.h"
#include <math.h>
diff --git a/Build/source/texk/web2c/luatexdir/font/pkin.w b/Build/source/texk/web2c/luatexdir/font/pkin.w
index d96e69537c7..18c96b20edc 100644
--- a/Build/source/texk/web2c/luatexdir/font/pkin.w
+++ b/Build/source/texk/web2c/luatexdir/font/pkin.w
@@ -47,9 +47,7 @@ Piet Tutelaers <rcpt@@urc.tue.nl>
Modified for use with pdftex by Han The Thanh <thanh@@fi.muni.cz>.
@c
-static const char _svn_version[] =
- "$Id: pkin.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/pkin.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/sfnt.h b/Build/source/texk/web2c/luatexdir/font/sfnt.h
index 74f5701ec0f..3fbdb001ea4 100644
--- a/Build/source/texk/web2c/luatexdir/font/sfnt.h
+++ b/Build/source/texk/web2c/luatexdir/font/sfnt.h
@@ -19,7 +19,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: sfnt.h 4847 2014-03-05 18:13:17Z luigi $ */
#ifndef _SFNT_H_
# define _SFNT_H_
diff --git a/Build/source/texk/web2c/luatexdir/font/sfnt.w b/Build/source/texk/web2c/luatexdir/font/sfnt.w
index c053bac0e16..939fd0bfe0c 100644
--- a/Build/source/texk/web2c/luatexdir/font/sfnt.w
+++ b/Build/source/texk/web2c/luatexdir/font/sfnt.w
@@ -21,9 +21,7 @@
@ Based on dvipdfmx-0.13.2c
@c
-static const char _svn_version[] =
- "$Id: sfnt.w 4718 2014-01-02 15:35:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/sfnt.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/subfont.w b/Build/source/texk/web2c/luatexdir/font/subfont.w
index f35d601547a..ea139c4e48c 100644
--- a/Build/source/texk/web2c/luatexdir/font/subfont.w
+++ b/Build/source/texk/web2c/luatexdir/font/subfont.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: subfont.w 5017 2014-06-05 15:11:19Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/subfont.w $";
+
#include "ptexlib.h"
#include <string.h>
diff --git a/Build/source/texk/web2c/luatexdir/font/texfont.h b/Build/source/texk/web2c/luatexdir/font/texfont.h
index 5c6ab2eaf51..10deb9f51a2 100644
--- a/Build/source/texk/web2c/luatexdir/font/texfont.h
+++ b/Build/source/texk/web2c/luatexdir/font/texfont.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texfont.h 4679 2013-12-19 15:47:53Z luigi $ */
/* Here we have the interface to LuaTeX's font system, as seen from the
main pascal program. There is a companion list in luatex.defines to
diff --git a/Build/source/texk/web2c/luatexdir/font/texfont.w b/Build/source/texk/web2c/luatexdir/font/texfont.w
index 65fdc6a332e..3ce43c161ac 100644
--- a/Build/source/texk/web2c/luatexdir/font/texfont.w
+++ b/Build/source/texk/web2c/luatexdir/font/texfont.w
@@ -31,9 +31,7 @@ because it was a bit of dirty programming and it also was
problematic |if 0 != null|.
@c
-static const char _svn_version[] =
- "$Id: texfont.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/texfont.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/tfmofm.w b/Build/source/texk/web2c/luatexdir/font/tfmofm.w
index 54fd42065da..41542689c7f 100644
--- a/Build/source/texk/web2c/luatexdir/font/tfmofm.w
+++ b/Build/source/texk/web2c/luatexdir/font/tfmofm.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: tfmofm.w 4718 2014-01-02 15:35:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/tfmofm.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/tounicode.w b/Build/source/texk/web2c/luatexdir/font/tounicode.w
index 1ed589eb1ce..fe57bbe7e41 100644
--- a/Build/source/texk/web2c/luatexdir/font/tounicode.w
+++ b/Build/source/texk/web2c/luatexdir/font/tounicode.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: tounicode.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/tounicode.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/tt_glyf.h b/Build/source/texk/web2c/luatexdir/font/tt_glyf.h
index 1a82f936af9..a16cfbc9f05 100644
--- a/Build/source/texk/web2c/luatexdir/font/tt_glyf.h
+++ b/Build/source/texk/web2c/luatexdir/font/tt_glyf.h
@@ -19,7 +19,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: tt_glyf.h 2271 2009-04-12 23:42:21Z oneiros $ */
#ifndef _TT_GLYF_H_
# define _TT_GLYF_H_
diff --git a/Build/source/texk/web2c/luatexdir/font/tt_glyf.w b/Build/source/texk/web2c/luatexdir/font/tt_glyf.w
index 21ceba11e14..21711a6be7a 100644
--- a/Build/source/texk/web2c/luatexdir/font/tt_glyf.w
+++ b/Build/source/texk/web2c/luatexdir/font/tt_glyf.w
@@ -22,9 +22,7 @@
@* Subsetting glyf, updating loca, hmtx, etc.
@ @c
-static const char _svn_version[] =
- "$Id: tt_glyf.w 4457 2012-07-13 13:16:19Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/tt_glyf.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/tt_table.h b/Build/source/texk/web2c/luatexdir/font/tt_table.h
index 7fae8515646..3dc35495d73 100644
--- a/Build/source/texk/web2c/luatexdir/font/tt_table.h
+++ b/Build/source/texk/web2c/luatexdir/font/tt_table.h
@@ -19,7 +19,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: tt_table.h 2271 2009-04-12 23:42:21Z oneiros $ */
#ifndef _TT_TABLE_H_
# define _TT_TABLE_H_
diff --git a/Build/source/texk/web2c/luatexdir/font/tt_table.w b/Build/source/texk/web2c/luatexdir/font/tt_table.w
index 6e0277e622e..3ebce2b99ca 100644
--- a/Build/source/texk/web2c/luatexdir/font/tt_table.w
+++ b/Build/source/texk/web2c/luatexdir/font/tt_table.w
@@ -20,9 +20,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: tt_table.w 4718 2014-01-02 15:35:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/tt_table.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/vfovf.w b/Build/source/texk/web2c/luatexdir/font/vfovf.w
index 1ce4165a5df..9b4361773ea 100644
--- a/Build/source/texk/web2c/luatexdir/font/vfovf.w
+++ b/Build/source/texk/web2c/luatexdir/font/vfovf.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: vfovf.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/vfovf.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/vfpacket.w b/Build/source/texk/web2c/luatexdir/font/vfpacket.w
index f9e99a8eb6f..0842353225e 100644
--- a/Build/source/texk/web2c/luatexdir/font/vfpacket.w
+++ b/Build/source/texk/web2c/luatexdir/font/vfpacket.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: vfpacket.w 4679 2013-12-19 15:47:53Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/vfpacket.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writecff.h b/Build/source/texk/web2c/luatexdir/font/writecff.h
index 266cc9d1f6d..3063eadb0c5 100644
--- a/Build/source/texk/web2c/luatexdir/font/writecff.h
+++ b/Build/source/texk/web2c/luatexdir/font/writecff.h
@@ -19,7 +19,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writecff.h 3400 2010-01-27 16:10:42Z taco $ */
#ifndef _CFF_LIMITS_H_
# define _CFF_LIMITS_H_
diff --git a/Build/source/texk/web2c/luatexdir/font/writecff.w b/Build/source/texk/web2c/luatexdir/font/writecff.w
index defe4b6841f..0a070f5bf83 100644
--- a/Build/source/texk/web2c/luatexdir/font/writecff.w
+++ b/Build/source/texk/web2c/luatexdir/font/writecff.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writecff.w 5041 2014-07-16 16:13:03Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writecff.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writeenc.w b/Build/source/texk/web2c/luatexdir/font/writeenc.w
index 476741e93aa..54ce687d50a 100644
--- a/Build/source/texk/web2c/luatexdir/font/writeenc.w
+++ b/Build/source/texk/web2c/luatexdir/font/writeenc.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writeenc.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writeenc.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writefont.w b/Build/source/texk/web2c/luatexdir/font/writefont.w
index 3377059f304..1846df0109e 100644
--- a/Build/source/texk/web2c/luatexdir/font/writefont.w
+++ b/Build/source/texk/web2c/luatexdir/font/writefont.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writefont.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writefont.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writet1.w b/Build/source/texk/web2c/luatexdir/font/writet1.w
index 036c65ad9c3..377efe750dd 100644
--- a/Build/source/texk/web2c/luatexdir/font/writet1.w
+++ b/Build/source/texk/web2c/luatexdir/font/writet1.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writet1.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writet1.w $";
+
#include "ptexlib.h"
#include <string.h>
diff --git a/Build/source/texk/web2c/luatexdir/font/writet3.w b/Build/source/texk/web2c/luatexdir/font/writet3.w
index d88bbf48a1a..3dda1770409 100644
--- a/Build/source/texk/web2c/luatexdir/font/writet3.w
+++ b/Build/source/texk/web2c/luatexdir/font/writet3.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writet3.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writet3.w $";
+
#include "ptexlib.h"
#include <kpathsea/tex-glyph.h>
diff --git a/Build/source/texk/web2c/luatexdir/font/writettf.h b/Build/source/texk/web2c/luatexdir/font/writettf.h
index a66cf011251..552148af26b 100644
--- a/Build/source/texk/web2c/luatexdir/font/writettf.h
+++ b/Build/source/texk/web2c/luatexdir/font/writettf.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writettf.h 3400 2010-01-27 16:10:42Z taco $ */
#ifndef WRITETTF_H
# define WRITETTF_H 1
diff --git a/Build/source/texk/web2c/luatexdir/font/writettf.w b/Build/source/texk/web2c/luatexdir/font/writettf.w
index 169e1c20d81..dd87c981b2c 100644
--- a/Build/source/texk/web2c/luatexdir/font/writettf.w
+++ b/Build/source/texk/web2c/luatexdir/font/writettf.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writettf.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writettf.w $";
+
#include "ptexlib.h"
#include "font/writettf.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writetype0.w b/Build/source/texk/web2c/luatexdir/font/writetype0.w
index ca5e0d7ca08..b88ee81f702 100644
--- a/Build/source/texk/web2c/luatexdir/font/writetype0.w
+++ b/Build/source/texk/web2c/luatexdir/font/writetype0.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writetype0.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writetype0.w $";
+
#include "ptexlib.h"
#include "font/writettf.h"
diff --git a/Build/source/texk/web2c/luatexdir/font/writetype2.w b/Build/source/texk/web2c/luatexdir/font/writetype2.w
index 50c5c193682..20987014752 100644
--- a/Build/source/texk/web2c/luatexdir/font/writetype2.w
+++ b/Build/source/texk/web2c/luatexdir/font/writetype2.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writetype2.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/font/writetype2.w $";
+
#include "ptexlib.h"
#include "font/writettf.h"
diff --git a/Build/source/texk/web2c/luatexdir/getluatexsvnversion.sh b/Build/source/texk/web2c/luatexdir/getluatexsvnversion.sh
index 0300990f4a6..7728ec50ea9 100755
--- a/Build/source/texk/web2c/luatexdir/getluatexsvnversion.sh
+++ b/Build/source/texk/web2c/luatexdir/getluatexsvnversion.sh
@@ -1,6 +1,5 @@
#! /bin/sh
# creates a c header file with the current subversion version
-# $Id: getluatexsvnversion.sh 4473 2012-11-07 01:03:54Z oneiros $
# This script should be run within the source directory.
$DEBUG
diff --git a/Build/source/texk/web2c/luatexdir/image/epdf.h b/Build/source/texk/web2c/luatexdir/image/epdf.h
index 4982b6af10c..c0d17b29778 100644
--- a/Build/source/texk/web2c/luatexdir/image/epdf.h
+++ b/Build/source/texk/web2c/luatexdir/image/epdf.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: epdf.h 5081 2014-11-07 18:38:33Z luigi $ */
// this is the common header file for C++ sources pdftoepdf.cc and lepdflib.cc
diff --git a/Build/source/texk/web2c/luatexdir/image/image.h b/Build/source/texk/web2c/luatexdir/image/image.h
index 0526b84ec57..32ead6a0f65 100644
--- a/Build/source/texk/web2c/luatexdir/image/image.h
+++ b/Build/source/texk/web2c/luatexdir/image/image.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: image.h 4847 2014-03-05 18:13:17Z luigi $ */
#ifndef IMAGE_H
# define IMAGE_H
diff --git a/Build/source/texk/web2c/luatexdir/image/pdftoepdf.h b/Build/source/texk/web2c/luatexdir/image/pdftoepdf.h
index bbe4d3c8a63..4e2dc36717c 100644
--- a/Build/source/texk/web2c/luatexdir/image/pdftoepdf.h
+++ b/Build/source/texk/web2c/luatexdir/image/pdftoepdf.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdftoepdf.h 4351 2011-10-03 22:22:01Z hhenkel $ */
#ifndef PDFTOEPDF_H
# define PDFTOEPDF_H
diff --git a/Build/source/texk/web2c/luatexdir/image/pdftoepdf.w b/Build/source/texk/web2c/luatexdir/image/pdftoepdf.w
index 492492c5fd3..9c09a65f645 100644
--- a/Build/source/texk/web2c/luatexdir/image/pdftoepdf.w
+++ b/Build/source/texk/web2c/luatexdir/image/pdftoepdf.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdftoepdf.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/pdftoepdf.w $";
+
// define DEBUG
#define __STDC_FORMAT_MACROS /* for PRId64 etc. */
diff --git a/Build/source/texk/web2c/luatexdir/image/writeimg.h b/Build/source/texk/web2c/luatexdir/image/writeimg.h
index 1cf6683856e..13f2d3642a5 100644
--- a/Build/source/texk/web2c/luatexdir/image/writeimg.h
+++ b/Build/source/texk/web2c/luatexdir/image/writeimg.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writeimg.h 4405 2012-05-07 21:16:45Z hhenkel $ */
#ifndef WRITEIMG_H
# define WRITEIMG_H
diff --git a/Build/source/texk/web2c/luatexdir/image/writeimg.w b/Build/source/texk/web2c/luatexdir/image/writeimg.w
index e8a770684b5..3f6da1a4bee 100644
--- a/Build/source/texk/web2c/luatexdir/image/writeimg.w
+++ b/Build/source/texk/web2c/luatexdir/image/writeimg.w
@@ -21,9 +21,7 @@
@* Image inclusion.
@ @c
-static const char _svn_version[] =
- "$Id: writeimg.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/writeimg.w $";
+
#include "ptexlib.h"
#include <assert.h>
diff --git a/Build/source/texk/web2c/luatexdir/image/writejbig2.h b/Build/source/texk/web2c/luatexdir/image/writejbig2.h
index 6609c2d2f99..95019b6c81b 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejbig2.h
+++ b/Build/source/texk/web2c/luatexdir/image/writejbig2.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writejbig2.h 4051 2011-01-09 22:41:33Z hhenkel $ */
#ifndef WRITEJBIG2_H
# define WRITEJBIG2_H
diff --git a/Build/source/texk/web2c/luatexdir/image/writejbig2.w b/Build/source/texk/web2c/luatexdir/image/writejbig2.w
index 371e5452776..7b676fb6e87 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejbig2.w
+++ b/Build/source/texk/web2c/luatexdir/image/writejbig2.w
@@ -80,9 +80,7 @@ object exists, reference it. Else create fresh one.
09 Dec. 2002: JBIG2 seg. page numbers > 0 are now set to 1, see PDF Ref.
@ @c
-static const char _svn_version[] =
- "$Id: writejbig2.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/writejbig2.w $";
+
#undef DEBUG
diff --git a/Build/source/texk/web2c/luatexdir/image/writejp2.h b/Build/source/texk/web2c/luatexdir/image/writejp2.h
index 04e350f3c9e..ed9bbe47c72 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejp2.h
+++ b/Build/source/texk/web2c/luatexdir/image/writejp2.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writejp2.h 4060 2011-01-11 00:01:57Z hhenkel $ */
#ifndef WRITEJP2_H
# define WRITEJP2_H
diff --git a/Build/source/texk/web2c/luatexdir/image/writejp2.w b/Build/source/texk/web2c/luatexdir/image/writejp2.w
index 61549a67738..8ea537e9f75 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejp2.w
+++ b/Build/source/texk/web2c/luatexdir/image/writejp2.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writejp2.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/writejp2.w $";
+
@ Basic JPEG~2000 image support. Section and Table references below:
Information technology --- JPEG~2000 image coding system: Core coding system.
diff --git a/Build/source/texk/web2c/luatexdir/image/writejpg.h b/Build/source/texk/web2c/luatexdir/image/writejpg.h
index d3c7cdb806a..8ef290d4746 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejpg.h
+++ b/Build/source/texk/web2c/luatexdir/image/writejpg.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writejpg.h 2653 2009-06-27 14:30:05Z taco $ */
#ifndef WRITEJPG_H
# define WRITEJPG_H
diff --git a/Build/source/texk/web2c/luatexdir/image/writejpg.w b/Build/source/texk/web2c/luatexdir/image/writejpg.w
index 82091660418..cb4cd673ae8 100644
--- a/Build/source/texk/web2c/luatexdir/image/writejpg.w
+++ b/Build/source/texk/web2c/luatexdir/image/writejpg.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writejpg.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/writejpg.w $";
+
#include "ptexlib.h"
#include <assert.h>
@@ -101,6 +99,152 @@ typedef enum { /* JPEG marker codes */
} JPEG_MARKER;
@ @c
+static unsigned char
+myget_unsigned_byte (FILE *file)
+{
+ int ch;
+ ch = fgetc (file);
+ return (unsigned char) ch;
+}
+
+@ @c
+static unsigned short
+myget_unsigned_pair (FILE *file)
+{
+ unsigned short pair = myget_unsigned_byte(file);
+ pair = (pair << 8) | myget_unsigned_byte(file);
+ return pair;
+}
+
+@ @c
+static unsigned int
+read_exif_bytes(unsigned char **p, int n, int b)
+{
+ unsigned int rval = 0;
+ unsigned char *pp = *p;
+ if (b) {
+ switch (n) {
+ case 4:
+ rval += *pp++; rval <<= 8;
+ rval += *pp++; rval <<= 8;
+ case 2:
+ rval += *pp++; rval <<= 8;
+ rval += *pp;
+ break;
+ }
+ } else {
+ pp += n;
+ switch (n) {
+ case 4:
+ rval += *--pp; rval <<= 8;
+ rval += *--pp; rval <<= 8;
+ case 2:
+ rval += *--pp; rval <<= 8;
+ rval += *--pp;
+ break;
+ }
+ }
+ *p += n;
+ return rval;
+}
+
+@ @c
+static void
+read_APP1_Exif (FILE *fp, unsigned short length, int *xx, int *yy)
+{
+ /* this doesn't save the data, just reads the tags we need */
+ /* based on info from http://www.exif.org/Exif2-2.PDF */
+ unsigned char *buffer = (unsigned char *)xmalloc(length);
+ unsigned char *p, *rp;
+ unsigned char *tiff_header;
+ char bigendian;
+ int i;
+ int num_fields, tag, type;
+ int value = 0, num = 0, den = 0; /* silence uninitialized warnings */
+ double xres = 72.0;
+ double yres = 72.0;
+ double res_unit = 1.0;
+ fread(buffer, length, 1, fp);
+ p = buffer;
+ while ((p < buffer + length) && (*p == 0))
+ ++p;
+ tiff_header = p;
+ if ((*p == 'M') && (*(p+1) == 'M'))
+ bigendian = 1;
+ else if ((*p == 'I') && (*(p+1) == 'I'))
+ bigendian = 0;
+ else
+ goto err;
+ p += 2;
+ i = read_exif_bytes(&p, 2, bigendian);
+ if (i != 42)
+ goto err;
+ i = read_exif_bytes(&p, 4, bigendian);
+ p = tiff_header + i;
+ num_fields = read_exif_bytes(&p, 2, bigendian);
+ while (num_fields-- > 0) {
+ tag = read_exif_bytes(&p, 2, bigendian);
+ type = read_exif_bytes(&p, 2, bigendian);
+ read_exif_bytes(&p, 4, bigendian);
+ switch (type) {
+ case 1: /* byte */
+ value = *p++;
+ p += 3;
+ break;
+ case 3: /* short */
+ value = read_exif_bytes(&p, 2, bigendian);
+ p += 2;
+ break;
+ case 4: /* long */
+ case 9: /* slong */
+ value = read_exif_bytes(&p, 4, bigendian);
+ break;
+ case 5: /* rational */
+ case 10: /* srational */
+ value = read_exif_bytes(&p, 4, bigendian);
+ rp = tiff_header + value;
+ num = read_exif_bytes(&rp, 4, bigendian);
+ den = read_exif_bytes(&rp, 4, bigendian);
+ break;
+ case 7: /* undefined */
+ value = *p++;
+ p += 3;
+ break;
+ case 2: /* ascii */
+ default:
+ p += 4;
+ break;
+ }
+ switch (tag) {
+ case 282: /* x res */
+ if (den != 0)
+ xres = num / den;
+ break;
+ case 283: /* y res */
+ if (den != 0)
+ yres = num / den;
+ break;
+ case 296: /* res unit */
+ switch (value) {
+ case 2:
+ res_unit = 1.0;
+ break;
+ case 3:
+ res_unit = 2.54;
+ break;
+ }
+ }
+ }
+
+ *xx = (int)(xres * res_unit);
+ *yy = (int)(yres * res_unit);
+
+err:
+ free(buffer);
+ return;
+}
+
+@ @c
static void close_and_cleanup_jpg(image_dict * idict)
{
assert(idict != NULL);
@@ -116,6 +260,7 @@ static void close_and_cleanup_jpg(image_dict * idict)
void read_jpg_info(PDF pdf, image_dict * idict, img_readtype_e readtype)
{
int i, units = 0;
+ unsigned short appmk, length;
unsigned char jpg_id[] = "JFIF";
assert(idict != NULL);
assert(img_type(idict) == IMG_TYPE_JPG);
@@ -131,8 +276,9 @@ void read_jpg_info(PDF pdf, image_dict * idict, img_readtype_e readtype)
xfseek(img_file(idict), 0, SEEK_SET, img_filepath(idict));
if ((unsigned int) read2bytes(img_file(idict)) != 0xFFD8)
luatex_fail("reading JPEG image failed (no JPEG header found)");
- /* currently only true JFIF files allow extracting |img_xres| and |img_yres| */
- if ((unsigned int) read2bytes(img_file(idict)) == 0xFFE0) { /* check for JFIF */
+ /* currently JFIF and Exif files allow extracting |img_xres| and |img_yres| */
+ appmk = read2bytes(img_file(idict));
+ if (appmk == 0xFFE0) { /* check for JFIF */
(void) read2bytes(img_file(idict));
for (i = 0; i < 5; i++) {
if (xgetc(img_file(idict)) != jpg_id[i])
@@ -155,13 +301,30 @@ void read_jpg_info(PDF pdf, image_dict * idict, img_readtype_e readtype)
break;
}
}
- /* if either xres or yres is 0 but the other isn't, set it to the value of the other */
+ /* if either xres or yres is 0 but the other isn't,
+ set it to the value of the other */
if ((img_xres(idict) == 0) && (img_yres(idict) != 0)) {
img_xres(idict) = img_yres(idict);
}
if ((img_yres(idict) == 0) && (img_xres(idict) != 0)) {
img_yres(idict) = img_xres(idict);
}
+ } else if (appmk == 0xFFE1) { /* check for Exif */
+ FILE *fp = img_file(idict);
+ int xxres = 0;
+ int yyres = 0;
+ char app_sig[32];
+ length = myget_unsigned_pair(fp) - 2;
+ if (length > 5) {
+ if (fread(app_sig, sizeof(char), 5, fp) != 5)
+ return;
+ length -= 5;
+ if (!memcmp(app_sig, "Exif\000", 5)) {
+ read_APP1_Exif(fp, length, &xxres, &yyres);
+ }
+ }
+ img_xres(idict) = xxres;
+ img_yres(idict) = yyres;
}
xfseek(img_file(idict), 0, SEEK_SET, img_filepath(idict));
while (1) {
diff --git a/Build/source/texk/web2c/luatexdir/image/writepng.h b/Build/source/texk/web2c/luatexdir/image/writepng.h
index d728582014a..4dd425c0405 100644
--- a/Build/source/texk/web2c/luatexdir/image/writepng.h
+++ b/Build/source/texk/web2c/luatexdir/image/writepng.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: writepng.h 4227 2011-04-30 07:11:25Z oneiros $ */
#ifndef WRITEPNG_H
# define WRITEPNG_H
diff --git a/Build/source/texk/web2c/luatexdir/image/writepng.w b/Build/source/texk/web2c/luatexdir/image/writepng.w
index 6b2ad9197fc..40f8e0e2635 100644
--- a/Build/source/texk/web2c/luatexdir/image/writepng.w
+++ b/Build/source/texk/web2c/luatexdir/image/writepng.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: writepng.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/image/writepng.w $";
+
#include "ptexlib.h"
#include <assert.h>
diff --git a/Build/source/texk/web2c/luatexdir/lang/hyphen.w b/Build/source/texk/web2c/luatexdir/lang/hyphen.w
index 889dd8cb7a1..5d07e60038f 100644
--- a/Build/source/texk/web2c/luatexdir/lang/hyphen.w
+++ b/Build/source/texk/web2c/luatexdir/lang/hyphen.w
@@ -38,9 +38,7 @@
@ @c
-static const char _svn_version[] =
- "$Id: hyphen.w 4729 2014-01-03 14:21:00Z taco $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lang/hyphen.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/lang/texlang.h b/Build/source/texk/web2c/luatexdir/lang/texlang.h
index 3450dd98960..0fdff82d81a 100644
--- a/Build/source/texk/web2c/luatexdir/lang/texlang.h
+++ b/Build/source/texk/web2c/luatexdir/lang/texlang.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texlang.h 4664 2013-12-09 13:43:42Z taco $ */
#ifndef TEXLANG_H
# define TEXLANG_H
diff --git a/Build/source/texk/web2c/luatexdir/lang/texlang.w b/Build/source/texk/web2c/luatexdir/lang/texlang.w
index 97d9f00c682..723d29839de 100644
--- a/Build/source/texk/web2c/luatexdir/lang/texlang.w
+++ b/Build/source/texk/web2c/luatexdir/lang/texlang.w
@@ -18,15 +18,13 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: texlang.w 4880 2014-03-14 12:01:16Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lang/texlang.w $";
+
#include "ptexlib.h"
#include <string.h>
#include "lua/luatex-api.h"
-@ Low-level helpers
+@ Low-level helpers
@ @c
#define noVERBOSE
@@ -203,7 +201,7 @@ const char *clean_hyphenation(const char *buff, char **cleaned)
return s;
}
}
- /* now convert the input to unicode */
+ /* now convert the input to unicode */
word[i] = '\0';
utf2uni_strcpy(uword, (const char *)word);
@@ -310,9 +308,9 @@ void load_tex_hyphenation(int curlang, halfword head)
load_hyphenation(get_language(curlang), (unsigned char *) s);
}
-@ TODO: clean this up. The |delete_attribute_ref()| statements are not very
- nice, but needed. Also, in the post-break, it would be nicer to get the
- attribute list from |vlink(n)|. No rush, as it is currently not used much.
+@ TODO: clean this up. The |delete_attribute_ref()| statements are not very
+ nice, but needed. Also, in the post-break, it would be nicer to get the
+ attribute list from |vlink(n)|. No rush, as it is currently not used much.
@c
halfword insert_discretionary(halfword t, halfword pre, halfword post,
@@ -516,8 +514,8 @@ char *exception_strings(struct tex_language *lang)
}
-@ the sequence from |wordstart| to |r| can contain only normal characters
-it could be faster to modify a halfword pointer and return an integer
+@ the sequence from |wordstart| to |r| can contain only normal characters
+it could be faster to modify a halfword pointer and return an integer
@c
static halfword find_exception_part(unsigned int *j, unsigned int *uword, int len)
@@ -627,7 +625,7 @@ static void do_exception(halfword wordstart, halfword r, char *replacement)
}
}
-@ This is a documentation section from the pascal web file. It is not
+@ This is a documentation section from the pascal web file. It is not
true any more, but I do not have time right now to rewrite it -- Taco
When the line-breaking routine is unable to find a feasible sequence of
@@ -702,6 +700,8 @@ static halfword find_next_wordstart(halfword r)
register int l;
register int start_ok = 1;
int mathlevel = 1;
+ int chr ;
+ halfword t ;
while (r != null) {
switch (type(r)) {
case whatsit_node:
@@ -724,13 +724,19 @@ static halfword find_next_wordstart(halfword r)
}
break;
case glyph_node:
- if (start_ok &&
- is_simple_character(r) &&
- (l = get_lc_code(character(r))) > 0) {
- if (char_uchyph(r) || l == character(r)) {
- return r;
- } else {
- start_ok = 0;
+ if (is_simple_character(r)) {
+ chr = character(r) ;
+ if (chr == ex_hyphen_char) {
+ /* maybe add a test if prev and next are glyphs */
+ t = compound_word_break(r, char_lang(r));
+ subtype(t) = automatic_disc;
+ start_ok = 1 ;
+ } else if (start_ok && (l = get_lc_code(chr)) > 0) {
+ if (char_uchyph(r) || l == chr) {
+ return r;
+ } else {
+ start_ok = 0;
+ }
}
}
break;
@@ -780,9 +786,9 @@ void hnj_hyphenation(halfword head, halfword tail)
halfword s, r = head, wordstart = null, save_tail1 = null, left =
null, right = null;
- /* this first movement assures two things:
+ /* this first movement assures two things:
\item{a)} that we won't waste lots of time on something that has been
- handled already (in that case, none of the glyphs match |simple_character|).
+ handled already (in that case, none of the glyphs match |simple_character|).
\item{b)} that the first word can be hyphenated. if the movement was
not explicit, then the indentation at the start of a paragraph
list would make |find_next_wordstart()| look too far ahead.
@@ -815,13 +821,8 @@ void hnj_hyphenation(halfword head, halfword tail)
rhmin = char_rhmin(wordstart);
langdata.pre_hyphen_char = get_pre_hyphen_char(clang);
langdata.post_hyphen_char = get_post_hyphen_char(clang);
- while (r != null &&
- type(r) == glyph_node &&
- is_simple_character(r) &&
- clang == char_lang(r) &&
- (((lchar = get_lc_code(character(r))) > 0)
- ||
- (character(r) == ex_hyphen_char && (lchar = ex_hyphen_char)))) {
+ while (r != null && type(r) == glyph_node && is_simple_character(r) && clang == char_lang(r) &&
+ (((lchar = get_lc_code(character(r))) > 0) || (character(r) == ex_hyphen_char && (lchar = ex_hyphen_char)))) {
if (character(r) == ex_hyphen_char)
explicit_hyphen = true;
wordlen++;
@@ -844,7 +845,7 @@ void hnj_hyphenation(halfword head, halfword tail)
do_exception(wordstart, r, replacement);
free(replacement);
} else if (explicit_hyphen == true) {
- /* insert an explicit discretionary after each of the last in a
+ /* insert an explicit discretionary after each of the last in a
set of explicit hyphens */
halfword rr = r;
halfword t = null;
@@ -856,9 +857,9 @@ void hnj_hyphenation(halfword head, halfword tail)
if (character(rr) == ex_hyphen_char) {
t = compound_word_break(rr, clang);
subtype(t) = automatic_disc;
- while(character(alink(rr)) == ex_hyphen_char)
+ while(character(alink(rr)) == ex_hyphen_char)
rr = alink(rr);
- if (rr == wordstart)
+ if (rr == wordstart)
break;
}
}
diff --git a/Build/source/texk/web2c/luatexdir/lua/lauxlib_bridge.h b/Build/source/texk/web2c/luatexdir/lua/lauxlib_bridge.h
index eec88e976c9..9f54ffe9103 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lauxlib_bridge.h
+++ b/Build/source/texk/web2c/luatexdir/lua/lauxlib_bridge.h
@@ -44,7 +44,7 @@ LUA_API int lua_compare (lua_State *L, int index1, int index2, int op);
#define luaL_newlib(L,l) (luaL_newlibtable(L,l), luaL_setfuncs(L,l,0))
-/* Is this ok as replacement for lua_copy of lua 5.2.3 ? */
+/* Is this ok as replacement for lua_copy of lua 5.2.4 ? */
/*
#if defined(LUAJIT)
LUA_API void lua_copy (lua_State *L, int fromidx, int toidx) {
diff --git a/Build/source/texk/web2c/luatexdir/lua/lcallbacklib.c b/Build/source/texk/web2c/luatexdir/lua/lcallbacklib.c
index f8b4360e56b..96eafa8a22a 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lcallbacklib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lcallbacklib.c
@@ -20,8 +20,6 @@
#include "ptexlib.h"
#include "lua/luatex-api.h"
-static const char _svn_version[] =
- "$Id: lcallbacklib.c 5081 2014-11-07 18:38:33Z luigi $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lcallbacklib.c $";
int callback_count = 0;
int saved_callback_count = 0;
diff --git a/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc b/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
index 1adaa120362..1e0e0d597a4 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
+++ b/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
@@ -18,9 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-static const char _svn_version[] =
- "$Id: lepdflib.cc 5081 2014-11-07 18:38:33Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lepdflib.cc $";
#include "image/epdf.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/lfontlib.c b/Build/source/texk/web2c/luatexdir/lua/lfontlib.c
index 611cce83fbb..d6d52ae68fd 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lfontlib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lfontlib.c
@@ -17,9 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-static const char _svn_version[] =
- "$Id: lfontlib.c 4847 2014-03-05 18:13:17Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lfontlib.c $";
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/limglib.c b/Build/source/texk/web2c/luatexdir/lua/limglib.c
index aedccf45298..dcb7ea1534d 100644
--- a/Build/source/texk/web2c/luatexdir/lua/limglib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/limglib.c
@@ -17,9 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-static const char _svn_version[] =
- "$Id: limglib.c 4847 2014-03-05 18:13:17Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/limglib.c $";
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/liolibext.c b/Build/source/texk/web2c/luatexdir/lua/liolibext.c
index 9570c466aa6..7d99b7968ff 100644
--- a/Build/source/texk/web2c/luatexdir/lua/liolibext.c
+++ b/Build/source/texk/web2c/luatexdir/lua/liolibext.c
@@ -34,8 +34,6 @@
#endif
#include "lualib.h"
-static const char _svn_version[] =
- "$Id: liolibext.c 4781 2014-02-10 11:05:24Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/liolibext.c $";
/*
diff --git a/Build/source/texk/web2c/luatexdir/lua/lkpselib.c b/Build/source/texk/web2c/luatexdir/lua/lkpselib.c
index 4822a60a38f..c29dbd8586f 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lkpselib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lkpselib.c
@@ -28,8 +28,6 @@
#include <kpathsea/tex-file.h>
#include <kpathsea/paths.h>
-static const char _svn_version[] =
- "$Id: lkpselib.c 4847 2014-03-05 18:13:17Z luigi $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lkpselib.c $";
static const unsigned filetypes[] = {
kpse_gf_format,
diff --git a/Build/source/texk/web2c/luatexdir/lua/llanglib.c b/Build/source/texk/web2c/luatexdir/lua/llanglib.c
index e0139d677d5..771f10219d3 100644
--- a/Build/source/texk/web2c/luatexdir/lua/llanglib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/llanglib.c
@@ -21,10 +21,6 @@
#include "lua/luatex-api.h"
-
-static const char _svn_version[] =
- "$Id: llanglib.c 4524 2012-12-20 15:38:02Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/llanglib.c $";
-
#define LANG_METATABLE "luatex.lang"
#define check_islang(L,b) (struct tex_language **)luaL_checkudata(L,b,LANG_METATABLE)
diff --git a/Build/source/texk/web2c/luatexdir/lua/llfslibext.c b/Build/source/texk/web2c/luatexdir/lua/llfslibext.c
index 78972b53b18..eba5778dfc7 100644
--- a/Build/source/texk/web2c/luatexdir/lua/llfslibext.c
+++ b/Build/source/texk/web2c/luatexdir/lua/llfslibext.c
@@ -24,8 +24,6 @@
#include <kpathsea/c-dir.h>
#include <time.h>
-static const char _svn_version[] =
- "$Id: llfslibext.c 4421 2012-05-21 15:20:49Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/llfslibext.c $";
#ifdef _WIN32
# include <windows.h>
diff --git a/Build/source/texk/web2c/luatexdir/lua/llualib.c b/Build/source/texk/web2c/luatexdir/lua/llualib.c
index bc85196e551..23bec6bfc0a 100644
--- a/Build/source/texk/web2c/luatexdir/lua/llualib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/llualib.c
@@ -20,8 +20,6 @@
#include "ptexlib.h"
#include "lua/luatex-api.h"
-static const char _svn_version[] =
- "$Id: llualib.c 4878 2014-03-14 10:48:03Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/llualib.c $";
#define LOAD_BUF_SIZE 256
#define UINT_MAX32 0xFFFFFFFF
diff --git a/Build/source/texk/web2c/luatexdir/lua/lnodelib.c b/Build/source/texk/web2c/luatexdir/lua/lnodelib.c
index 0dd584e78fb..bbf3fa56f2b 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lnodelib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lnodelib.c
@@ -95,9 +95,6 @@
*/
-static const char _svn_version[] =
- "$Id: lnodelib.c 5115 2014-12-21 17:46:00Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lnodelib.c $";
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -217,6 +214,8 @@ static const char _svn_version[] =
/* } */
+#define nodelib_setattr(L, s, n) reassign_attribute(n,nodelib_getlist(L,s))
+
#define nodelib_gettoks(L,a) tokenlist_from_lua(L)
#define nodelib_getspec nodelib_getlist
@@ -2447,18 +2446,6 @@ static str_number nodelib_getstring(lua_State * L, int a)
return maketexlstring(s, k);
}
-static void nodelib_setattr(lua_State * L, int stackindex, halfword n)
-{
- halfword p;
- p = nodelib_getlist(L, stackindex);
- if (node_attr(n) != p) {
- if (node_attr(n) != null)
- delete_attribute_ref(node_attr(n));
- node_attr(n) = p;
- if (p != null)
- attr_list_ref(p)++;
- }
-}
static int nodelib_cantset(lua_State * L, int n, const char *s)
{
@@ -3960,9 +3947,11 @@ static int lua_nodelib_equal(lua_State * L)
static int font_tex_ligaturing(lua_State * L)
{
/* on the stack are two nodes and a direction */
+ /* hh-ls: we need to deal with prev nodes when a range starts with a ligature */
halfword tmp_head;
halfword *h;
halfword t = null;
+ halfword p ; /* hh-ls */
if (lua_gettop(L) < 1) {
lua_pushnil(L);
lua_pushboolean(L, 0);
@@ -3973,10 +3962,14 @@ static int font_tex_ligaturing(lua_State * L)
t = *(check_isnode(L, 2));
}
tmp_head = new_node(nesting_node, 1);
+ p = alink(*h); /* hh-ls */
couple_nodes(tmp_head, *h);
tlink(tmp_head) = t;
t = handle_ligaturing(tmp_head, t);
- alink(vlink(tmp_head)) = null ; /* hh-ls */
+ if (p != null) {
+ vlink(p) = vlink(tmp_head) ; /* hh-ls */
+ }
+ alink(vlink(tmp_head)) = p ; /* hh-ls */
lua_pushnumber(L, vlink(tmp_head));
/* can be: lua_nodelib_push_fast(L, head); */
flush_node(tmp_head);
@@ -3988,6 +3981,8 @@ static int font_tex_ligaturing(lua_State * L)
return 3;
}
+
+
/* node.kerning */
static int font_tex_kerning(lua_State * L)
@@ -3997,6 +3992,7 @@ static int font_tex_kerning(lua_State * L)
halfword tmp_head;
halfword *h;
halfword t = null;
+ halfword p ; /* hh-ls */
if (lua_gettop(L) < 1) {
lua_pushnil(L);
lua_pushboolean(L, 0);
@@ -4007,10 +4003,14 @@ static int font_tex_kerning(lua_State * L)
t = *(check_isnode(L, 2));
}
tmp_head = new_node(nesting_node, 1);
+ p = alink(*h); /* hh-ls */
couple_nodes(tmp_head, *h);
tlink(tmp_head) = t;
t = handle_kerning(tmp_head, t);
- alink(vlink(tmp_head)) = null ; /* hh-ls */
+ if (p != null) {
+ vlink(p) = vlink(tmp_head) ; /* hh-ls */
+ }
+ alink(vlink(tmp_head)) = p ; /* hh-ls */
lua_pushnumber(L, vlink(tmp_head));
/* can be: lua_nodelib_push_fast(L, head); */
flush_node(tmp_head);
@@ -4318,28 +4318,25 @@ static int lua_nodelib_direct_cp_skipable(lua_State * L)
return 1;
}
+
/* node.currentattr(node m) */
static int lua_nodelib_currentattr(lua_State * L)
{
- int n = lua_gettop(L);
- if (n == null) {
- /* query */
- if (max_used_attr >= 0) {
- if (attr_list_cache == cache_disabled) {
- update_attribute_cache();
- if (attr_list_cache == null) {
- lua_pushnil (L);
- return 1;
- }
- }
- attr_list_ref(attr_list_cache)++;
- lua_pushnumber(L, attr_list_cache);
- lua_nodelib_push(L);
- } else {
- lua_pushnil(L);
- }
- return 1;
+ int u = lua_gettop(L);
+ if (u == null) {
+ /* query */
+ halfword n ;
+ /* current_attribute_list() return attr_list_cache */
+ /* or null (attr_list_cache can also be null) */
+ n = current_attribute_list();
+ if (n) {
+ lua_pushnumber(L, n);
+ lua_nodelib_push(L);
+ }
+ else
+ lua_pushnil(L);
+ return 1;
} else {
/* assign */
luatex_warn("Assignment via node.current_attr(<list>) is not supported (yet)");
@@ -4347,26 +4344,23 @@ static int lua_nodelib_currentattr(lua_State * L)
}
}
+
/* node.direct.currentattr(node m) */
static int lua_nodelib_direct_currentattr(lua_State * L)
{
- if (max_used_attr >= 0) {
- if (attr_list_cache == cache_disabled) {
- update_attribute_cache();
- if (attr_list_cache == null) {
- lua_pushnil (L);
- return 1;
- }
- }
- attr_list_ref(attr_list_cache)++;
- lua_pushnumber(L, attr_list_cache);
- } else {
+ halfword n ;
+ /* current_attribute_list() return attr_list_cache */
+ /* or null (attr_list_cache can also be null) */
+ n = current_attribute_list();
+ if (n)
+ lua_pushnumber(L, n);
+ else
lua_pushnil(L);
- }
return 1;
}
+
/* node.direct.todirect */
static int lua_nodelib_direct_todirect(lua_State * L)
diff --git a/Build/source/texk/web2c/luatexdir/lua/loslibext.c b/Build/source/texk/web2c/luatexdir/lua/loslibext.c
index 575202b05db..5a20a63e440 100644
--- a/Build/source/texk/web2c/luatexdir/lua/loslibext.c
+++ b/Build/source/texk/web2c/luatexdir/lua/loslibext.c
@@ -24,8 +24,6 @@
#include <kpathsea/c-dir.h>
#include <time.h>
-static const char _svn_version[] =
- "$Id: loslibext.c 4479 2012-11-07 16:38:55Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/loslibext.c $";
#if defined(_WIN32) || defined(__NT__)
# define MKDIR(a,b) mkdir(a)
diff --git a/Build/source/texk/web2c/luatexdir/lua/lpdflib.c b/Build/source/texk/web2c/luatexdir/lua/lpdflib.c
index 1762833b037..7db30410816 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lpdflib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lpdflib.c
@@ -17,9 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-static const char _svn_version[] =
- "$Id: lpdflib.c 5018 2014-06-06 09:11:09Z taco $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lpdflib.c $";
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc b/Build/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc
index 843bb18e24f..d7782c2fe54 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc
+++ b/Build/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc
@@ -51,8 +51,6 @@ extern "C" {
# include <lua/luatex-api.h>
-static const char _svn_version[] =
- "$Id: lpdfscannerlib.cc 4718 2014-01-02 15:35:31Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lpdfscannerlib.cc $";
#define SCANNER "pdfscanner"
diff --git a/Build/source/texk/web2c/luatexdir/lua/lstatslib.c b/Build/source/texk/web2c/luatexdir/lua/lstatslib.c
index acf6895dbf3..bafe5f37a33 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lstatslib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lstatslib.c
@@ -17,9 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-static const char _svn_version[] =
- "$Id: lstatslib.c 5081 2014-11-07 18:38:33Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lstatslib.c $";
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/lstrlibext.c b/Build/source/texk/web2c/luatexdir/lua/lstrlibext.c
index e28296ca2b0..8a474fd09c9 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lstrlibext.c
+++ b/Build/source/texk/web2c/luatexdir/lua/lstrlibext.c
@@ -29,8 +29,6 @@
#include "lapi.h"
#include "lundump.h"
-static const char _svn_version[] =
- "$Id: lstrlibext.c 4718 2014-01-02 15:35:31Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/lstrlibext.c $";
static int str_split (lua_State *L) {
size_t l;
diff --git a/Build/source/texk/web2c/luatexdir/lua/ltexiolib.c b/Build/source/texk/web2c/luatexdir/lua/ltexiolib.c
index 630ed333d51..5e4d515a848 100644
--- a/Build/source/texk/web2c/luatexdir/lua/ltexiolib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/ltexiolib.c
@@ -20,8 +20,6 @@
#include "ptexlib.h"
#include "lua/luatex-api.h"
-static const char _svn_version[] =
- "$Id: ltexiolib.c 4847 2014-03-05 18:13:17Z luigi $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/ltexiolib.c $";
typedef void (*texio_printer) (const char *);
diff --git a/Build/source/texk/web2c/luatexdir/lua/ltexlib.c b/Build/source/texk/web2c/luatexdir/lua/ltexlib.c
index df5b4748800..6082e337693 100644
--- a/Build/source/texk/web2c/luatexdir/lua/ltexlib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/ltexlib.c
@@ -25,10 +25,6 @@ setter no prev link is created so we can presume that it's not used later on. */
#include "lua/luatex-api.h"
-
-static const char _svn_version[] =
- "$Id: ltexlib.c 5081 2014-11-07 18:38:33Z luigi $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/ltexlib.c $";
-
#define attribute(A) eqtb[attribute_base+(A)].hh.rh
#define dimen(A) eqtb[scaled_base+(A)].hh.rh
#undef skip
@@ -2433,6 +2429,7 @@ static int tex_run_boot(lua_State * L)
/* tex is ready to go, now */
unhide_lua_table(Luas, "tex", tex_table_id);
unhide_lua_table(Luas, "pdf", pdf_table_id);
+ unhide_lua_table(Luas, "newtoken", newtoken_table_id);
unhide_lua_table(Luas, "token", token_table_id);
unhide_lua_table(Luas, "node", node_table_id);
diff --git a/Build/source/texk/web2c/luatexdir/lua/ltokenlib.c b/Build/source/texk/web2c/luatexdir/lua/ltokenlib.c
index c575614c537..fd3edb2921f 100644
--- a/Build/source/texk/web2c/luatexdir/lua/ltokenlib.c
+++ b/Build/source/texk/web2c/luatexdir/lua/ltokenlib.c
@@ -20,8 +20,6 @@
#include "ptexlib.h"
#include "lua/luatex-api.h"
-static const char _svn_version[] =
- "$Id: ltokenlib.c 4524 2012-12-20 15:38:02Z taco $ $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/ltokenlib.c $";
#define is_valid_token(L,i) (lua_istable(L,i) && lua_rawlen(L,i)==3)
#define get_token_cmd(L,i) lua_rawgeti(L,i,1)
diff --git a/Build/source/texk/web2c/luatexdir/lua/luagen.h b/Build/source/texk/web2c/luatexdir/lua/luagen.h
index b88503ceb6e..ae30fa1313b 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luagen.h
+++ b/Build/source/texk/web2c/luatexdir/lua/luagen.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luagen.h 4679 2013-12-19 15:47:53Z luigi $ */
extern void lua_begin_page(PDF pdf);
extern void lua_end_page(PDF pdf);
diff --git a/Build/source/texk/web2c/luatexdir/lua/luagen.w b/Build/source/texk/web2c/luatexdir/lua/luagen.w
index bb174262878..caf377ae445 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luagen.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luagen.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luagen.w 4679 2013-12-19 15:47:53Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luagen.w $";
+
#include "ptexlib.h"
#include "pdf/pdfpage.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/luainit.w b/Build/source/texk/web2c/luatexdir/lua/luainit.w
index 11d78503e30..37ec143f5b4 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luainit.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luainit.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luainit.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luainit.w $";
+
#include "ptexlib.h"
@@ -263,6 +261,20 @@ int lua_numeric_field_by_index(lua_State * L, int name_index, int dflt)
return i;
}
+@ @c
+unsigned int lua_unsigned_numeric_field_by_index(lua_State * L, int name_index, int dflt)
+{
+ register unsigned int i = dflt;
+ lua_rawgeti(L, LUA_REGISTRYINDEX, name_index); /* fetch the stringptr */
+ lua_rawget(L, -2);
+ if (lua_type(L, -1) == LUA_TNUMBER) {
+ i = lua_uroundnumber(L, -1);
+ }
+ lua_pop(L, 1);
+ return i;
+}
+
+
@ @c
static void parse_options(int ac, char **av)
@@ -430,8 +442,8 @@ static void parse_options(int ac, char **av)
"aleph by Giuseppe Bilotta\n"
"pdftex by Han The Thanh and friends\n"
"kpathsea by Karl Berry, Olaf Weber and others\n"
- "lua by Roberto Ierusalimschy, Waldemar Celes,\n"
- " Luiz Henrique de Figueiredo\n"
+ "lua by Roberto Ierusalimschy, Waldemar Celes\n"
+ " and Luiz Henrique de Figueiredo\n"
"metapost by John Hobby, Taco Hoekwater and friends.\n"
"poppler by Derek Noonburg, Kristian H\\ogsberg (partial)\n"
#ifdef LuajitTeX
@@ -775,6 +787,7 @@ static void setup_lua_path(lua_State * L)
@c
int tex_table_id;
int pdf_table_id;
+int newtoken_table_id;
int token_table_id;
int node_table_id;
@@ -951,6 +964,7 @@ void lua_initialize(int ac, char **av)
char *v1;
/* hide the 'tex' and 'pdf' table */
tex_table_id = hide_lua_table(Luas, "tex");
+ newtoken_table_id = hide_lua_table(Luas, "newtoken");
token_table_id = hide_lua_table(Luas, "token");
node_table_id = hide_lua_table(Luas, "node");
pdf_table_id = hide_lua_table(Luas, "pdf");
@@ -983,6 +997,7 @@ void lua_initialize(int ac, char **av)
/* unhide the 'tex' and 'pdf' table */
unhide_lua_table(Luas, "tex", tex_table_id);
unhide_lua_table(Luas, "pdf", pdf_table_id);
+ unhide_lua_table(Luas, "newtoken", newtoken_table_id);
unhide_lua_table(Luas, "token", token_table_id);
unhide_lua_table(Luas, "node", node_table_id);
diff --git a/Build/source/texk/web2c/luatexdir/lua/luajitstuff.w b/Build/source/texk/web2c/luatexdir/lua/luajitstuff.w
index 3e78fd2d940..2c08eddde80 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luajitstuff.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luajitstuff.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luastuff.w 4730 2014-01-03 14:44:14Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luastuff.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -311,6 +309,7 @@ void luainterpreter(void)
/* our own libraries */
luaopen_ff(L);
luaopen_tex(L);
+ luaopen_newtoken(L);
luaopen_token(L);
luaopen_node(L);
luaopen_texio(L);
@@ -661,7 +660,7 @@ LUALIB_API void *luaL_testudata (lua_State *L, int ud, const char *tname) {
}
@ @c
-/* It's not ok. See lua-users.org/wiki/CompatibilityWithLuafive for another solution */
+/* It's not ok. See lua-users.org/wiki/CompatibilityWithLuaFive for another solution */
LUALIB_API void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) {
/*luaL_checkversion(L);*/
luaL_checkstack(L, nup, "too many upvalues");
diff --git a/Build/source/texk/web2c/luatexdir/lua/luanode.w b/Build/source/texk/web2c/luatexdir/lua/luanode.w
index b0a9849c561..cc22ab5b6b6 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luanode.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luanode.w
@@ -21,9 +21,7 @@
nodes are removedor inserted, temp nodes don't interfere */
@ @c
-static const char _svn_version[] =
- "$Id: luanode.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luanode.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/luastuff.w b/Build/source/texk/web2c/luatexdir/lua/luastuff.w
index b8df4a79cb4..57aa2bb986d 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luastuff.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luastuff.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luastuff.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luastuff.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -265,6 +263,7 @@ void luainterpreter(void)
luaopen_ff(L);
luaopen_tex(L);
luaopen_token(L);
+ luaopen_newtoken(L);
luaopen_node(L);
luaopen_texio(L);
luaopen_kpse(L);
diff --git a/Build/source/texk/web2c/luatexdir/lua/luatex-api.h b/Build/source/texk/web2c/luatexdir/lua/luatex-api.h
index 6e9c5e278e7..8d4f2a371d3 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luatex-api.h
+++ b/Build/source/texk/web2c/luatexdir/lua/luatex-api.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luatex-api.h 5081 2014-11-07 18:38:33Z luigi $ */
#ifndef LUATEX_API_H
# define LUATEX_API_H 1
@@ -114,6 +113,7 @@ extern int font_to_lua(lua_State * L, int f);
extern int font_from_lua(lua_State * L, int f); /* return is boolean */
extern int luaopen_token(lua_State * L);
+extern int luaopen_newtoken(lua_State * L);
extern void tokenlist_to_lua(lua_State * L, int p);
extern void tokenlist_to_luastring(lua_State * L, int p);
extern int tokenlist_from_lua(lua_State * L);
@@ -207,6 +207,7 @@ extern void init_tex_table(lua_State * L);
extern int tex_table_id;
extern int pdf_table_id;
+extern int newtoken_table_id;
extern int token_table_id;
extern int node_table_id;
extern int main_initialize(void);
@@ -280,9 +281,18 @@ extern char **environ;
lua_rawgeti(L, LUA_REGISTRYINDEX, luaS_##a##_index);\
lua_rawget(L, -1+n)
-#define lua_roundnumber(a,b) (int)floor((double)lua_tonumber(L,-1)+0.5)
-extern int lua_numeric_field_by_index(lua_State *, int , int);
+/*
+Unfortunately floor is already redefined as
+#define floor ((integer)floor((double)(a)))
+so
+#define lua_uroundnumber(a,b) (unsigned int)floor((double)(lua_tonumber(a,b)+0.5))
+is useless.
+*/
+#define lua_roundnumber(a,b) (int)floor((double)lua_tonumber(a,b)+0.5)
+#define lua_uroundnumber(a,b) (unsigned int)((double)(lua_tonumber(a,b)+0.5))
+extern int lua_numeric_field_by_index(lua_State *, int , int);
+extern unsigned int lua_unsigned_numeric_field_by_index(lua_State *, int , int);
/* Currently we sometimes use numbers and sometimes strings in node properties. We can
@@ -378,6 +388,7 @@ l_dir_text_index[88] = lua_key_index(pRTT);\
#define set_make_keys \
+make_lua_key(cmdname);make_lua_key(expandable);make_lua_key(protected);\
make_lua_key(LTL);\
make_lua_key(MathConstants);\
make_lua_key(RTT);\
@@ -387,6 +398,7 @@ make_lua_key(accent);\
make_lua_key(action);\
make_lua_key(action_id);\
make_lua_key(action_type);\
+make_lua_key(active);\
make_lua_key(additional);\
make_lua_key(adjust);\
make_lua_key(adjust_head);\
@@ -440,6 +452,7 @@ make_lua_key(crampeddisplay);\
make_lua_key(crampedscript);\
make_lua_key(crampedscriptscript);\
make_lua_key(crampedtext);\
+make_lua_key(csname);\
make_lua_key(data);\
make_lua_key(degree);\
make_lua_key(delim);\
@@ -520,6 +533,7 @@ make_lua_key(log);\
make_lua_key(lua);\
make_lua_key(lua_functions);\
make_lua_key(luatex);\
+make_lua_key(luatex_newtoken);\
make_lua_key(luatex_node);\
make_lua_key(mLTL);\
make_lua_key(mRTT);\
@@ -645,6 +659,8 @@ make_lua_key(tex);\
make_lua_key(text);\
make_lua_key(thread_attr);\
make_lua_key(thread_id);\
+make_lua_key(tok);\
+make_lua_key(token);\
make_lua_key(top);\
make_lua_key(top_accent);\
make_lua_key(top_left);\
@@ -674,7 +690,8 @@ make_lua_key(xyz_zoom);\
make_lua_key(yoffset)
- #define set_init_keys \
+#define set_init_keys \
+init_lua_key(cmdname);init_lua_key(expandable);init_lua_key(protected);\
init_lua_key(LTL);\
init_lua_key(MathConstants);\
init_lua_key(RTT);\
@@ -684,6 +701,7 @@ init_lua_key(accent);\
init_lua_key(action);\
init_lua_key(action_id);\
init_lua_key(action_type);\
+init_lua_key(active);\
init_lua_key(additional);\
init_lua_key(adjust);\
init_lua_key(adjust_head);\
@@ -737,6 +755,7 @@ init_lua_key(crampeddisplay);\
init_lua_key(crampedscript);\
init_lua_key(crampedscriptscript);\
init_lua_key(crampedtext);\
+init_lua_key(csname);\
init_lua_key(data);\
init_lua_key(degree);\
init_lua_key(delim);\
@@ -815,6 +834,7 @@ init_lua_key(local_box);\
init_lua_key(log);\
init_lua_key(lua);\
init_lua_key(luatex);\
+init_lua_key(luatex_newtoken);\
init_lua_key(mark);\
init_lua_key(math);\
init_lua_key(math_choice);\
@@ -927,6 +947,8 @@ init_lua_key(tex);\
init_lua_key(text);\
init_lua_key(thread_attr);\
init_lua_key(thread_id);\
+init_lua_key(tok);\
+init_lua_key(token);\
init_lua_key(top);\
init_lua_key(top_accent);\
init_lua_key(top_left);\
@@ -1035,6 +1057,8 @@ extern int experimental_code[MAX_EXPERIMENTAL_CODE_SIZE] ;
/* */
+use_lua_key(cmdname);use_lua_key(expandable);use_lua_key(protected);
+
use_lua_key(LTL);
use_lua_key(MathConstants);
use_lua_key(RTT);
@@ -1044,6 +1068,7 @@ use_lua_key(accent);
use_lua_key(action);
use_lua_key(action_id);
use_lua_key(action_type);
+use_lua_key(active);
use_lua_key(additional);
use_lua_key(adjust);
use_lua_key(adjust_head);
@@ -1097,6 +1122,7 @@ use_lua_key(crampeddisplay);
use_lua_key(crampedscript);
use_lua_key(crampedscriptscript);
use_lua_key(crampedtext);
+use_lua_key(csname);
use_lua_key(data);
use_lua_key(degree);
use_lua_key(delim);
@@ -1177,6 +1203,7 @@ use_lua_key(log);
use_lua_key(lua);
use_lua_key(lua_functions);
use_lua_key(luatex);
+use_lua_key(luatex_newtoken);
use_lua_key(luatex_node);
use_lua_key(mLTL);
use_lua_key(mRTT);
@@ -1302,6 +1329,8 @@ use_lua_key(tex);
use_lua_key(text);
use_lua_key(thread_attr);
use_lua_key(thread_id);
+use_lua_key(tok);
+use_lua_key(token);
use_lua_key(top);
use_lua_key(top_accent);
use_lua_key(top_left);
diff --git a/Build/source/texk/web2c/luatexdir/lua/luatoken.w b/Build/source/texk/web2c/luatexdir/lua/luatoken.w
index a88d9e25923..c832fb84acb 100644
--- a/Build/source/texk/web2c/luatexdir/lua/luatoken.w
+++ b/Build/source/texk/web2c/luatexdir/lua/luatoken.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: luatoken.w 4562 2013-01-21 02:58:59Z khaled $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/luatoken.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/lua/texluac.w b/Build/source/texk/web2c/luatexdir/lua/texluac.w
index ebfd54f8e01..396121cba6c 100644
--- a/Build/source/texk/web2c/luatexdir/lua/texluac.w
+++ b/Build/source/texk/web2c/luatexdir/lua/texluac.w
@@ -25,9 +25,7 @@
% This file is part of LuaTeX.
@ @c
-static const char _svn_version[] =
- "$Id: texluac.w 4718 2014-01-02 15:35:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/lua/texluac.w $";
+
#include <ctype.h>
#include <errno.h>
diff --git a/Build/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c b/Build/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c
index 7db31c12126..b8006290a1c 100644
--- a/Build/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c
+++ b/Build/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c
@@ -27,9 +27,6 @@
#include <basics.h>
#include <ustring.h>
-static const char _svn_version[] =
- "$Id: ffdummies.c 3738 2010-07-13 10:28:24Z oneiros $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/luafontloader/src/ffdummies.c $";
/* fix for non-gcc compilation: */
diff --git a/Build/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c b/Build/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c
index 04f05d3384d..f2791367b61 100644
--- a/Build/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c
+++ b/Build/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c
@@ -36,9 +36,6 @@
#endif
#include <locale.h>
-static const char _svn_version[] =
- "$Id: luafflib.c 4884 2014-03-14 13:21:17Z taco $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/luafontloader/src/luafflib.c $";
extern char **gww_errors;
extern int gww_error_count;
diff --git a/Build/source/texk/web2c/luatexdir/luapeg/lpeg.c b/Build/source/texk/web2c/luatexdir/luapeg/lpeg.c
index 3e64950fb98..12c7ea42d36 100644
--- a/Build/source/texk/web2c/luatexdir/luapeg/lpeg.c
+++ b/Build/source/texk/web2c/luatexdir/luapeg/lpeg.c
@@ -7,14 +7,14 @@
** Copyright 2007, Lua.org & PUC-Rio (see 'lpeg.html' for license)
*/
-/* #include <ctype.h> */
-/* #include <limits.h> */
-/* #include <stdio.h> */
+/* #include <ctype.h>*/
+/* #include <limits.h>*/
+/* #include <stdio.h>*/
-/* #include "lptypes.h" */
-/* #include "lpprint.h" */
-/* #include "lpcode.h" */
+/* #include "lptypes.h"*/
+/* #include "lpprint.h"*/
+/* #include "lpcode.h"*/
#if defined(LPEG_DEBUG)
@@ -246,24 +246,22 @@ void printktable (lua_State *L, int idx) {
/* }====================================================== */
#endif
-
-
/*
** $Id: lpvm.c,v 1.5 2013/04/12 16:29:49 roberto Exp $
** Copyright 2007, Lua.org & PUC-Rio (see 'lpeg.html' for license)
*/
-/* #include <limits.h> */
-/* #include <string.h> */
+/* #include <limits.h>*/
+/* #include <string.h>*/
-/* #include "lua.h" */
-/* #include "lauxlib.h" */
+/* #include "lua.h"*/
+/* #include "lauxlib.h"*/
-/* #include "lpcap.h" */
-/* #include "lptypes.h" */
-/* #include "lpvm.h" */
-/* #include "lpprint.h" */
+/* #include "lpcap.h"*/
+/* #include "lptypes.h"*/
+/* #include "lpvm.h"*/
+/* #include "lpprint.h"*/
/* initial size for call/backtrack stack */
@@ -603,21 +601,19 @@ const char *match (lua_State *L, const char *o, const char *s, const char *e,
/* }====================================================== */
-
-
/*
-** $Id: lpcode.c,v 1.18 2013/04/12 16:30:33 roberto Exp $
+** $Id: lpcode.c,v 1.21 2014/12/12 17:01:29 roberto Exp $
** Copyright 2007, Lua.org & PUC-Rio (see 'lpeg.html' for license)
*/
-/* #include <limits.h> */
+/* #include <limits.h>*/
-/* #include "lua.h" */
-/* #include "lauxlib.h" */
+/* #include "lua.h"*/
+/* #include "lauxlib.h"*/
-/* #include "lptypes.h" */
-/* #include "lpcode.h" */
+/* #include "lptypes.h"*/
+/* #include "lpcode.h"*/
/* signals a "no-instruction */
@@ -640,26 +636,30 @@ static const Charset *fullset = &fullset_;
*/
/*
-** Check whether a charset is empty (IFail), singleton (IChar),
-** full (IAny), or none of those (ISet).
+** Check whether a charset is empty (returns IFail), singleton (IChar),
+** full (IAny), or none of those (ISet). When singleton, '*c' returns
+** which character it is. (When generic set, the set was the input,
+** so there is no need to return it.)
*/
static Opcode charsettype (const byte *cs, int *c) {
- int count = 0;
+ int count = 0; /* number of characters in the set */
int i;
- int candidate = -1; /* candidate position for a char */
- for (i = 0; i < CHARSETSIZE; i++) {
+ int candidate = -1; /* candidate position for the singleton char */
+ for (i = 0; i < CHARSETSIZE; i++) { /* for each byte */
int b = cs[i];
- if (b == 0) {
- if (count > 1) return ISet; /* else set is still empty */
- }
- else if (b == 0xFF) {
- if (count < (i * BITSPERCHAR))
- return ISet;
+ if (b == 0) { /* is byte empty? */
+ if (count > 1) /* was set neither empty nor singleton? */
+ return ISet; /* neither full nor empty nor singleton */
+ /* else set is still empty or singleton */
+ }
+ else if (b == 0xFF) { /* is byte full? */
+ if (count < (i * BITSPERCHAR)) /* was set not full? */
+ return ISet; /* neither full nor empty nor singleton */
else count += BITSPERCHAR; /* set is still full */
}
- else if ((b & (b - 1)) == 0) { /* byte has only one bit? */
- if (count > 0)
- return ISet; /* set is neither full nor empty */
+ else if ((b & (b - 1)) == 0) { /* has byte only one bit? */
+ if (count > 0) /* was set not empty? */
+ return ISet; /* neither full nor empty nor singleton */
else { /* set has only one char till now; track it */
count++;
candidate = i;
@@ -684,6 +684,7 @@ static Opcode charsettype (const byte *cs, int *c) {
}
}
+
/*
** A few basic operations on Charsets
*/
@@ -691,16 +692,11 @@ static void cs_complement (Charset *cs) {
loopset(i, cs->cs[i] = ~cs->cs[i]);
}
-
static int cs_equal (const byte *cs1, const byte *cs2) {
loopset(i, if (cs1[i] != cs2[i]) return 0);
return 1;
}
-
-/*
-** computes whether sets cs1 and cs2 are disjoint
-*/
static int cs_disjoint (const Charset *cs1, const Charset *cs2) {
loopset(i, if ((cs1->cs[i] & cs2->cs[i]) != 0) return 0;)
return 1;
@@ -708,7 +704,8 @@ static int cs_disjoint (const Charset *cs1, const Charset *cs2) {
/*
-** Convert a 'char' pattern (TSet, TChar, TAny) to a charset
+** If 'tree' is a 'char' pattern (TSet, TChar, TAny), convert it into a
+** charset and return 1; else return 0.
*/
int tocharset (TTree *tree, Charset *cs) {
switch (tree->tag) {
@@ -723,7 +720,7 @@ int tocharset (TTree *tree, Charset *cs) {
return 1;
}
case TAny: {
- loopset(i, cs->cs[i] = 0xFF); /* add all to the set */
+ loopset(i, cs->cs[i] = 0xFF); /* add all characters to the set */
return 1;
}
default: return 0;
@@ -732,13 +729,16 @@ int tocharset (TTree *tree, Charset *cs) {
/*
-** Checks whether a pattern has captures
+** Check whether a pattern tree has captures
*/
int hascaptures (TTree *tree) {
tailcall:
switch (tree->tag) {
case TCapture: case TRunTime:
return 1;
+ case TCall:
+ tree = sib2(tree); goto tailcall; /* return hascaptures(sib2(tree)); */
+ case TOpenCall: assert(0);
default: {
switch (numsiblings[tree->tag]) {
case 1: /* return hascaptures(sib1(tree)); */
@@ -768,7 +768,7 @@ int hascaptures (TTree *tree) {
** p is nullable => nullable(p)
** nofail(p) => p cannot fail
** The function assumes that TOpenCall is not nullable;
-** this will be checked again when the grammar is fixed.)
+** this will be checked again when the grammar is fixed.
** Run-time captures can do whatever they want, so the result
** is conservative.
*/
@@ -805,7 +805,7 @@ int checkaux (TTree *tree, int pred) {
case TCall: /* return checkaux(sib2(tree), pred); */
tree = sib2(tree); goto tailcall;
default: assert(0); return 0;
- };
+ }
}
@@ -852,16 +852,20 @@ int fixedlenx (TTree *tree, int count, int len) {
/*
** Computes the 'first set' of a pattern.
** The result is a conservative aproximation:
-** match p ax -> x' for some x ==> a in first(p).
+** match p ax -> x (for some x) ==> a belongs to first(p)
+** or
+** a not in first(p) ==> match p ax -> fail (for all x)
+**
** The set 'follow' is the first set of what follows the
** pattern (full set if nothing follows it).
-** The function returns 0 when this set can be used for
-** tests that avoid the pattern altogether.
+**
+** The function returns 0 when this resulting set can be used for
+** test instructions that avoid the pattern altogether.
** A non-zero return can happen for two reasons:
-** 1) match p '' -> '' ==> returns 1.
-** (tests cannot be used because they always fail for an empty input)
-** 2) there is a match-time capture ==> returns 2.
-** (match-time captures should not be avoided by optimizations)
+** 1) match p '' -> '' ==> return has bit 1 set
+** (tests cannot be used because they would always fail for an empty input);
+** 2) there is a match-time capture ==> return has bit 2 set
+** (optimizations should not bypass match-time captures).
*/
static int getfirst (TTree *tree, const Charset *follow, Charset *firstset) {
tailcall:
@@ -872,7 +876,7 @@ static int getfirst (TTree *tree, const Charset *follow, Charset *firstset) {
}
case TTrue: {
loopset(i, firstset->cs[i] = follow->cs[i]);
- return 1;
+ return 1; /* accepts the empty string */
}
case TFalse: {
loopset(i, firstset->cs[i] = 0);
@@ -887,7 +891,8 @@ static int getfirst (TTree *tree, const Charset *follow, Charset *firstset) {
}
case TSeq: {
if (!nullable(sib1(tree))) {
- /* return getfirst(sib1(tree), fullset, firstset); */
+ /* when p1 is not nullable, p2 has nothing to contribute;
+ return getfirst(sib1(tree), fullset, firstset); */
tree = sib1(tree); follow = fullset; goto tailcall;
}
else { /* FIRST(p1 p2, fl) = FIRST(p1, FIRST(p2, fl)) */
@@ -931,7 +936,7 @@ static int getfirst (TTree *tree, const Charset *follow, Charset *firstset) {
/* else go through */
}
case TBehind: { /* instruction gives no new information */
- /* call 'getfirst' to check for math-time captures */
+ /* call 'getfirst' only to check for math-time captures */
int e = getfirst(sib1(tree), follow, firstset);
loopset(i, firstset->cs[i] = follow->cs[i]); /* uses follow */
return e | 1; /* always can accept the empty string */
@@ -942,8 +947,8 @@ static int getfirst (TTree *tree, const Charset *follow, Charset *firstset) {
/*
-** If it returns true, then pattern can fail only depending on the next
-** character of the subject
+** If 'headfail(tree)' true, then 'tree' can fail only depending on the
+** next character of the subject.
*/
static int headfail (TTree *tree) {
tailcall:
@@ -1010,9 +1015,9 @@ int sizei (const Instruction *i) {
switch((Opcode)i->i.code) {
case ISet: case ISpan: return CHARSETINSTSIZE;
case ITestSet: return CHARSETINSTSIZE + 1;
- case ITestChar: case ITestAny: case IChoice: case IJmp:
- case ICall: case IOpenCall: case ICommit: case IPartialCommit:
- case IBackCommit: return 2;
+ case ITestChar: case ITestAny: case IChoice: case IJmp: case ICall:
+ case IOpenCall: case ICommit: case IPartialCommit: case IBackCommit:
+ return 2;
default: return 1;
}
}
@@ -1030,7 +1035,8 @@ typedef struct CompileState {
/*
** code generation is recursive; 'opt' indicates that the code is
-** being generated under a 'IChoice' operator jumping to its end.
+** being generated under a 'IChoice' operator jumping to its end
+** (that is, the match is "optional").
** 'tt' points to a previous test protecting this code. 'fl' is
** the follow set of the pattern.
*/
@@ -1038,7 +1044,7 @@ static void codegen (CompileState *compst, TTree *tree, int opt, int tt,
const Charset *fl);
-void reallocprog (lua_State *L, Pattern *p, int nsize) {
+void realloccode (lua_State *L, Pattern *p, int nsize) {
void *ud;
lua_Alloc f = lua_getallocf(L, &ud);
void *newblock = f(ud, p->code, p->codesize * sizeof(Instruction),
@@ -1053,7 +1059,7 @@ void reallocprog (lua_State *L, Pattern *p, int nsize) {
static int nextinstruction (CompileState *compst) {
int size = compst->p->codesize;
if (compst->ncode >= size)
- reallocprog(compst->L, compst->p, size * 2);
+ realloccode(compst->L, compst->p, size * 2);
return compst->ncode++;
}
@@ -1069,6 +1075,9 @@ static int addinstruction (CompileState *compst, Opcode op, int aux) {
}
+/*
+** Add an instruction followed by space for an offset (to be set later)
+*/
static int addoffsetinst (CompileState *compst, Opcode op) {
int i = addinstruction(compst, op, 0); /* instruction */
addinstruction(compst, (Opcode)0, 0); /* open space for offset */
@@ -1077,6 +1086,9 @@ static int addoffsetinst (CompileState *compst, Opcode op) {
}
+/*
+** Set the offset of an instruction
+*/
static void setoffset (CompileState *compst, int instruction, int offset) {
getinstr(compst, instruction + 1).offset = offset;
}
@@ -1085,7 +1097,7 @@ static void setoffset (CompileState *compst, int instruction, int offset) {
/*
** Add a capture instruction:
** 'op' is the capture instruction; 'cap' the capture kind;
-** 'key' the key into ktable; 'aux' is optional offset
+** 'key' the key into ktable; 'aux' is the optional capture offset
**
*/
static int addinstcap (CompileState *compst, Opcode op, int cap, int key,
@@ -1101,12 +1113,18 @@ static int addinstcap (CompileState *compst, Opcode op, int cap, int key,
#define target(code,i) ((i) + code[i + 1].offset)
+/*
+** Patch 'instruction' to jump to 'target'
+*/
static void jumptothere (CompileState *compst, int instruction, int target) {
if (instruction >= 0)
setoffset(compst, instruction, target - instruction);
}
+/*
+** Patch 'instruction' to jump to current position
+*/
static void jumptohere (CompileState *compst, int instruction) {
jumptothere(compst, instruction, gethere(compst));
}
@@ -1470,7 +1488,8 @@ static int codeseq1 (CompileState *compst, TTree *p1, TTree *p2,
/*
** Main code-generation function: dispatch to auxiliar functions
-** according to kind of tree
+** according to kind of tree. ('needfollow' should return true
+** only for consructions that use 'fl'.)
*/
static void codegen (CompileState *compst, TTree *tree, int opt, int tt,
const Charset *fl) {
@@ -1513,6 +1532,7 @@ static void peephole (CompileState *compst) {
Instruction *code = compst->p->code;
int i;
for (i = 0; i < compst->ncode; i += sizei(&code[i])) {
+ redo:
switch (code[i].i.code) {
case IChoice: case ICall: case ICommit: case IPartialCommit:
case IBackCommit: case ITestChar: case ITestSet:
@@ -1534,8 +1554,7 @@ static void peephole (CompileState *compst) {
int fft = finallabel(code, ft);
code[i] = code[ft]; /* jump becomes that instruction... */
jumptothere(compst, i, fft); /* but must correct its offset */
- i--; /* reoptimize its label */
- break;
+ goto redo; /* reoptimize its label */
}
default: {
jumptothere(compst, i, ft); /* optimize label */
@@ -1557,10 +1576,10 @@ static void peephole (CompileState *compst) {
Instruction *compile (lua_State *L, Pattern *p) {
CompileState compst;
compst.p = p; compst.ncode = 0; compst.L = L;
- reallocprog(L, p, 2); /* minimum initial size */
+ realloccode(L, p, 2); /* minimum initial size */
codegen(&compst, p->tree, 0, NOINST, fullset);
addinstruction(&compst, IEnd, 0);
- reallocprog(L, p, compst.ncode); /* set final size */
+ realloccode(L, p, compst.ncode); /* set final size */
peephole(&compst);
return p->code;
}
@@ -1568,17 +1587,16 @@ Instruction *compile (lua_State *L, Pattern *p) {
/* }====================================================== */
-
/*
-** $Id: lpcap.c,v 1.4 2013/03/21 20:25:12 roberto Exp $
+** $Id: lpcap.c,v 1.5 2014/12/12 16:58:47 roberto Exp $
** Copyright 2007, Lua.org & PUC-Rio (see 'lpeg.html' for license)
*/
-/* #include "lua.h" */
-/* #include "lauxlib.h" */
+/* #include "lua.h"*/
+/* #include "lauxlib.h"*/
-/* #include "lpcap.h" */
-/* #include "lptypes.h" */
+/* #include "lpcap.h"*/
+/* #include "lptypes.h"*/
#define captype(cap) ((cap)->kind)
@@ -2033,7 +2051,7 @@ static int pushcapture (CapState *cs) {
case Carg: {
int arg = (cs->cap++)->idx;
if (arg + FIXEDARGS > cs->ptop)
- return luaL_error(L, "reference to absent argument #%d", arg);
+ return luaL_error(L, "reference to absent extra argument #%d", arg);
lua_pushvalue(L, arg + FIXEDARGS);
return 1;
}
@@ -2107,23 +2125,23 @@ int getcaptures (lua_State *L, const char *s, const char *r, int ptop) {
/*
-** $Id: lptree.c,v 1.10 2013/04/12 16:30:33 roberto Exp $
+** $Id: lptree.c,v 1.15 2015/03/04 17:23:00 roberto Exp $
** Copyright 2013, Lua.org & PUC-Rio (see 'lpeg.html' for license)
*/
-/* #include <ctype.h> */
-/* #include <limits.h> */
-/* #include <string.h> */
+/* #include <ctype.h>*/
+/* #include <limits.h>*/
+/* #include <string.h>*/
-/* #include "lua.h" */
-/* #include "lauxlib.h" */
+/* #include "lua.h"*/
+/* #include "lauxlib.h"*/
-/* #include "lptypes.h" */
-/* #include "lpcap.h" */
-/* #include "lpcode.h" */
-/* #include "lpprint.h" */
-/* #include "lptree.h" */
+/* #include "lptypes.h"*/
+/* #include "lpcap.h"*/
+/* #include "lpcode.h"*/
+/* #include "lpprint.h"*/
+/* #include "lptree.h"*/
/* number of siblings for each tree */
@@ -2234,6 +2252,189 @@ static void finalfix (lua_State *L, int postable, TTree *g, TTree *t) {
}
+
+/*
+** {===================================================================
+** KTable manipulation
+**
+** - The ktable of a pattern 'p' can be shared by other patterns that
+** contain 'p' and no other constants. Because of this sharing, we
+** should not add elements to a 'ktable' unless it was freshly created
+** for the new pattern.
+**
+** - The maximum index in a ktable is USHRT_MAX, because trees and
+** patterns use unsigned shorts to store those indices.
+** ====================================================================
+*/
+
+/*
+** Create a new 'ktable' to the pattern at the top of the stack.
+*/
+static void newktable (lua_State *L, int n) {
+ lua_createtable(L, n, 0); /* create a fresh table */
+ lua_setfenv(L, -2); /* set it as 'ktable' for pattern */
+}
+
+
+/*
+** Add element 'idx' to 'ktable' of pattern at the top of the stack;
+** Return index of new element.
+** If new element is nil, does not add it to table (as it would be
+** useless) and returns 0, as ktable[0] is always nil.
+*/
+static int addtoktable (lua_State *L, int idx) {
+ if (lua_isnil(L, idx)) /* nil value? */
+ return 0;
+ else {
+ int n;
+ lua_getfenv(L, -1); /* get ktable from pattern */
+ n = lua_objlen(L, -1);
+ if (n >= USHRT_MAX)
+ luaL_error(L, "too many Lua values in pattern");
+ lua_pushvalue(L, idx); /* element to be added */
+ lua_rawseti(L, -2, ++n);
+ lua_pop(L, 1); /* remove 'ktable' */
+ return n;
+ }
+}
+
+
+/*
+** Return the number of elements in the ktable at 'idx'.
+** In Lua 5.2/5.3, default "environment" for patterns is nil, not
+** a table. Treat it as an empty table. In Lua 5.1, assumes that
+** the environment has no numeric indices (len == 0)
+*/
+static int ktablelen (lua_State *L, int idx) {
+ if (!lua_istable(L, idx)) return 0;
+ else return lua_objlen(L, idx);
+}
+
+
+/*
+** Concatentate the contents of table 'idx1' into table 'idx2'.
+** (Assume that both indices are negative.)
+** Return the original length of table 'idx2' (or 0, if no
+** element was added, as there is no need to correct any index).
+*/
+static int concattable (lua_State *L, int idx1, int idx2) {
+ int i;
+ int n1 = ktablelen(L, idx1);
+ int n2 = ktablelen(L, idx2);
+ if (n1 + n2 > USHRT_MAX)
+ luaL_error(L, "too many Lua values in pattern");
+ if (n1 == 0) return 0; /* nothing to correct */
+ for (i = 1; i <= n1; i++) {
+ lua_rawgeti(L, idx1, i);
+ lua_rawseti(L, idx2 - 1, n2 + i); /* correct 'idx2' */
+ }
+ return n2;
+}
+
+
+/*
+** When joining 'ktables', constants from one of the subpatterns must
+** be renumbered; 'correctkeys' corrects their indices (adding 'n'
+** to each of them)
+*/
+static void correctkeys (TTree *tree, int n) {
+ if (n == 0) return; /* no correction? */
+ tailcall:
+ switch (tree->tag) {
+ case TOpenCall: case TCall: case TRunTime: case TRule: {
+ if (tree->key > 0)
+ tree->key += n;
+ break;
+ }
+ case TCapture: {
+ if (tree->key > 0 && tree->cap != Carg && tree->cap != Cnum)
+ tree->key += n;
+ break;
+ }
+ default: break;
+ }
+ switch (numsiblings[tree->tag]) {
+ case 1: /* correctkeys(sib1(tree), n); */
+ tree = sib1(tree); goto tailcall;
+ case 2:
+ correctkeys(sib1(tree), n);
+ tree = sib2(tree); goto tailcall; /* correctkeys(sib2(tree), n); */
+ default: assert(numsiblings[tree->tag] == 0); break;
+ }
+}
+
+
+/*
+** Join the ktables from p1 and p2 the ktable for the new pattern at the
+** top of the stack, reusing them when possible.
+*/
+static void joinktables (lua_State *L, int p1, TTree *t2, int p2) {
+ int n1, n2;
+ lua_getfenv(L, p1); /* get ktables */
+ lua_getfenv(L, p2);
+ n1 = ktablelen(L, -2);
+ n2 = ktablelen(L, -1);
+ if (n1 == 0 && n2 == 0) /* are both tables empty? */
+ lua_pop(L, 2); /* nothing to be done; pop tables */
+ else if (n2 == 0 || lua_equal(L, -2, -1)) { /* 2nd table empty or equal? */
+ lua_pop(L, 1); /* pop 2nd table */
+ lua_setfenv(L, -2); /* set 1st ktable into new pattern */
+ }
+ else if (n1 == 0) { /* first table is empty? */
+ lua_setfenv(L, -3); /* set 2nd table into new pattern */
+ lua_pop(L, 1); /* pop 1st table */
+ }
+ else {
+ lua_createtable(L, n1 + n2, 0); /* create ktable for new pattern */
+ /* stack: new p; ktable p1; ktable p2; new ktable */
+ concattable(L, -3, -1); /* from p1 into new ktable */
+ concattable(L, -2, -1); /* from p2 into new ktable */
+ lua_setfenv(L, -4); /* new ktable becomes 'p' environment */
+ lua_pop(L, 2); /* pop other ktables */
+ correctkeys(t2, n1); /* correction for indices from p2 */
+ }
+}
+
+
+/*
+** copy 'ktable' of element 'idx' to new tree (on top of stack)
+*/
+static void copyktable (lua_State *L, int idx) {
+ lua_getfenv(L, idx);
+ lua_setfenv(L, -2);
+}
+
+
+/*
+** merge 'ktable' from 'stree' at stack index 'idx' into 'ktable'
+** from tree at the top of the stack, and correct corresponding
+** tree.
+*/
+static void mergektable (lua_State *L, int idx, TTree *stree) {
+ int n;
+ lua_getfenv(L, -1); /* get ktables */
+ lua_getfenv(L, idx);
+ n = concattable(L, -1, -2);
+ lua_pop(L, 2); /* remove both ktables */
+ correctkeys(stree, n);
+}
+
+
+/*
+** Create a new 'ktable' to the pattern at the top of the stack, adding
+** all elements from pattern 'p' (if not 0) plus element 'idx' to it.
+** Return index of new element.
+*/
+static int addtonewktable (lua_State *L, int p, int idx) {
+ newktable(L, 1);
+ if (p)
+ mergektable(L, p, NULL);
+ return addtoktable(L, idx);
+}
+
+/* }====================================================== */
+
+
/*
** {======================================================
** Tree generation
@@ -2315,29 +2516,6 @@ static TTree *seqaux (TTree *tree, TTree *sib, int sibsize) {
/*
-** Add element 'idx' to 'ktable' of pattern at the top of the stack;
-** create new 'ktable' if necessary. Return index of new element.
-*/
-static int addtoktable (lua_State *L, int idx) {
- if (idx == 0 || lua_isnil(L, idx)) /* no actual value to insert? */
- return 0;
- else {
- int n;
- lua_getfenv(L, -1); /* get ktable from pattern */
- n = lua_objlen(L, -1);
- if (n == 0) { /* is it empty/non-existent? */
- lua_pop(L, 1); /* remove it */
- lua_createtable(L, 1, 0); /* create a fresh table */
- }
- lua_pushvalue(L, idx); /* element to be added */
- lua_rawseti(L, -2, n + 1);
- lua_setfenv(L, -2); /* set it as ktable for pattern */
- return n + 1;
- }
-}
-
-
-/*
** Build a sequence of 'n' nodes, each with tag 'tag' and 'u.n' got
** from the array 's' (or 0 if array is NULL). (TSeq is binary, so it
** must build a sequence of sequence of sequence...)
@@ -2412,7 +2590,7 @@ static TTree *getpatt (lua_State *L, int idx, int *len) {
case LUA_TFUNCTION: {
tree = newtree(L, 2);
tree->tag = TRunTime;
- tree->key = addtoktable(L, idx);
+ tree->key = addtonewktable(L, 0, idx);
sib1(tree)->tag = TTrue;
break;
}
@@ -2428,123 +2606,6 @@ static TTree *getpatt (lua_State *L, int idx, int *len) {
/*
-** Return the number of elements in the ktable of pattern at 'idx'.
-** In Lua 5.2, default "environment" for patterns is nil, not
-** a table. Treat it as an empty table. In Lua 5.1, assumes that
-** the environment has no numeric indices (len == 0)
-*/
-static int ktablelen (lua_State *L, int idx) {
- if (!lua_istable(L, idx)) return 0;
- else return lua_objlen(L, idx);
-}
-
-
-/*
-** Concatentate the contents of table 'idx1' into table 'idx2'.
-** (Assume that both indices are negative.)
-** Return the original length of table 'idx2'
-*/
-static int concattable (lua_State *L, int idx1, int idx2) {
- int i;
- int n1 = ktablelen(L, idx1);
- int n2 = ktablelen(L, idx2);
- if (n1 == 0) return 0; /* nothing to correct */
- for (i = 1; i <= n1; i++) {
- lua_rawgeti(L, idx1, i);
- lua_rawseti(L, idx2 - 1, n2 + i); /* correct 'idx2' */
- }
- return n2;
-}
-
-
-/*
-** Make a merge of ktables from p1 and p2 the ktable for the new
-** pattern at the top of the stack.
-*/
-static int joinktables (lua_State *L, int p1, int p2) {
- int n1, n2;
- lua_getfenv(L, p1); /* get ktables */
- lua_getfenv(L, p2);
- n1 = ktablelen(L, -2);
- n2 = ktablelen(L, -1);
- if (n1 == 0 && n2 == 0) { /* are both tables empty? */
- lua_pop(L, 2); /* nothing to be done; pop tables */
- return 0; /* nothing to correct */
- }
- if (n2 == 0 || lua_equal(L, -2, -1)) { /* second table is empty or equal? */
- lua_pop(L, 1); /* pop 2nd table */
- lua_setfenv(L, -2); /* set 1st ktable into new pattern */
- return 0; /* nothing to correct */
- }
- if (n1 == 0) { /* first table is empty? */
- lua_setfenv(L, -3); /* set 2nd table into new pattern */
- lua_pop(L, 1); /* pop 1st table */
- return 0; /* nothing to correct */
- }
- else {
- lua_createtable(L, n1 + n2, 0); /* create ktable for new pattern */
- /* stack: new p; ktable p1; ktable p2; new ktable */
- concattable(L, -3, -1); /* from p1 into new ktable */
- concattable(L, -2, -1); /* from p2 into new ktable */
- lua_setfenv(L, -4); /* new ktable becomes p env */
- lua_pop(L, 2); /* pop other ktables */
- return n1; /* correction for indices from p2 */
- }
-}
-
-
-static void correctkeys (TTree *tree, int n) {
- if (n == 0) return; /* no correction? */
- tailcall:
- switch (tree->tag) {
- case TOpenCall: case TCall: case TRunTime: case TRule: {
- if (tree->key > 0)
- tree->key += n;
- break;
- }
- case TCapture: {
- if (tree->key > 0 && tree->cap != Carg && tree->cap != Cnum)
- tree->key += n;
- break;
- }
- default: break;
- }
- switch (numsiblings[tree->tag]) {
- case 1: /* correctkeys(sib1(tree), n); */
- tree = sib1(tree); goto tailcall;
- case 2:
- correctkeys(sib1(tree), n);
- tree = sib2(tree); goto tailcall; /* correctkeys(sib2(tree), n); */
- default: assert(numsiblings[tree->tag] == 0); break;
- }
-}
-
-
-/*
-** copy 'ktable' of element 'idx' to new tree (on top of stack)
-*/
-static void copyktable (lua_State *L, int idx) {
- lua_getfenv(L, idx);
- lua_setfenv(L, -2);
-}
-
-
-/*
-** merge 'ktable' from rule at stack index 'idx' into 'ktable'
-** from tree at the top of the stack, and correct corresponding
-** tree.
-*/
-static void mergektable (lua_State *L, int idx, TTree *rule) {
- int n;
- lua_getfenv(L, -1); /* get ktables */
- lua_getfenv(L, idx);
- n = concattable(L, -1, -2);
- lua_pop(L, 2); /* remove both ktables */
- correctkeys(rule, n);
-}
-
-
-/*
** create a new tree, whith a new root and one sibling.
** Sibling must be on the Lua stack, at index 1.
*/
@@ -2572,7 +2633,7 @@ static TTree *newroot2sib (lua_State *L, int tag) {
tree->u.ps = 1 + s1;
memcpy(sib1(tree), tree1, s1 * sizeof(TTree));
memcpy(sib2(tree), tree2, s2 * sizeof(TTree));
- correctkeys(sib2(tree), joinktables(L, 1, 2));
+ joinktables(L, 1, sib2(tree), 2);
return tree;
}
@@ -2632,8 +2693,8 @@ static int lp_choice (lua_State *L) {
*/
static int lp_star (lua_State *L) {
int size1;
- int n = luaL_checkint(L, 2);
- TTree *tree1 = gettree(L, 1, &size1);
+ int n = (int)luaL_checkinteger(L, 2);
+ TTree *tree1 = getpatt(L, 1, &size1);
if (n >= 0) { /* seq tree1 (seq tree1 ... (seq tree1 (rep tree1))) */
TTree *tree = newtree(L, (n + 1) * (size1 + 1));
if (nullable(tree1))
@@ -2701,7 +2762,7 @@ static int lp_sub (lua_State *L) {
sib1(tree)->tag = TNot; /* ...not... */
memcpy(sib1(sib1(tree)), t2, s2 * sizeof(TTree)); /* ...t2 */
memcpy(sib2(tree), t1, s1 * sizeof(TTree)); /* ... and t1 */
- correctkeys(sib1(tree), joinktables(L, 1, 2));
+ joinktables(L, 1, sib1(tree), 2);
}
return 1;
}
@@ -2742,8 +2803,8 @@ static int lp_behind (lua_State *L) {
TTree *tree;
TTree *tree1 = getpatt(L, 1, NULL);
int n = fixedlen(tree1);
- luaL_argcheck(L, !hascaptures(tree1), 1, "pattern have captures");
luaL_argcheck(L, n > 0, 1, "pattern may not have fixed length");
+ luaL_argcheck(L, !hascaptures(tree1), 1, "pattern have captures");
luaL_argcheck(L, n <= MAXBEHIND, 1, "pattern too long to look behind");
tree = newroot1sib(L, TBehind);
tree->u.n = n;
@@ -2757,7 +2818,7 @@ static int lp_behind (lua_State *L) {
static int lp_V (lua_State *L) {
TTree *tree = newleaf(L, TOpenCall);
luaL_argcheck(L, !lua_isnoneornil(L, 1), 1, "non-nil value expected");
- tree->key = addtoktable(L, 1);
+ tree->key = addtonewktable(L, 0, 1);
return 1;
}
@@ -2770,7 +2831,7 @@ static int lp_V (lua_State *L) {
static int capture_aux (lua_State *L, int cap, int labelidx) {
TTree *tree = newroot1sib(L, TCapture);
tree->cap = cap;
- tree->key = addtoktable(L, labelidx);
+ tree->key = (labelidx == 0) ? 0 : addtonewktable(L, 1, labelidx);
return 1;
}
@@ -2778,10 +2839,9 @@ static int capture_aux (lua_State *L, int cap, int labelidx) {
/*
** Fill a tree with an empty capture, using an empty (TTrue) sibling.
*/
-static TTree *auxemptycap (lua_State *L, TTree *tree, int cap, int idx) {
+static TTree *auxemptycap (TTree *tree, int cap) {
tree->tag = TCapture;
tree->cap = cap;
- tree->key = addtoktable(L, idx);
sib1(tree)->tag = TTrue;
return tree;
}
@@ -2790,8 +2850,18 @@ static TTree *auxemptycap (lua_State *L, TTree *tree, int cap, int idx) {
/*
** Create a tree for an empty capture
*/
-static TTree *newemptycap (lua_State *L, int cap, int idx) {
- return auxemptycap(L, newtree(L, 2), cap, idx);
+static TTree *newemptycap (lua_State *L, int cap) {
+ return auxemptycap(newtree(L, 2), cap);
+}
+
+
+/*
+** Create a tree for an empty capture with an associated Lua value
+*/
+static TTree *newemptycapkey (lua_State *L, int cap, int idx) {
+ TTree *tree = auxemptycap(newtree(L, 2), cap);
+ tree->key = addtonewktable(L, 0, idx);
+ return tree;
}
@@ -2849,14 +2919,14 @@ static int lp_simplecapture (lua_State *L) {
static int lp_poscapture (lua_State *L) {
- newemptycap(L, Cposition, 0);
+ newemptycap(L, Cposition);
return 1;
}
static int lp_argcapture (lua_State *L) {
- int n = luaL_checkint(L, 1);
- TTree *tree = newemptycap(L, Carg, 0);
+ int n = (int)luaL_checkinteger(L, 1);
+ TTree *tree = newemptycap(L, Carg);
tree->key = n;
luaL_argcheck(L, 0 < n && n <= SHRT_MAX, 1, "invalid argument index");
return 1;
@@ -2865,7 +2935,7 @@ static int lp_argcapture (lua_State *L) {
static int lp_backref (lua_State *L) {
luaL_checkstring(L, 1);
- newemptycap(L, Cbackref, 1);
+ newemptycapkey(L, Cbackref, 1);
return 1;
}
@@ -2879,9 +2949,10 @@ static int lp_constcapture (lua_State *L) {
if (n == 0) /* no values? */
newleaf(L, TTrue); /* no capture */
else if (n == 1)
- newemptycap(L, Cconst, 1); /* single constant capture */
+ newemptycapkey(L, Cconst, 1); /* single constant capture */
else { /* create a group capture with all values */
TTree *tree = newtree(L, 1 + 3 * (n - 1) + 2);
+ newktable(L, n); /* create a 'ktable' for new tree */
tree->tag = TCapture;
tree->cap = Cgroup;
tree->key = 0;
@@ -2889,10 +2960,12 @@ static int lp_constcapture (lua_State *L) {
for (i = 1; i <= n - 1; i++) {
tree->tag = TSeq;
tree->u.ps = 3; /* skip TCapture and its sibling */
- auxemptycap(L, sib1(tree), Cconst, i);
+ auxemptycap(sib1(tree), Cconst);
+ sib1(tree)->key = addtoktable(L, i);
tree = sib2(tree);
}
- auxemptycap(L, tree, Cconst, i);
+ auxemptycap(tree, Cconst);
+ tree->key = addtoktable(L, i);
}
return 1;
}
@@ -2902,7 +2975,7 @@ static int lp_matchtime (lua_State *L) {
TTree *tree;
luaL_checktype(L, 2, LUA_TFUNCTION);
tree = newroot1sib(L, TRunTime);
- tree->key = addtoktable(L, 2);
+ tree->key = addtonewktable(L, 1, 2);
return 1;
}
@@ -3247,7 +3320,7 @@ static int lp_type (lua_State *L) {
int lp_gc (lua_State *L) {
Pattern *p = getpattern(L, 1);
if (p->codesize > 0)
- reallocprog(L, p, 0);
+ realloccode(L, p, 0);
return 0;
}
diff --git a/Build/source/texk/web2c/luatexdir/luapeg/lpeg.h b/Build/source/texk/web2c/luatexdir/luapeg/lpeg.h
index fe61485993a..b864d0fbca1 100644
--- a/Build/source/texk/web2c/luatexdir/luapeg/lpeg.h
+++ b/Build/source/texk/web2c/luatexdir/luapeg/lpeg.h
@@ -1,10 +1,15 @@
/*
-** $Id: lptypes.h,v 1.8 2013/04/12 16:26:38 roberto Exp $
+** $Id: lptypes.h,v 1.11 2015/03/04 16:38:00 roberto Exp $
** LPeg - PEG pattern matching for Lua
-** Copyright 2007, Lua.org & PUC-Rio (see 'lpeg.html' for license)
+** Copyright 2007-2014, Lua.org & PUC-Rio (see 'lpeg.html' for license)
** written by Roberto Ierusalimschy
*/
+/*
+ "Amalgamated" version for LuaTeX written by Scarso Luigi.
+*/
+
+
#if !defined(lptypes_h)
#define lptypes_h
@@ -20,22 +25,21 @@
#include <string.h>
#include "lauxlib.h"
-#include "lua.h"
+#include "lua.h"
+#define VERSION "0.12.2"
-#define VERSION "0.12"
-
-#define PATTERN_T "lpeg.pattern"
-#define MAXSTACKIDX "lpeg.maxstack"
+#define PATTERN_T "lpeg-pattern"
+#define MAXSTACKIDX "lpeg-maxstack"
/*
** compatibility with Lua 5.2
*/
-#if (LUA_VERSION_NUM == 502)
+#if (LUA_VERSION_NUM >= 502)
#undef lua_equal
#define lua_equal(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPEQ)
@@ -62,7 +66,9 @@
/* maximum number of rules in a grammar */
-#define MAXRULES 200
+#if !defined(MAXRULES)
+#define MAXRULES 1000
+#endif
@@ -152,14 +158,14 @@ typedef struct Charset {
#endif
/*
-** $Id: lpcap.h,v 1.1 2013/03/21 20:25:12 roberto Exp $
+** $Id: lpcap.h,v 1.2 2015/02/27 17:13:17 roberto Exp $
*/
#if !defined(lpcap_h)
#define lpcap_h
-/* include "lptypes.h" */
+/* #include "lptypes.h"*/
/* kinds of captures */
@@ -171,7 +177,7 @@ typedef enum CapKind {
typedef struct Capture {
const char *s; /* subject position */
- short idx; /* extra info about capture (group name, arg index, etc.) */
+ unsigned short idx; /* extra info (group name, arg index, etc.) */
byte kind; /* kind of capture */
byte siz; /* size of full capture + 1 (0 = not a full capture) */
} Capture;
@@ -202,7 +208,7 @@ int finddyncap (Capture *cap, Capture *last);
#define lptree_h
-/*#include "lptypes.h" */
+/* #include "lptypes.h" */
/*
@@ -267,16 +273,18 @@ extern const byte numsiblings[];
+
+
#endif
/*
-** $Id: lpvm.h,v 1.2 2013/04/03 20:37:18 roberto Exp $
+** $Id: lpvm.h,v 1.3 2014/02/21 13:06:41 roberto Exp $
*/
#if !defined(lpvm_h)
#define lpvm_h
-/*#include "lpcap.h"*/
+/* #include "lpcap.h"*/
/* Virtual Machine's instructions */
@@ -320,30 +328,25 @@ typedef union Instruction {
} Instruction;
-int getposition (lua_State *L, int t, int i);
void printpatt (Instruction *p, int n);
const char *match (lua_State *L, const char *o, const char *s, const char *e,
Instruction *op, Capture *capture, int ptop);
-int verify (lua_State *L, Instruction *op, const Instruction *p,
- Instruction *e, int postable, int rule);
-void checkrule (lua_State *L, Instruction *op, int from, int to,
- int postable, int rule);
#endif
/*
-** $Id: lpcode.h,v 1.5 2013/04/04 21:24:45 roberto Exp $
+** $Id: lpcode.h,v 1.6 2013/11/28 14:56:02 roberto Exp $
*/
#if !defined(lpcode_h)
#define lpcode_h
-/*#include "lua.h"*/
+/* #include "lua.h"*/
-/*#include "lptypes.h"*/
-/*#include "lptree.h"*/
-/*#include "lpvm.h"*/
+/* #include "lptypes.h"*/
+/* #include "lptree.h"*/
+/* #include "lpvm.h"*/
int tocharset (TTree *tree, Charset *cs);
int checkaux (TTree *tree, int pred);
@@ -351,7 +354,7 @@ int fixedlenx (TTree *tree, int count, int len);
int hascaptures (TTree *tree);
int lp_gc (lua_State *L);
Instruction *compile (lua_State *L, Pattern *p);
-void reallocprog (lua_State *L, Pattern *p, int nsize);
+void realloccode (lua_State *L, Pattern *p, int nsize);
int sizei (const Instruction *i);
@@ -375,8 +378,8 @@ int sizei (const Instruction *i);
#define lpprint_h
-/*#include "lptree.h"*/
-/*#include "lpvm.h"*/
+/* #include "lptree.h"*/
+/* #include "lpvm.h"*/
#if defined(LPEG_DEBUG)
diff --git a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.c b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.c
index b75ae3a7df8..05fe351cb7e 100644
--- a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.c
+++ b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.c
@@ -20,25 +20,18 @@
#include "ptexlib.h"
-static const Byte compr[251] = {
- 0x78, 0x9c, 0xad, 0x51, 0xc1, 0x4a, 0xc4, 0x30, 0x14, 0xbc, 0xbf, 0xaf, 0x78, 0x87, 0x1e, 0x14,
- 0xb6, 0x49, 0xba, 0x0a, 0xd2, 0x82, 0x1f, 0x20, 0x78, 0x12, 0xbc, 0x78, 0xeb, 0xa6, 0xaf, 0x6d,
- 0x68, 0x48, 0xc2, 0x4b, 0xe2, 0xba, 0x88, 0xff, 0x6e, 0x0a, 0x45, 0x57, 0xc5, 0xdb, 0x86, 0x97,
- 0x30, 0xcc, 0x4c, 0x32, 0x03, 0xa9, 0x6b, 0xac, 0x1e, 0x86, 0x0e, 0xc3, 0x30, 0xda, 0xdc, 0x8b,
- 0xb2, 0xf1, 0xa6, 0xbd, 0x6d, 0x71, 0xaf, 0x1a, 0x55, 0x37, 0x4d, 0xad, 0xee, 0x50, 0xa9, 0x4e,
- 0xb5, 0x5d, 0xd3, 0xbe, 0xe0, 0x3c, 0x93, 0x5b, 0xc8, 0x62, 0x05, 0x75, 0xb9, 0xf6, 0xfc, 0xf4,
- 0xd8, 0xe1, 0x9c, 0x52, 0x88, 0x9d, 0x94, 0xa3, 0xcf, 0x6e, 0xe0, 0x93, 0x88, 0x39, 0x90, 0x25,
- 0x2d, 0x46, 0x96, 0xf1, 0xd5, 0xc9, 0xf2, 0x5e, 0xa2, 0x37, 0x99, 0x38, 0xbb, 0x45, 0x46, 0x9f,
- 0x59, 0x93, 0x2c, 0xc4, 0x22, 0x8f, 0x74, 0xd8, 0xeb, 0x4d, 0x1e, 0x0c, 0xaf, 0x28, 0x6a, 0x36,
- 0x21, 0x45, 0x79, 0x56, 0xa5, 0x82, 0x35, 0x29, 0xcd, 0x26, 0x62, 0x19, 0xea, 0xd9, 0x9e, 0xf0,
- 0xe8, 0x79, 0x41, 0xe3, 0x30, 0xb0, 0x9f, 0x98, 0x62, 0x14, 0x42, 0xac, 0xae, 0xcb, 0x2c, 0x80,
- 0x03, 0x4d, 0xc6, 0x85, 0x7e, 0x22, 0xbc, 0xc7, 0x31, 0x3b, 0x9d, 0x8c, 0x77, 0x57, 0xfd, 0x35,
- 0x90, 0x1b, 0x60, 0x3d, 0xfe, 0x93, 0x7c, 0x4e, 0xa1, 0x4c, 0x51, 0x63, 0x62, 0xfa, 0x61, 0xd9,
- 0x1c, 0x97, 0xeb, 0x68, 0xbd, 0xee, 0xed, 0xf6, 0x65, 0x25, 0xe8, 0x1d, 0x10, 0xcf, 0x6b, 0x7f,
- 0xe1, 0x5d, 0x11, 0xbe, 0x2b, 0x6f, 0x68, 0x25, 0xff, 0x96, 0xfd, 0xc5, 0xec, 0xe0, 0x03, 0x80,
- 0x29, 0x65, 0x76, 0x5b, 0x0e, 0x7c, 0x02, 0x59, 0xee, 0xa0, 0x81
+static const Byte compr[139] = {
+ 0x78, 0x9c, 0xad, 0x4e, 0x5b, 0x0a, 0xc3, 0x30, 0x0c, 0xfb, 0xd7, 0x29, 0xfc, 0xb9, 0x41, 0x93,
+ 0x1b, 0xec, 0x30, 0x59, 0xeb, 0x76, 0x61, 0xc1, 0x09, 0x4e, 0xc2, 0x18, 0x63, 0x77, 0x5f, 0x0a,
+ 0x61, 0x4f, 0xf6, 0x57, 0x23, 0x8c, 0x90, 0x04, 0x12, 0x8c, 0xa1, 0x72, 0xf2, 0x99, 0x1a, 0xd8,
+ 0x69, 0xb8, 0xd2, 0x25, 0xea, 0x99, 0xbc, 0x50, 0xd2, 0xb8, 0x28, 0xe7, 0x6c, 0xad, 0x05, 0xcc,
+ 0x46, 0x07, 0x1c, 0x79, 0xf1, 0x92, 0xdc, 0xc2, 0x74, 0xa0, 0xb9, 0xca, 0x58, 0x7c, 0x94, 0x9d,
+ 0xdb, 0x83, 0x65, 0xc2, 0xfa, 0xfe, 0x59, 0xb1, 0x96, 0xd4, 0xd0, 0xdc, 0x5c, 0x94, 0x3f, 0x22,
+ 0x3d, 0xb1, 0xdd, 0xc6, 0x10, 0x47, 0x17, 0x28, 0x4d, 0x73, 0xa8, 0xae, 0x15, 0xdd, 0x40, 0xf4,
+ 0x3e, 0xfb, 0xc9, 0x87, 0x66, 0xbc, 0x26, 0x77, 0xb6, 0x8a, 0xbf, 0x63, 0xbf, 0x94, 0x01, 0x77,
+ 0x40, 0xb9, 0x54, 0x95, 0xde, 0x83, 0x07, 0x1c, 0xdd, 0x6c, 0x66
};
-static const zlib_struct compr_struct = { 554, 251, compr };
+static const zlib_struct compr_struct = { 394, 139, compr };
const zlib_struct *pdflua_zlib_struct_ptr = &compr_struct;
diff --git a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.h b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.h
index d835843e523..d80f55006ef 100644
--- a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.h
+++ b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdflua.h 3937 2010-11-01 21:58:54Z hhenkel $ */
#ifndef PDFLUA_H
# define PDFLUA_H
diff --git a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.lua b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.lua
index a72b1a48256..c8164367d75 100644
--- a/Build/source/texk/web2c/luatexdir/luascripts/pdflua.lua
+++ b/Build/source/texk/web2c/luatexdir/luascripts/pdflua.lua
@@ -1,5 +1,3 @@
--- $Id: pdflua.lua 3949 2010-11-07 00:09:19Z hhenkel $
--- $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/luascripts/pdflua.lua $
-- this is early work in progress...
diff --git a/Build/source/texk/web2c/luatexdir/luascripts/txt2zlib.w b/Build/source/texk/web2c/luatexdir/luascripts/txt2zlib.w
index fbd8cdda34c..669125b7f26 100644
--- a/Build/source/texk/web2c/luatexdir/luascripts/txt2zlib.w
+++ b/Build/source/texk/web2c/luatexdir/luascripts/txt2zlib.w
@@ -17,9 +17,7 @@
%
% You should have received a copy of the GNU General Public License along
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
-%
-% $Id: txt2zlib.w 4479 2012-11-07 16:38:55Z taco $
-% $URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/luascripts/txt2zlib.w $
+
@
@c
diff --git a/Build/source/texk/web2c/luatexdir/luatex-common.h b/Build/source/texk/web2c/luatexdir/luatex-common.h
index 12ea10be642..379c7b2f43c 100644
--- a/Build/source/texk/web2c/luatexdir/luatex-common.h
+++ b/Build/source/texk/web2c/luatexdir/luatex-common.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luatex-common.h 4054 2011-01-10 19:05:54Z hhenkel $ */
/* This file contains declarations used in C code as well as in C++ code.
*/
diff --git a/Build/source/texk/web2c/luatexdir/luatex.c b/Build/source/texk/web2c/luatexdir/luatex.c
index 076499f1ec3..396b1f934de 100644
--- a/Build/source/texk/web2c/luatexdir/luatex.c
+++ b/Build/source/texk/web2c/luatexdir/luatex.c
@@ -23,17 +23,14 @@
#include "lua/luatex-api.h"
#include "luatex_svnversion.h"
-static const char _svn_version[] =
- "$Id: luatex.c 5093 2014-12-10 09:41:01Z luigi $ "
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/luatex.c $";
#define TeX
-int luatex_svn = 5140;
-int luatex_version = 79; /* \.{\\luatexversion} */
-int luatex_revision = '3'; /* \.{\\luatexrevision} */
-int luatex_date_info = 2015012100; /* the compile date is now hardwired */
-const char *luatex_version_string = "beta-0.79.3";
+int luatex_svn = 5195;
+int luatex_version = 80; /* \.{\\luatexversion} */
+int luatex_revision = '0'; /* \.{\\luatexrevision} */
+int luatex_date_info = 2015031900; /* the compile date is now hardwired */
+const char *luatex_version_string = "beta-0.80.0";
const char *engine_name = my_name; /* the name of this engine */
#include <kpathsea/c-ctype.h>
diff --git a/Build/source/texk/web2c/luatexdir/luatex.h b/Build/source/texk/web2c/luatexdir/luatex.h
index 515d8b90d75..0631a1a5b8e 100644
--- a/Build/source/texk/web2c/luatexdir/luatex.h
+++ b/Build/source/texk/web2c/luatexdir/luatex.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luatex.h 5081 2014-11-07 18:38:33Z luigi $ */
#ifndef LUATEX_H
# define LUATEX_H
diff --git a/Build/source/texk/web2c/luatexdir/luatexcallbackids.h b/Build/source/texk/web2c/luatexdir/luatexcallbackids.h
index e4d66953440..7660e829d6f 100644
--- a/Build/source/texk/web2c/luatexdir/luatexcallbackids.h
+++ b/Build/source/texk/web2c/luatexdir/luatexcallbackids.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: luatexcallbackids.h 5081 2014-11-07 18:38:33Z luigi $ */
#ifndef LUATEXCALLBACKIDS_H
#define LUATEXCALLBACKIDS_H
diff --git a/Build/source/texk/web2c/luatexdir/luazlib/lzlib.c b/Build/source/texk/web2c/luatexdir/luazlib/lzlib.c
index a76f54ee0f6..2de14e3f9e8 100644
--- a/Build/source/texk/web2c/luatexdir/luazlib/lzlib.c
+++ b/Build/source/texk/web2c/luatexdir/luazlib/lzlib.c
@@ -551,7 +551,7 @@ LUALIB_API int luaopen_zlib(lua_State *L)
/* make sure header and library version are consistent */
const char* version = zlibVersion();
- if (strncmp(version, ZLIB_VERSION, 5))
+ if (strncmp(version, ZLIB_VERSION, 4))
{
lua_pushfstring(L, "zlib library version does not match - header: %s, library: %s", ZLIB_VERSION, version);
lua_error(L);
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfaction.h b/Build/source/texk/web2c/luatexdir/pdf/pdfaction.h
index 2ea3a175403..13b5bef3e57 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfaction.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfaction.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfaction.h 3891 2010-09-14 23:02:24Z hhenkel $ */
#ifndef PDFACTION_H
# define PDFACTION_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfaction.w b/Build/source/texk/web2c/luatexdir/pdf/pdfaction.w
index 4bea1ebd3cd..8c1f084475f 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfaction.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfaction.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfaction.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfaction.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfannot.h b/Build/source/texk/web2c/luatexdir/pdf/pdfannot.h
index 6372195d16b..0b9ce5b9c12 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfannot.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfannot.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfannot.h 2772 2009-07-07 22:16:42Z hhenkel $ */
#ifndef PDFANNOT_H
# define PDFANNOT_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfannot.w b/Build/source/texk/web2c/luatexdir/pdf/pdfannot.w
index 30775fa5fa2..b6c95e8ff7d 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfannot.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfannot.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfannot.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfannot.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.h b/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.h
index 3d8a396aa94..7047d36b169 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfcolorstack.h 3676 2010-05-02 20:04:49Z hhenkel $ */
#ifndef PDFCOLORSTACK_H
# define PDFCOLORSTACK_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w b/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w
index 483db2a4c80..e44f06ba47c 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfcolorstack.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfcolorstack.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfdest.h b/Build/source/texk/web2c/luatexdir/pdf/pdfdest.h
index 0e5d9dca457..4c2f1911931 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfdest.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfdest.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfdest.h 3386 2010-01-26 06:41:37Z taco $ */
#ifndef PDFDEST_H
# define PDFDEST_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfdest.w b/Build/source/texk/web2c/luatexdir/pdf/pdfdest.w
index fbb103add26..cb7ee758568 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfdest.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfdest.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfdest.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfdest.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdffont.h b/Build/source/texk/web2c/luatexdir/pdf/pdffont.h
index 728b2903ec2..414d1588d59 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdffont.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdffont.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdffont.h 4679 2013-12-19 15:47:53Z luigi $ */
#ifndef PDFFONT_H
# define PDFFONT_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdffont.w b/Build/source/texk/web2c/luatexdir/pdf/pdffont.w
index 20dba5e2fd5..174e1b6289e 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdffont.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdffont.w
@@ -20,9 +20,7 @@
\def\pdfTeX{pdf\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: pdffont.w 4934 2014-03-26 08:17:27Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdffont.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfgen.h b/Build/source/texk/web2c/luatexdir/pdf/pdfgen.h
index c6a1256e05d..eb77fccc001 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfgen.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfgen.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfgen.h 5081 2014-11-07 18:38:33Z luigi $ */
#ifndef PDFGEN_H
# define PDFGEN_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfgen.w b/Build/source/texk/web2c/luatexdir/pdf/pdfgen.w
index 990d2840dd7..04bc321ba7f 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfgen.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfgen.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfgen.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfgen.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.h b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.h
index b8ca8d97952..37766d26c8f 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfglyph.h 5073 2014-10-24 16:54:52Z oneiros $ */
#ifndef PDFGLYPH_H
# define PDFGLYPH_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
index 84b2df14d37..1f8319484e2 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfglyph.w 5073 2014-10-24 16:54:52Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfglyph.w $";
+
#include "ptexlib.h"
#include "pdf/pdfpage.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfimage.h b/Build/source/texk/web2c/luatexdir/pdf/pdfimage.h
index 86b5752bc42..c4f5f53aecb 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfimage.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfimage.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfimage.h 3160 2009-11-16 16:29:11Z hhenkel $ */
#ifndef PDFIMAGE_H
# define PDFIMAGE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfimage.w b/Build/source/texk/web2c/luatexdir/pdf/pdfimage.w
index fd81a2d55d0..008f8f383ba 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfimage.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfimage.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfimage.w 4718 2014-01-02 15:35:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfimage.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdflink.h b/Build/source/texk/web2c/luatexdir/pdf/pdflink.h
index c804f038345..b7103aec56e 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdflink.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdflink.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdflink.h 2978 2009-08-09 09:03:39Z hhenkel $ */
#ifndef PDFLINK_H
# define PDFLINK_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdflink.w b/Build/source/texk/web2c/luatexdir/pdf/pdflink.w
index 400cd9bcf4a..3a5bc327add 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdflink.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdflink.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdflink.w 4451 2012-07-05 21:13:01Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdflink.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdflistout.h b/Build/source/texk/web2c/luatexdir/pdf/pdflistout.h
index 41aff73357a..646a26b855a 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdflistout.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdflistout.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdflistout.h 3386 2010-01-26 06:41:37Z taco $ */
#ifndef PDFLISTOUT_H
# define PDFLISTOUT_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdflistout.w b/Build/source/texk/web2c/luatexdir/pdf/pdflistout.w
index 07655248edb..1c3b40de36f 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdflistout.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdflistout.w
@@ -20,9 +20,7 @@
\def\pdfTeX{pdf\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: pdflistout.w 4679 2013-12-19 15:47:53Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdflistout.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.h b/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.h
index 9b698ef9437..134bca44a24 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfliteral.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef PDFLITERAL_H
# define PDFLITERAL_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.w b/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.w
index 7ad2065dc3a..fee8f23aa20 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfliteral.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfliteral.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfliteral.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.h b/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.h
index b698ab86081..3d8652ecc67 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfluaapi.h 5072 2014-10-24 16:53:43Z oneiros $ */
#ifndef PDFLUAAPI_H
# define PDFLUAAPI_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.w b/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.w
index fa0f4189160..ebd20d6e20d 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfluaapi.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfluaapi.w 5072 2014-10-24 16:53:43Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfluaapi.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfobj.h b/Build/source/texk/web2c/luatexdir/pdf/pdfobj.h
index 01613dd2cc6..fa5f582cf61 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfobj.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfobj.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfobj.h 4184 2011-04-19 21:15:22Z hhenkel $ */
#ifndef PDFOBJ_H
# define PDFOBJ_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfobj.w b/Build/source/texk/web2c/luatexdir/pdf/pdfobj.w
index af7bc1d584f..865b93f8856 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfobj.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfobj.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfobj.w 4877 2014-03-14 01:26:05Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfobj.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.h b/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.h
index 2b0bd8712a2..79002329953 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfoutline.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef PDFOUTLINE_H
# define PDFOUTLINE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.w b/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.w
index 130d9720800..1dafb0499b3 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfoutline.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfoutline.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfoutline.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfpage.h b/Build/source/texk/web2c/luatexdir/pdf/pdfpage.h
index f742eff2fb1..6d9fcc0e0b1 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfpage.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfpage.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfpage.h 5073 2014-10-24 16:54:52Z oneiros $ */
#ifndef PDFPAGE_H
# define PDFPAGE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfpage.w b/Build/source/texk/web2c/luatexdir/pdf/pdfpage.w
index c53db084423..3fc698a9ec7 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfpage.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfpage.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfpage.w 5073 2014-10-24 16:54:52Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfpage.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.h b/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.h
index fdd7841d5da..b00fc0476a1 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfpagetree.h 5073 2014-10-24 16:54:52Z oneiros $ */
#ifndef PAGETREE_H
# define PAGETREE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.w b/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.w
index 1e2716bb0a7..31cf4ac3124 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfpagetree.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfpagetree.w 5073 2014-10-24 16:54:52Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfpagetree.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfrule.h b/Build/source/texk/web2c/luatexdir/pdf/pdfrule.h
index aa5cc9b0e7f..3770b2cbbe5 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfrule.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfrule.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfrule.h 5073 2014-10-24 16:54:52Z oneiros $ */
#ifndef PDFRULE_H
# define PDFRULE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfrule.w b/Build/source/texk/web2c/luatexdir/pdf/pdfrule.w
index a4665e951f8..2dac756ddde 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfrule.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfrule.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfrule.w 5073 2014-10-24 16:54:52Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfrule.w $";
+
#include "ptexlib.h"
#include "pdf/pdfpage.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.h b/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.h
index 146b7e7e6c5..e45902328c8 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfsaverestore.h 3003 2009-08-16 19:55:55Z hhenkel $ */
#ifndef PDFSAVERESTORE_H
# define PDFSAVERESTORE_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w b/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w
index 92a642adeb0..204daf2959c 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfsaverestore.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfsaverestore.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.h b/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.h
index c4900e07046..c65e0ea8b8a 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfsetmatrix.h 3217 2009-12-03 16:52:01Z taco $ */
#ifndef PDFSETMATRIX_H
# define PDFSETMATRIX_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w b/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w
index d90dbf91a87..70bbb34c10c 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfsetmatrix.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfsetmatrix.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.h b/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.h
index 37e49a3b0d4..b341f818099 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfshipout.h 3853 2010-09-03 18:05:14Z oneiros $ */
#ifndef PDFSHIPOUT_H
# define PDFSHIPOUT_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.w b/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.w
index f007a236c5b..f3166eeccec 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfshipout.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfshipout.w 4451 2012-07-05 21:13:01Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfshipout.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdftables.h b/Build/source/texk/web2c/luatexdir/pdf/pdftables.h
index 38ea72bf328..a06915abd70 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdftables.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdftables.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdftables.h 4558 2013-01-19 14:21:59Z oneiros $ */
#ifndef PDFTABLES_H
# define PDFTABLES_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdftables.w b/Build/source/texk/web2c/luatexdir/pdf/pdftables.w
index 48330c72e4c..dac6741d316 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdftables.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdftables.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdftables.w 4847 2014-03-05 18:13:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdftables.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfthread.h b/Build/source/texk/web2c/luatexdir/pdf/pdfthread.h
index acc6f1aa66f..5719803b86f 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfthread.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfthread.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfthread.h 4935 2014-03-26 08:17:57Z taco $ */
#ifndef PDFTHREAD_H
# define PDFTHREAD_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfthread.w b/Build/source/texk/web2c/luatexdir/pdf/pdfthread.w
index f2c8784f7f9..92021645875 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfthread.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfthread.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfthread.w 4451 2012-07-05 21:13:01Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfthread.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdftypes.h b/Build/source/texk/web2c/luatexdir/pdf/pdftypes.h
index 91d58419495..065aba0aa57 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdftypes.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdftypes.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdftypes.h 4718 2014-01-02 15:35:31Z taco $ */
#ifndef PDFTYPES_H
# define PDFTYPES_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfxform.h b/Build/source/texk/web2c/luatexdir/pdf/pdfxform.h
index c117301ebe2..3c5a1913317 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfxform.h
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfxform.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: pdfxform.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef PDFXFORM_H
# define PDFXFORM_H
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfxform.w b/Build/source/texk/web2c/luatexdir/pdf/pdfxform.w
index edf3d2ac4e4..1f789960845 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfxform.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfxform.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: pdfxform.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/pdf/pdfxform.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/ptexlib.h b/Build/source/texk/web2c/luatexdir/ptexlib.h
index 5485760db75..ff7cde4f440 100644
--- a/Build/source/texk/web2c/luatexdir/ptexlib.h
+++ b/Build/source/texk/web2c/luatexdir/ptexlib.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: ptexlib.h 4965 2014-03-28 17:50:08Z luigi $ */
#ifndef PTEXLIB_H
# define PTEXLIB_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/align.h b/Build/source/texk/web2c/luatexdir/tex/align.h
index 5afa7a754c8..a93539f0dc5 100644
--- a/Build/source/texk/web2c/luatexdir/tex/align.h
+++ b/Build/source/texk/web2c/luatexdir/tex/align.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: align.h 3100 2009-11-04 15:09:57Z taco $ */
#ifndef ALIGN_H
# define ALIGN_H 1
diff --git a/Build/source/texk/web2c/luatexdir/tex/align.w b/Build/source/texk/web2c/luatexdir/tex/align.w
index 1e5c48cc0c4..adc30a46007 100644
--- a/Build/source/texk/web2c/luatexdir/tex/align.w
+++ b/Build/source/texk/web2c/luatexdir/tex/align.w
@@ -20,9 +20,7 @@
\def\<#1>{$#1$}
@ @c
-static const char _svn_version[] =
- "$Id: align.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/align.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/arithmetic.h b/Build/source/texk/web2c/luatexdir/tex/arithmetic.h
index 6e809372ab6..e5638990e0c 100644
--- a/Build/source/texk/web2c/luatexdir/tex/arithmetic.h
+++ b/Build/source/texk/web2c/luatexdir/tex/arithmetic.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: arithmetic.h 3853 2010-09-03 18:05:14Z oneiros $ */
#ifndef ARITHMETIC_H
# define ARITHMETIC_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/arithmetic.w b/Build/source/texk/web2c/luatexdir/tex/arithmetic.w
index 5606aa641ec..56fb9568acb 100644
--- a/Build/source/texk/web2c/luatexdir/tex/arithmetic.w
+++ b/Build/source/texk/web2c/luatexdir/tex/arithmetic.w
@@ -20,9 +20,7 @@
\def\MP{MetaPost}
@ @c
-static const char _svn_version[] =
- "$Id: arithmetic.w 4593 2013-03-19 14:25:17Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/arithmetic.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/buildpage.h b/Build/source/texk/web2c/luatexdir/tex/buildpage.h
index f3e8f46abbc..9c013514efa 100644
--- a/Build/source/texk/web2c/luatexdir/tex/buildpage.h
+++ b/Build/source/texk/web2c/luatexdir/tex/buildpage.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: buildpage.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef BUILDPAGE_H
# define BUILDPAGE_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/buildpage.w b/Build/source/texk/web2c/luatexdir/tex/buildpage.w
index 5e96e701c71..68cb3fecc5a 100644
--- a/Build/source/texk/web2c/luatexdir/tex/buildpage.w
+++ b/Build/source/texk/web2c/luatexdir/tex/buildpage.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: buildpage.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/buildpage.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/commands.h b/Build/source/texk/web2c/luatexdir/tex/commands.h
index 690823b7856..52857215b51 100644
--- a/Build/source/texk/web2c/luatexdir/tex/commands.h
+++ b/Build/source/texk/web2c/luatexdir/tex/commands.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: commands.h 4877 2014-03-14 01:26:05Z luigi $ */
#ifndef COMMANDS_H
# define COMMANDS_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/commands.w b/Build/source/texk/web2c/luatexdir/tex/commands.w
index 51d2112c1d5..1ba433884b0 100644
--- a/Build/source/texk/web2c/luatexdir/tex/commands.w
+++ b/Build/source/texk/web2c/luatexdir/tex/commands.w
@@ -20,9 +20,7 @@
\def\eTeX{e-\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: commands.w 4878 2014-03-14 10:48:03Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/commands.w $";
+
#include "ptexlib.h"
@@ -1060,6 +1058,8 @@ void initialize_etex_commands(void)
int_base + suppress_fontnotfound_error_code, int_base);
primitive_luatex("suppresslongerror", assign_int_cmd,
int_base + suppress_long_error_code, int_base);
+ primitive_luatex("suppressmathparerror", assign_int_cmd,
+ int_base + suppress_mathpar_error_code, int_base);
primitive_luatex("suppressifcsnameerror", assign_int_cmd,
int_base + suppress_ifcsname_error_code, int_base);
primitive_luatex("suppressoutererror", assign_int_cmd,
diff --git a/Build/source/texk/web2c/luatexdir/tex/conditional.h b/Build/source/texk/web2c/luatexdir/tex/conditional.h
index 23c79a03d3a..13e822a1bf9 100644
--- a/Build/source/texk/web2c/luatexdir/tex/conditional.h
+++ b/Build/source/texk/web2c/luatexdir/tex/conditional.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: conditional.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef CONDITIONAL_H
# define CONDITIONAL_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/conditional.w b/Build/source/texk/web2c/luatexdir/tex/conditional.w
index 16092a491da..8c312a536c8 100644
--- a/Build/source/texk/web2c/luatexdir/tex/conditional.w
+++ b/Build/source/texk/web2c/luatexdir/tex/conditional.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: conditional.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/conditional.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/directions.h b/Build/source/texk/web2c/luatexdir/tex/directions.h
index 30f52743388..b595032f48e 100644
--- a/Build/source/texk/web2c/luatexdir/tex/directions.h
+++ b/Build/source/texk/web2c/luatexdir/tex/directions.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: directions.h 4569 2013-01-30 10:08:33Z taco $ */
#ifndef DIRECTIONS_H
# define DIRECTIONS_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/directions.w b/Build/source/texk/web2c/luatexdir/tex/directions.w
index 704f8ff2508..54f5586bc6b 100644
--- a/Build/source/texk/web2c/luatexdir/tex/directions.w
+++ b/Build/source/texk/web2c/luatexdir/tex/directions.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: directions.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/directions.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/dumpdata.h b/Build/source/texk/web2c/luatexdir/tex/dumpdata.h
index 349e37fb238..933dcfa1f0d 100644
--- a/Build/source/texk/web2c/luatexdir/tex/dumpdata.h
+++ b/Build/source/texk/web2c/luatexdir/tex/dumpdata.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: dumpdata.h 4479 2012-11-07 16:38:55Z taco $ */
#ifndef DUMPDATA_H
# define DUMPDATA_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/dumpdata.w b/Build/source/texk/web2c/luatexdir/tex/dumpdata.w
index 46913bce3a8..674a7cd7ae4 100644
--- a/Build/source/texk/web2c/luatexdir/tex/dumpdata.w
+++ b/Build/source/texk/web2c/luatexdir/tex/dumpdata.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: dumpdata.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/dumpdata.w $";
+
#include "ptexlib.h"
@@ -28,8 +26,8 @@ static const char _svn_version[] =
#define prev_depth cur_list.prev_depth_field
/* 907 = sum of the values of the bytes of "don knuth" */
-/* The next FORMAT_ID will be 907+1 */
-#define FORMAT_ID (907+0)
+/* The next FORMAT_ID will be 907+2 */
+#define FORMAT_ID (907+1)
#if ((FORMAT_ID>=0) && (FORMAT_ID<=256))
#error Wrong value for FORMAT_ID.
#endif
diff --git a/Build/source/texk/web2c/luatexdir/tex/equivalents.h b/Build/source/texk/web2c/luatexdir/tex/equivalents.h
index c0616d91ad5..bb0cbad873e 100644
--- a/Build/source/texk/web2c/luatexdir/tex/equivalents.h
+++ b/Build/source/texk/web2c/luatexdir/tex/equivalents.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: equivalents.h 3853 2010-09-03 18:05:14Z oneiros $ */
#ifndef EQUIVALENTS_H
# define EQUIVALENTS_H
@@ -326,7 +325,8 @@ here, and the |number_regs| \.{\\dimen} registers.
# define suppress_ifcsname_error_code (etex_first_integer_code+11)
/*suppress errors for failed \.{\\ifcsname} */
# define suppress_outer_error_code (etex_first_integer_code+12) /*suppress errors for \.{\\outer} */
-# define synctex_code (etex_first_integer_code+13) /* is synctex file generation enabled ? */
+# define suppress_mathpar_error_code (etex_first_integer_code+13) /*suppress errors for \.{\\par}} in math */
+# define synctex_code (etex_first_integer_code+14) /* is synctex file generation enabled ? */
# define tex_int_pars (synctex_code+1) /* total number of integer parameters */
# define page_direction_code (tex_int_pars)
diff --git a/Build/source/texk/web2c/luatexdir/tex/equivalents.w b/Build/source/texk/web2c/luatexdir/tex/equivalents.w
index 3c948634f98..5fe8b4ec500 100644
--- a/Build/source/texk/web2c/luatexdir/tex/equivalents.w
+++ b/Build/source/texk/web2c/luatexdir/tex/equivalents.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: equivalents.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/equivalents.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/errors.h b/Build/source/texk/web2c/luatexdir/tex/errors.h
index 537bea562da..b7f46431e5d 100644
--- a/Build/source/texk/web2c/luatexdir/tex/errors.h
+++ b/Build/source/texk/web2c/luatexdir/tex/errors.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: errors.h 5081 2014-11-07 18:38:33Z luigi $ */
#ifndef ERRORS_H
# define ERRORS_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/errors.w b/Build/source/texk/web2c/luatexdir/tex/errors.w
index eab33d9c809..dd32f5b7a28 100644
--- a/Build/source/texk/web2c/luatexdir/tex/errors.w
+++ b/Build/source/texk/web2c/luatexdir/tex/errors.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: errors.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/errors.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/expand.h b/Build/source/texk/web2c/luatexdir/tex/expand.h
index ce1af9f552a..713901986a3 100644
--- a/Build/source/texk/web2c/luatexdir/tex/expand.h
+++ b/Build/source/texk/web2c/luatexdir/tex/expand.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: expand.h 2728 2009-07-04 11:33:51Z oneiros $ */
#ifndef EXPAND_H
# define EXPAND_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/expand.w b/Build/source/texk/web2c/luatexdir/tex/expand.w
index d00d84e128d..aad2cb10042 100644
--- a/Build/source/texk/web2c/luatexdir/tex/expand.w
+++ b/Build/source/texk/web2c/luatexdir/tex/expand.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: expand.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/expand.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/extensions.h b/Build/source/texk/web2c/luatexdir/tex/extensions.h
index 590dec0e6bd..ad6dd784861 100644
--- a/Build/source/texk/web2c/luatexdir/tex/extensions.h
+++ b/Build/source/texk/web2c/luatexdir/tex/extensions.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: extensions.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef EXTENSIONS_H
# define EXTENSIONS_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/extensions.w b/Build/source/texk/web2c/luatexdir/tex/extensions.w
index 41f709d3e29..c0345d3c089 100644
--- a/Build/source/texk/web2c/luatexdir/tex/extensions.w
+++ b/Build/source/texk/web2c/luatexdir/tex/extensions.w
@@ -21,9 +21,7 @@
\def\pdfTeX{pdf\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: extensions.w 4519 2012-12-14 09:11:19Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/extensions.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/filename.h b/Build/source/texk/web2c/luatexdir/tex/filename.h
index d0e54283436..cb3d060fd83 100644
--- a/Build/source/texk/web2c/luatexdir/tex/filename.h
+++ b/Build/source/texk/web2c/luatexdir/tex/filename.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: filename.h 3376 2010-01-25 16:50:23Z taco $ */
#ifndef FILENAME_H
# define FILENAME_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/filename.w b/Build/source/texk/web2c/luatexdir/tex/filename.w
index 95a94a75074..db0ea298d30 100644
--- a/Build/source/texk/web2c/luatexdir/tex/filename.w
+++ b/Build/source/texk/web2c/luatexdir/tex/filename.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: filename.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/filename.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/inputstack.h b/Build/source/texk/web2c/luatexdir/tex/inputstack.h
index 246bc93e9e2..390fb169198 100644
--- a/Build/source/texk/web2c/luatexdir/tex/inputstack.h
+++ b/Build/source/texk/web2c/luatexdir/tex/inputstack.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: inputstack.h 3853 2010-09-03 18:05:14Z oneiros $ */
#ifndef INPUTSTACK_H
# define INPUTSTACK_H 1
diff --git a/Build/source/texk/web2c/luatexdir/tex/inputstack.w b/Build/source/texk/web2c/luatexdir/tex/inputstack.w
index 2fc5628e251..129f2207650 100644
--- a/Build/source/texk/web2c/luatexdir/tex/inputstack.w
+++ b/Build/source/texk/web2c/luatexdir/tex/inputstack.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: inputstack.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/inputstack.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/linebreak.h b/Build/source/texk/web2c/luatexdir/tex/linebreak.h
index e91b3f2fa27..4593cc59a4a 100644
--- a/Build/source/texk/web2c/luatexdir/tex/linebreak.h
+++ b/Build/source/texk/web2c/luatexdir/tex/linebreak.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: linebreak.h 3853 2010-09-03 18:05:14Z oneiros $ */
#ifndef LINEBREAK_H
# define LINEBREAK_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/linebreak.w b/Build/source/texk/web2c/luatexdir/tex/linebreak.w
index fd486c3367e..d49b6f0d0a8 100644
--- a/Build/source/texk/web2c/luatexdir/tex/linebreak.w
+++ b/Build/source/texk/web2c/luatexdir/tex/linebreak.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: linebreak.w 4777 2014-02-10 10:09:39Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/linebreak.w $";
+
#include "ptexlib.h"
@@ -1951,8 +1949,11 @@ ext_do_line_break(int paragraph_dir,
/* Try to break after a discretionary fragment, then |goto done5|; */
/* The following code knows that discretionary texts contain
only character nodes, kern nodes, box nodes, and rule
- nodes. */
- if (second_pass) {
+ nodes. This branch differs a bit from older engines because in LuaTeX we
+ already have hyphenated the list. This means that we need to skip
+ automatic disc nodes. Of better, we need to treat discretionaries
+ and explicit hyphens always, even in the first pass (HH). */
+ if (second_pass || subtype(cur_p) <= automatic_disc) {
int actual_penalty = hyphen_penalty;
if (subtype(cur_p) == automatic_disc)
actual_penalty = ex_hyphen_penalty;
diff --git a/Build/source/texk/web2c/luatexdir/tex/mainbody.h b/Build/source/texk/web2c/luatexdir/tex/mainbody.h
index 789ef80ad99..1cbd214e016 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mainbody.h
+++ b/Build/source/texk/web2c/luatexdir/tex/mainbody.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: mainbody.h 4462 2012-08-07 15:08:21Z taco $ */
#ifndef MAINBODY_H
# define MAINBODY_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/mainbody.w b/Build/source/texk/web2c/luatexdir/tex/mainbody.w
index 4fe5f20c30b..56191cbe25e 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mainbody.w
+++ b/Build/source/texk/web2c/luatexdir/tex/mainbody.w
@@ -22,9 +22,7 @@
\def\pdfTeX{pdf\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: mainbody.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/mainbody.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/maincontrol.h b/Build/source/texk/web2c/luatexdir/tex/maincontrol.h
index 681a69c96e3..192b83e1c36 100644
--- a/Build/source/texk/web2c/luatexdir/tex/maincontrol.h
+++ b/Build/source/texk/web2c/luatexdir/tex/maincontrol.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: maincontrol.h 4562 2013-01-21 02:58:59Z khaled $ */
#ifndef MAINCONTROL_H
# define MAINCONTROL_H
@@ -117,6 +116,7 @@ extern void adjust_space_factor(void);
extern void main_control(void);
extern void app_space(void);
extern void insert_dollar_sign(void);
+extern void insert_dollar_sign_par_end(void);
extern void you_cant(void);
extern void report_illegal_case(void);
extern boolean privileged(void);
diff --git a/Build/source/texk/web2c/luatexdir/tex/maincontrol.w b/Build/source/texk/web2c/luatexdir/tex/maincontrol.w
index 05b842217a5..fa74ffb2a01 100644
--- a/Build/source/texk/web2c/luatexdir/tex/maincontrol.w
+++ b/Build/source/texk/web2c/luatexdir/tex/maincontrol.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: maincontrol.w 5011 2014-05-26 08:05:55Z khaled $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/maincontrol.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -703,7 +701,7 @@ static void init_main_control (void) {
non_math(mskip_cmd, insert_dollar_sign);
non_math(math_accent_cmd, insert_dollar_sign);
jump_table[mmode + endv_cmd] = insert_dollar_sign;
- jump_table[mmode + par_end_cmd] = insert_dollar_sign;
+ jump_table[mmode + par_end_cmd] = insert_dollar_sign_par_end;
jump_table[mmode + stop_cmd] = insert_dollar_sign;
jump_table[mmode + vskip_cmd] = insert_dollar_sign;
jump_table[mmode + un_vbox_cmd] = insert_dollar_sign;
@@ -930,6 +928,19 @@ void insert_dollar_sign(void)
ins_error();
}
+@ We can silently ignore \.{\\par}s in a math formula.
+
+@c
+void insert_dollar_sign_par_end(void)
+{
+ if (!int_par(suppress_mathpar_error_code)) {
+ insert_dollar_sign() ;
+ }
+}
+
+
+
+
@ The `|you_cant|' procedure prints a line saying that the current command
is illegal in the current mode; it identifies these things symbolically.
diff --git a/Build/source/texk/web2c/luatexdir/tex/mathcodes.h b/Build/source/texk/web2c/luatexdir/tex/mathcodes.h
index 6e428775a3c..1640d82b989 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mathcodes.h
+++ b/Build/source/texk/web2c/luatexdir/tex/mathcodes.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: mathcodes.h 4562 2013-01-21 02:58:59Z khaled $ */
#ifndef MATHCODES_H
# define MATHCODES_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/mathcodes.w b/Build/source/texk/web2c/luatexdir/tex/mathcodes.w
index 7092dace012..b5addc7d6c9 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mathcodes.w
+++ b/Build/source/texk/web2c/luatexdir/tex/mathcodes.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: mathcodes.w 4562 2013-01-21 02:58:59Z khaled $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/mathcodes.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/memoryword.h b/Build/source/texk/web2c/luatexdir/tex/memoryword.h
index 6f9cfa393b1..5db2bb8cb36 100644
--- a/Build/source/texk/web2c/luatexdir/tex/memoryword.h
+++ b/Build/source/texk/web2c/luatexdir/tex/memoryword.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: memoryword.h 5031 2014-07-04 07:16:27Z luigi $ */
/* This header file is extra special because it is read in from
within the pascal source */
diff --git a/Build/source/texk/web2c/luatexdir/tex/memoryword.w b/Build/source/texk/web2c/luatexdir/tex/memoryword.w
index d3002f1b2b6..b596abb37ec 100644
--- a/Build/source/texk/web2c/luatexdir/tex/memoryword.w
+++ b/Build/source/texk/web2c/luatexdir/tex/memoryword.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: memoryword.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/memoryword.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/mlist.h b/Build/source/texk/web2c/luatexdir/tex/mlist.h
index c3c8a08b1be..487282ca0c7 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mlist.h
+++ b/Build/source/texk/web2c/luatexdir/tex/mlist.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: mlist.h 3265 2009-12-18 16:21:40Z taco $ */
#ifndef MLIST_H
# define MLIST_H 1
diff --git a/Build/source/texk/web2c/luatexdir/tex/mlist.w b/Build/source/texk/web2c/luatexdir/tex/mlist.w
index 427a6348b2d..5de4dbec1b9 100644
--- a/Build/source/texk/web2c/luatexdir/tex/mlist.w
+++ b/Build/source/texk/web2c/luatexdir/tex/mlist.w
@@ -23,9 +23,7 @@
\def\LuaTeX{Lua\TeX}
@ @c
-static const char _svn_version[] =
- "$Id: mlist.w 5125 2015-01-15 18:36:42Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/mlist.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -2748,14 +2746,64 @@ will be horizontally shifted over |delta1|, the subscript over |delta2|.
We set |shift_down| and |shift_up| to the minimum amounts to shift the
baseline of subscripts and superscripts based on the given nucleus.
-@c
+Note: We need to look at a character but also at the first one in a sub list
+and there we ignore leading kerns and glue. Elsewhere is code that removes
+kerns assuming that is italic correction. The heuristics are unreliable for
+the new fonts so eventualy there will be an option to ignore such corrections.
+
+@ @c
+#define analyze_script(init,su_n,su_f,su_c) do { \
+ su_n = init; \
+ if (su_n != null) { \
+ if (type(su_n) == sub_mlist_node) { \
+ su_n = math_list(su_n); \
+ if (su_n != null) { \
+ while (su_n) { \
+ if ((type(su_n) == kern_node) || (type(su_n) == glue_node)) {\
+ su_n = vlink(su_n); \
+ } else if (type(su_n) == simple_noad) { \
+ su_n = nucleus(su_n); \
+ if (type(su_n) != math_char_node) { \
+ su_n = null; \
+ } \
+ break; \
+ } else { \
+ su_n = null; \
+ break; \
+ } \
+ } \
+ } \
+ } \
+ if (su_n != null) { \
+ fetch(su_n); \
+ if (char_exists(cur_f, cur_c)) { \
+ su_f = cur_f; \
+ su_c = cur_c; \
+ } else { \
+ su_n = null; \
+ } \
+ } \
+ } \
+ } while (0)
+
+
static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
{
pointer x, y, z; /* temporary registers for box construction */
scaled shift_up, shift_down, clr; /* dimensions in the calculation */
scaled delta1, delta2;
+ halfword sub_n, sup_n;
+ internal_font_number sub_f, sup_f;
+ int sub_c, sup_c;
+ sub_n = null;
+ sup_n = null;
+ sub_f = 0;
+ sup_f = 0;
+ sub_c = 0;
+ sup_c = 0;
delta1 = it;
delta2 = 0;
+
#ifdef DEBUG
printf("it: %d\n", it);
dump_simple_node(q);
@@ -2782,7 +2830,16 @@ static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
list_ptr(z) = null;
flush_node(z);
}
+
+ if (is_char_node(p)) {
+ /* we look at the subscript character (_i) or first character in a list (_{ij}) */
+ analyze_script(subscr(q),sub_n,sub_f,sub_c);
+ /* we look at the superscript character (^i) or first character in a list (^{ij}) */
+ analyze_script(supscr(q),sup_n,sup_f,sup_c);
+ }
+
if (supscr(q) == null) {
+
/* Construct a subscript box |x| when there is no superscript */
/* When there is a subscript without a superscript, the top of the subscript
should not exceed the baseline plus four-fifths of the x-height. */
@@ -2796,16 +2853,10 @@ static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
shift_amount(x) = shift_down;
/* now find and correct for horizontal shift */
- if (is_char_node(p) && subscr(q) != null
- && type(subscr(q)) == math_char_node) {
- fetch(subscr(q));
- if (char_exists(cur_f, cur_c)) {
- delta2 =
- find_math_kern(font(p), character(p), cur_f, cur_c,
- sub_mark_cmd, shift_down);
- if (delta2 != MATH_KERN_NOT_FOUND && delta2 != 0) {
- p = attach_hkern_to_new_hlist(q, delta2);
- }
+ if (sub_n != null) {
+ delta2 = find_math_kern(font(p), character(p),sub_f,sub_c,sub_mark_cmd, shift_down);
+ if (delta2 != MATH_KERN_NOT_FOUND && delta2 != 0) {
+ p = attach_hkern_to_new_hlist(q, delta2);
}
}
@@ -2825,15 +2876,10 @@ static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
if (subscr(q) == null) {
shift_amount(x) = -shift_up;
/* now find and correct for horizontal shift */
- if (is_char_node(p) && type(supscr(q)) == math_char_node) {
- fetch(supscr(q));
- if (char_exists(cur_f, cur_c)) {
- clr =
- find_math_kern(font(p), character(p), cur_f, cur_c,
- sup_mark_cmd, shift_up);
- if (clr != MATH_KERN_NOT_FOUND && clr != 0) {
- p = attach_hkern_to_new_hlist(q, clr);
- }
+ if (sup_n != null) {
+ clr = find_math_kern(font(p),character(p),sup_f,sup_c,sup_mark_cmd,shift_up);
+ if (clr != MATH_KERN_NOT_FOUND && clr != 0) {
+ p = attach_hkern_to_new_hlist(q, clr);
}
}
} else {
@@ -2849,8 +2895,7 @@ static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
width(y) = width(y) + space_after_script(cur_style);
if (shift_down < sub_sup_shift_down(cur_style))
shift_down = sub_sup_shift_down(cur_style);
- clr = subsup_vgap(cur_style) -
- ((shift_up - depth(x)) - (height(y) - shift_down));
+ clr = subsup_vgap(cur_style) - ((shift_up - depth(x)) - (height(y) - shift_down));
if (clr > 0) {
shift_down = shift_down + clr;
clr = sup_sub_bottom_max(cur_style) - (shift_up - depth(x));
@@ -2860,30 +2905,19 @@ static void make_scripts(pointer q, pointer p, scaled it, int cur_style)
}
}
/* now find and correct for horizontal shift */
- if (is_char_node(p) && subscr(q) != null
- && type(subscr(q)) == math_char_node) {
- fetch(subscr(q));
- if (char_exists(cur_f, cur_c)) {
- delta2 =
- find_math_kern(font(p), character(p), cur_f, cur_c,
- sub_mark_cmd, shift_down);
- if (delta2 != MATH_KERN_NOT_FOUND && delta2 != 0) {
- p = attach_hkern_to_new_hlist(q, delta2);
- }
+ if (sub_n != null) {
+ delta2 = find_math_kern(font(p), character(p),sub_f,sub_c,sub_mark_cmd, shift_down);
+ if (delta2 != MATH_KERN_NOT_FOUND && delta2 != 0) {
+ p = attach_hkern_to_new_hlist(q, delta2);
}
}
/* now the horizontal shift for the superscript. */
/* the superscript is also to be shifted by |delta1| (the italic correction) */
clr = MATH_KERN_NOT_FOUND;
- if (is_char_node(p) && supscr(q) != null
- && type(supscr(q)) == math_char_node) {
- fetch(supscr(q));
- if (char_exists(cur_f, cur_c)) {
- clr =
- find_math_kern(font(p), character(p), cur_f, cur_c,
- sup_mark_cmd, shift_up);
- }
+ if (sup_n != null) {
+ clr = find_math_kern(font(p),character(p),sup_f,sup_c,sup_mark_cmd,shift_up);
}
+
if (delta2 == MATH_KERN_NOT_FOUND)
delta2 = 0;
if (clr != MATH_KERN_NOT_FOUND) {
diff --git a/Build/source/texk/web2c/luatexdir/tex/nesting.h b/Build/source/texk/web2c/luatexdir/tex/nesting.h
index c46875ad8c6..238522a77d1 100644
--- a/Build/source/texk/web2c/luatexdir/tex/nesting.h
+++ b/Build/source/texk/web2c/luatexdir/tex/nesting.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: nesting.h 3477 2010-03-12 13:59:34Z taco $ */
#ifndef NESTING_H
# define NESTING_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/nesting.w b/Build/source/texk/web2c/luatexdir/tex/nesting.w
index 177901166f4..ed27600bd5f 100644
--- a/Build/source/texk/web2c/luatexdir/tex/nesting.w
+++ b/Build/source/texk/web2c/luatexdir/tex/nesting.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: nesting.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/nesting.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/packaging.h b/Build/source/texk/web2c/luatexdir/tex/packaging.h
index 6e57ed57459..b1e68e8f732 100644
--- a/Build/source/texk/web2c/luatexdir/tex/packaging.h
+++ b/Build/source/texk/web2c/luatexdir/tex/packaging.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: packaging.h 4445 2012-05-25 23:18:09Z hhenkel $ */
#ifndef PACKAGING_H
# define PACKAGING_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/packaging.w b/Build/source/texk/web2c/luatexdir/tex/packaging.w
index 42a87f1ee0d..edc22b3e824 100644
--- a/Build/source/texk/web2c/luatexdir/tex/packaging.w
+++ b/Build/source/texk/web2c/luatexdir/tex/packaging.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: packaging.w 5023 2014-06-18 08:22:44Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/packaging.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/postlinebreak.h b/Build/source/texk/web2c/luatexdir/tex/postlinebreak.h
index fb0e4d9ca6d..e4a492a8ca5 100644
--- a/Build/source/texk/web2c/luatexdir/tex/postlinebreak.h
+++ b/Build/source/texk/web2c/luatexdir/tex/postlinebreak.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: postlinebreak.h 3493 2010-03-15 11:49:49Z taco $ */
#ifndef POSTLINEBREAK_H
# define POSTLINEBREAK_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/postlinebreak.w b/Build/source/texk/web2c/luatexdir/tex/postlinebreak.w
index d7990ca52c0..2fa1b269fc9 100644
--- a/Build/source/texk/web2c/luatexdir/tex/postlinebreak.w
+++ b/Build/source/texk/web2c/luatexdir/tex/postlinebreak.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: postlinebreak.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/postlinebreak.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/primitive.h b/Build/source/texk/web2c/luatexdir/tex/primitive.h
index b00a6b770ed..cca6fe9de08 100644
--- a/Build/source/texk/web2c/luatexdir/tex/primitive.h
+++ b/Build/source/texk/web2c/luatexdir/tex/primitive.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: primitive.h 4564 2013-01-21 13:25:53Z khaled $ */
#ifndef LUATEX_PRIMITIVE_H
# define LUATEX_PRIMITIVE_H 1
diff --git a/Build/source/texk/web2c/luatexdir/tex/primitive.w b/Build/source/texk/web2c/luatexdir/tex/primitive.w
index e02ae1a7735..e343a0ffd07 100644
--- a/Build/source/texk/web2c/luatexdir/tex/primitive.w
+++ b/Build/source/texk/web2c/luatexdir/tex/primitive.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: primitive.w 4562 2013-01-21 02:58:59Z khaled $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/primitive.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/printing.h b/Build/source/texk/web2c/luatexdir/tex/printing.h
index 057ed422b95..04109cdf8a4 100644
--- a/Build/source/texk/web2c/luatexdir/tex/printing.h
+++ b/Build/source/texk/web2c/luatexdir/tex/printing.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: printing.h 5002 2014-05-20 09:14:16Z taco $ */
#ifndef PRINTING_H
# define PRINTING_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/printing.w b/Build/source/texk/web2c/luatexdir/tex/printing.w
index ce64d1e829c..0cc4185823a 100644
--- a/Build/source/texk/web2c/luatexdir/tex/printing.w
+++ b/Build/source/texk/web2c/luatexdir/tex/printing.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: printing.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/printing.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h" /* for ptexbanner */
diff --git a/Build/source/texk/web2c/luatexdir/tex/scanning.h b/Build/source/texk/web2c/luatexdir/tex/scanning.h
index ca7804ea749..6c858a2c25e 100644
--- a/Build/source/texk/web2c/luatexdir/tex/scanning.h
+++ b/Build/source/texk/web2c/luatexdir/tex/scanning.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: scanning.h 4877 2014-03-14 01:26:05Z luigi $ */
#ifndef SCANNING_H
# define SCANNING_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/scanning.w b/Build/source/texk/web2c/luatexdir/tex/scanning.w
index 7e2283a92cc..337c19a8276 100644
--- a/Build/source/texk/web2c/luatexdir/tex/scanning.w
+++ b/Build/source/texk/web2c/luatexdir/tex/scanning.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: scanning.w 5009 2014-05-26 07:49:59Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/scanning.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/stringpool.h b/Build/source/texk/web2c/luatexdir/tex/stringpool.h
index d9a33fe102d..a969547e763 100644
--- a/Build/source/texk/web2c/luatexdir/tex/stringpool.h
+++ b/Build/source/texk/web2c/luatexdir/tex/stringpool.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: stringpool.h 4599 2013-03-19 15:41:07Z taco $ */
#ifndef STRINGPOOL_H
# define STRINGPOOL_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/stringpool.w b/Build/source/texk/web2c/luatexdir/tex/stringpool.w
index 990c619d7f2..5972657f56e 100644
--- a/Build/source/texk/web2c/luatexdir/tex/stringpool.w
+++ b/Build/source/texk/web2c/luatexdir/tex/stringpool.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: stringpool.w 4599 2013-03-19 15:41:07Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/stringpool.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/texdeffont.h b/Build/source/texk/web2c/luatexdir/tex/texdeffont.h
index e2ce6f91cc0..24782f5fbe4 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texdeffont.h
+++ b/Build/source/texk/web2c/luatexdir/tex/texdeffont.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texdeffont.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef TEXDEFFONT_H
# define TEXDEFFONT_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/texdeffont.w b/Build/source/texk/web2c/luatexdir/tex/texdeffont.w
index 174a1ba86dc..7fe5ae1e18c 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texdeffont.w
+++ b/Build/source/texk/web2c/luatexdir/tex/texdeffont.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: texdeffont.w 4520 2012-12-14 09:15:55Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/texdeffont.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/texfileio.h b/Build/source/texk/web2c/luatexdir/tex/texfileio.h
index d0f5c45e5c4..c6366500766 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texfileio.h
+++ b/Build/source/texk/web2c/luatexdir/tex/texfileio.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texfileio.h 4521 2012-12-14 13:54:54Z taco $ */
#ifndef TEXFILEIO_H
# define TEXFILEIO_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/texfileio.w b/Build/source/texk/web2c/luatexdir/tex/texfileio.w
index f6314e3f181..4d50504386c 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texfileio.w
+++ b/Build/source/texk/web2c/luatexdir/tex/texfileio.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: texfileio.w 4956 2014-03-28 12:12:17Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/texfileio.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/texmath.h b/Build/source/texk/web2c/luatexdir/tex/texmath.h
index 75a595e545f..72b83de6143 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texmath.h
+++ b/Build/source/texk/web2c/luatexdir/tex/texmath.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texmath.h 3461 2010-03-09 10:20:54Z taco $ */
#ifndef TEXMATH_H
# define TEXMATH_H 1
diff --git a/Build/source/texk/web2c/luatexdir/tex/texmath.w b/Build/source/texk/web2c/luatexdir/tex/texmath.w
index 428e5001304..f7280b72f37 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texmath.w
+++ b/Build/source/texk/web2c/luatexdir/tex/texmath.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: texmath.w 5081 2014-11-07 18:38:33Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/texmath.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/texnodes.h b/Build/source/texk/web2c/luatexdir/tex/texnodes.h
index d1015373909..97ad3b0ede9 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texnodes.h
+++ b/Build/source/texk/web2c/luatexdir/tex/texnodes.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: texnodes.h 4847 2014-03-05 18:13:17Z luigi $ */
#include <stdarg.h>
@@ -90,8 +89,10 @@ extern void undump_node_mem(void);
# define attribute_node_size 2
+
# define attr_list_ref(a) vinfo((a)+1)
/* the reference count */
+# define assign_attribute_ref(n,p) do { node_attr(n) = p;attr_list_ref(p)++;} while (0)
# define attribute_id(a) vinfo((a)+1)
# define attribute_value(a) vlink((a)+1)
@@ -679,18 +680,23 @@ typedef enum {
# define cache_disabled max_halfword
extern void delete_attribute_ref(halfword b);
+extern void reassign_attribute(halfword n,halfword new);
+extern void delete_attribute_ref(halfword b);
extern void build_attribute_list(halfword b);
+extern halfword current_attribute_list(void);
extern int unset_attribute(halfword n, int c, int w);
extern void set_attribute(halfword n, int c, int w);
extern int has_attribute(halfword n, int c, int w);
+
extern halfword new_span_node(halfword n, int c, scaled w);
extern void print_short_node_contents(halfword n);
extern void show_node_list(int i);
extern pointer actual_box_width(pointer r, scaled base_width);
+
/* TH: these two defines still need checking. The node ordering in luatex is not
quite the same as in tex82 */
diff --git a/Build/source/texk/web2c/luatexdir/tex/texnodes.w b/Build/source/texk/web2c/luatexdir/tex/texnodes.w
index dc1279baa67..04c2c5fee58 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texnodes.w
+++ b/Build/source/texk/web2c/luatexdir/tex/texnodes.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: texnodes.w 5112 2014-12-20 08:21:53Z luigi $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/texnodes.w $";
+
#include "ptexlib.h"
#include "lua/luatex-api.h"
@@ -2199,7 +2197,7 @@ void update_attribute_cache(void)
void build_attribute_list(halfword b)
{
if (max_used_attr >= 0) {
- if (attr_list_cache == cache_disabled) {
+ if (attr_list_cache == cache_disabled|| attr_list_cache == null) {
update_attribute_cache();
if (attr_list_cache == null)
return;
@@ -2213,6 +2211,43 @@ void build_attribute_list(halfword b)
}
}
+
+@ @c
+halfword current_attribute_list(void)
+{
+ if (max_used_attr >= 0) {
+ if (attr_list_cache == cache_disabled) {
+ update_attribute_cache();
+ }
+ return attr_list_cache ;
+ }
+ return null ;
+}
+
+
+@ @c
+void reassign_attribute(halfword n, halfword new)
+{
+ halfword old;
+ old = node_attr(n);
+ if (new == null) {
+ /* there is nothing to assign but we need to check for an old value */
+ if (old != null)
+ delete_attribute_ref(old); /* also nulls attr field of n */
+ } else if (old == null) {
+ /* nothing is assigned so we just do that now */
+ assign_attribute_ref(n,new);
+ } else if (old != new) {
+ /* something is assigned so we need to clean up and assign then */
+ delete_attribute_ref(old);
+ assign_attribute_ref(n,new);
+ }
+ /* else: same value so there is no need to assign and change the refcount */
+ node_attr(n) = new ;
+}
+
+
+
@ @c
void delete_attribute_ref(halfword b)
{
diff --git a/Build/source/texk/web2c/luatexdir/tex/textcodes.h b/Build/source/texk/web2c/luatexdir/tex/textcodes.h
index f81db2dd0a6..4249ce631b1 100644
--- a/Build/source/texk/web2c/luatexdir/tex/textcodes.h
+++ b/Build/source/texk/web2c/luatexdir/tex/textcodes.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: textcodes.h 3261 2009-12-18 11:38:21Z taco $ */
#ifndef TEXTCODES_H
# define TEXTCODES_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/textcodes.w b/Build/source/texk/web2c/luatexdir/tex/textcodes.w
index 08d890dfb3d..6487e821c70 100644
--- a/Build/source/texk/web2c/luatexdir/tex/textcodes.w
+++ b/Build/source/texk/web2c/luatexdir/tex/textcodes.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: textcodes.w 4519 2012-12-14 09:11:19Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/textcodes.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/tex/textoken.h b/Build/source/texk/web2c/luatexdir/tex/textoken.h
index f757612fc5d..c2a96b33b40 100644
--- a/Build/source/texk/web2c/luatexdir/tex/textoken.h
+++ b/Build/source/texk/web2c/luatexdir/tex/textoken.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: textoken.h 4877 2014-03-14 01:26:05Z luigi $ */
#ifndef TEXTOKEN_H
# define TEXTOKEN_H
diff --git a/Build/source/texk/web2c/luatexdir/tex/textoken.w b/Build/source/texk/web2c/luatexdir/tex/textoken.w
index d37b85ae6f8..296e1e6aede 100644
--- a/Build/source/texk/web2c/luatexdir/tex/textoken.w
+++ b/Build/source/texk/web2c/luatexdir/tex/textoken.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: textoken.w 5004 2014-05-20 09:23:31Z taco $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/tex/textoken.w $";
+
#include "ptexlib.h"
@@ -29,6 +27,8 @@ static const char _svn_version[] =
#define cat_code_table int_par(cat_code_table_code)
#define tracing_nesting int_par(tracing_nesting_code)
#define suppress_outer_error int_par(suppress_outer_error_code)
+#define suppress_mathpar_error int_par(suppress_mathpar_error_code)
+
#define every_eof equiv(every_eof_loc)
#define box(A) equiv(box_base+(A))
@@ -480,8 +480,9 @@ boolean scan_keyword(const char *s)
const char *k; /* index into |str_pool| */
halfword save_cur_cs = cur_cs;
int saved_align_state = align_state;
- assert (strlen(s) > 1);
- p = backup_head;
+ if (strlen(s) == 0) /* was assert (strlen(s) > 1); */
+ return false ; /* but not with newtokenlib zero keyword simply doesn't match */
+ p = backup_head;
token_link(p) = null;
k = s;
while (*k) {
@@ -1923,6 +1924,7 @@ void conv_toks(void)
if (luacstrings > 0)
lua_string_start();
}
+ return;
break;
case pdf_insert_ht_code:
scan_register_num();
diff --git a/Build/source/texk/web2c/luatexdir/utils/avlstuff.h b/Build/source/texk/web2c/luatexdir/utils/avlstuff.h
index 6eb9ac6773d..cc78ce3192f 100644
--- a/Build/source/texk/web2c/luatexdir/utils/avlstuff.h
+++ b/Build/source/texk/web2c/luatexdir/utils/avlstuff.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: avlstuff.h 5074 2014-10-24 16:57:38Z oneiros $ */
#ifndef AVLSTUFF_H
# define AVLSTUFF_H
diff --git a/Build/source/texk/web2c/luatexdir/utils/avlstuff.w b/Build/source/texk/web2c/luatexdir/utils/avlstuff.w
index fc94e68fe9a..1ea148b0917 100644
--- a/Build/source/texk/web2c/luatexdir/utils/avlstuff.w
+++ b/Build/source/texk/web2c/luatexdir/utils/avlstuff.w
@@ -21,9 +21,7 @@
@* AVL helper functions.
@ @c
-static const char _svn_version[] =
- "$Id: avlstuff.w 5074 2014-10-24 16:57:38Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/utils/avlstuff.w $";
+
#include "ptexlib.h"
#include "utils/avl.h"
diff --git a/Build/source/texk/web2c/luatexdir/utils/managed-sa.h b/Build/source/texk/web2c/luatexdir/utils/managed-sa.h
index 185303a2e2c..2b96caf0283 100644
--- a/Build/source/texk/web2c/luatexdir/utils/managed-sa.h
+++ b/Build/source/texk/web2c/luatexdir/utils/managed-sa.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: managed-sa.h 3378 2010-01-25 20:46:26Z hhenkel $ */
#ifndef MANAGED_SA_H
# define MANAGED_SA_H 1
diff --git a/Build/source/texk/web2c/luatexdir/utils/managed-sa.w b/Build/source/texk/web2c/luatexdir/utils/managed-sa.w
index afdd99bfa61..85bb058352a 100644
--- a/Build/source/texk/web2c/luatexdir/utils/managed-sa.w
+++ b/Build/source/texk/web2c/luatexdir/utils/managed-sa.w
@@ -20,9 +20,7 @@
@* Sparse arrays with an embedded save stack.
@ @c
-static const char _svn_version[] =
- "$Id: managed-sa.w 4442 2012-05-25 22:40:34Z hhenkel $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/utils/managed-sa.w $";
+
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/utils/unistring.h b/Build/source/texk/web2c/luatexdir/utils/unistring.h
index af9ba0f8f56..f0a5914a6c5 100644
--- a/Build/source/texk/web2c/luatexdir/utils/unistring.h
+++ b/Build/source/texk/web2c/luatexdir/utils/unistring.h
@@ -17,7 +17,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: unistring.h 5074 2014-10-24 16:57:38Z oneiros $ */
#ifndef UNISTRING_H
# define UNISTRING_H
diff --git a/Build/source/texk/web2c/luatexdir/utils/unistring.w b/Build/source/texk/web2c/luatexdir/utils/unistring.w
index 9e3eb4f243b..3e8d82d0c1d 100644
--- a/Build/source/texk/web2c/luatexdir/utils/unistring.w
+++ b/Build/source/texk/web2c/luatexdir/utils/unistring.w
@@ -18,9 +18,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: unistring.w 5074 2014-10-24 16:57:38Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/utils/unistring.w $";
+
@ @c
#include "ptexlib.h"
diff --git a/Build/source/texk/web2c/luatexdir/utils/utils.h b/Build/source/texk/web2c/luatexdir/utils/utils.h
index d342feed4dd..135bd5dafc0 100644
--- a/Build/source/texk/web2c/luatexdir/utils/utils.h
+++ b/Build/source/texk/web2c/luatexdir/utils/utils.h
@@ -18,7 +18,6 @@
You should have received a copy of the GNU General Public License along
with LuaTeX; if not, see <http://www.gnu.org/licenses/>. */
-/* $Id: utils.h 5074 2014-10-24 16:57:38Z oneiros $ */
#ifndef UTILS_H
# define UTILS_H
diff --git a/Build/source/texk/web2c/luatexdir/utils/utils.w b/Build/source/texk/web2c/luatexdir/utils/utils.w
index bb91e57b955..c1ada7c5e93 100644
--- a/Build/source/texk/web2c/luatexdir/utils/utils.w
+++ b/Build/source/texk/web2c/luatexdir/utils/utils.w
@@ -19,9 +19,7 @@
% with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
@ @c
-static const char _svn_version[] =
- "$Id: utils.w 5074 2014-10-24 16:57:38Z oneiros $"
- "$URL: https://foundry.supelec.fr/svn/luatex/trunk/source/texk/web2c/luatexdir/utils/utils.w $";
+
@ @c
#include "ptexlib.h"