primitive.tex (7173B)
1 \directlua{tex.enableprimitives("", tex.extraprimitives())} 2 3 %%% All macros are long 4 \let\@primlong=\long \def\long{\errmessage{All macros are \string\long!}} 5 \let\@primdef=\def \protected\@primlong\def\def{\@primlong\@primdef} 6 \let\@primedef=\edef \protected\def\edef{\@primlong\@primedef} 7 \let\@primgdef=\gdef \protected\def\gdef{\@primlong\@primgdef} 8 \let\@primxdef=\xdef \protected\def\xdef{\@primlong\@primxdef} 9 10 %%% Old LuaTeX compatibility 11 % TODO remove this? 12 \ifprimitive\glet \else 13 \protected\def\glet{\global\let} 14 \fi 15 16 %%% pdfTeX compatibility 17 \let\pdfpagewidth \pagewidth 18 \let\pdfpageheight \pageheight 19 \let\pdfadjustspacing \adjustspacing 20 \let\pdfprotrudechars \protrudechars 21 \let\pdfnoligatures \ignoreligaturesinfont 22 \let\pdffontexpand \expandglyphsinfont 23 \let\pdfcopyfont \copyfont 24 \let\pdfxform \saveboxresource 25 \let\pdflastxform \lastsavedboxresourceindex 26 \let\pdfrefxform \useboxresource 27 \let\pdfximage \saveimageresource 28 \let\pdflastximage \lastsavedimageresourceindex 29 \let\pdflastximagepages \lastsavedimageresourcepages 30 \let\pdfrefximage \useimageresource 31 \let\pdfsavepos \savepos 32 \let\pdflastxpos \lastxpos 33 \let\pdflastypos \lastypos 34 \let\pdfoutput \outputmode 35 \let\pdfdraftmode \draftmode 36 \let\pdfpxdimen \pxdimen 37 \let\pdfinsertht \insertht 38 \let\pdfnormaldeviate \normaldeviate 39 \let\pdfuniformdeviate \uniformdeviate 40 \let\pdfsetrandomseed \setrandomseed 41 \let\pdfrandomseed \randomseed 42 \let\pdfprimitive \primitive 43 \let\ifpdfprimitive \ifprimitive 44 \let\ifpdfabsnum \ifabsnum 45 \let\ifpdfabsdim \ifabsdim 46 \let\pdftracingfonts \tracingfonts % XXX not mentioned in LuaTeX manual 47 48 %%% PDF extensions 49 \protected\def\pdfliteral {\pdfextension literal } 50 \protected\def\pdfcolorstack {\pdfextension colorstack } 51 \protected\def\pdfsetmatrix {\pdfextension setmatrix } 52 \protected\def\pdfsave {\pdfextension save\relax} 53 \protected\def\pdfrestore {\pdfextension restore\relax} 54 \protected\def\pdfobj {\pdfextension obj } 55 \protected\def\pdfrefobj {\pdfextension refobj } 56 \protected\def\pdfannot {\pdfextension annot } 57 \protected\def\pdfstartlink {\pdfextension startlink } 58 \protected\def\pdfendlink {\pdfextension endlink\relax} 59 \protected\def\pdfoutline {\pdfextension outline } 60 \protected\def\pdfdest {\pdfextension dest } 61 \protected\def\pdfthread {\pdfextension thread } 62 \protected\def\pdfstartthread {\pdfextension startthread } 63 \protected\def\pdfendthread {\pdfextension endthread\relax} 64 \protected\def\pdfinfo {\pdfextension info } 65 \protected\def\pdfcatalog {\pdfextension catalog } 66 \protected\def\pdfnames {\pdfextension names } 67 \protected\def\pdfincludechars {\pdfextension includechars } 68 \protected\def\pdffontattr {\pdfextension fontattr } 69 \protected\def\pdfmapfile {\pdfextension mapfile } 70 \protected\def\pdfmapline {\pdfextension mapline } 71 \protected\def\pdftrailer {\pdfextension trailer } 72 \protected\def\pdfglyphtounicode {\pdfextension glyphtounicode } 73 \protected\def\pdfrunninglinkoff {\pdfextension linkstate 1 } 74 \protected\def\pdfrunninglinkon {\pdfextension linkstate 0 } 75 76 %%% PDF feedbacks 77 \protected\def\pdftexversion {\numexpr\pdffeedback version\relax} 78 \def\pdftexrevision {\pdffeedback revision } 79 \protected\def\pdflastlink {\numexpr\pdffeedback lastlink\relax} 80 \protected\def\pdfretval {\numexpr\pdffeedback retval\relax} 81 \protected\def\pdflastobj {\numexpr\pdffeedback lastobj\relax} 82 \protected\def\pdflastannot {\numexpr\pdffeedback lastannot\relax} 83 \def\pdfxformname {\pdffeedback xformname } 84 \def\pdfcreationdate {\pdffeedback creationdate } 85 \def\pdffontname {\pdffeedback fontname } 86 \def\pdffontobjnum {\pdffeedback fontobjnum } 87 \def\pdffontsize {\pdffeedback fontsize } 88 \def\pdfpageref {\pdffeedback pageref } 89 \def\pdfcolorstackinit {\pdffeedback colorstackinit } 90 91 %%% PDF variables 92 \protected\edef\pdfcompresslevel {\pdfvariable compresslevel } 93 \protected\edef\pdfobjcompresslevel {\pdfvariable objcompresslevel } 94 % \protected\edef\pdfrecompress {\pdfvariable recompress } % XXX added by LuaTeX? doesn't work in my luaTeX 95 \protected\edef\pdfdecimaldigits {\pdfvariable decimaldigits } 96 \protected\edef\pdfgamma {\pdfvariable gamma } 97 \protected\edef\pdfimageresolution {\pdfvariable imageresolution } 98 \protected\edef\pdfimageapplygamma {\pdfvariable imageapplygamma } 99 \protected\edef\pdfimagegamma {\pdfvariable imagegamma } 100 \protected\edef\pdfimagehicolor {\pdfvariable imagehicolor } 101 \protected\edef\pdfimageaddfilename {\pdfvariable imageaddfilename } % added by LuaTeX 102 \protected\edef\pdfpkresolution {\pdfvariable pkresolution } 103 \protected\edef\pdfpkfixeddpi {\pdfvariable pkfixeddpi } % XXX no documentation 104 \protected\edef\pdfinclusioncopyfonts {\pdfvariable inclusioncopyfonts } 105 \protected\edef\pdfinclusionerrorlevel {\pdfvariable inclusionerrorlevel } 106 \protected\edef\pdfignoreunknownimages {\pdfvariable ignoreunknownimages } % XXX added by LuaTeX? 107 \protected\edef\pdfgentounicode {\pdfvariable gentounicode } 108 \protected\edef\pdfomitcidset {\pdfvariable omitcidset } % XXX added by LuaTeX? 109 % \protected\edef\pdfomitcharset {\pdfvariable omitcharset } % XXX doesn't work in my luaTeX 110 \protected\edef\pdfpagebox {\pdfvariable pagebox } 111 \protected\edef\pdfmajorversion {\pdfvariable majorversion } 112 \protected\edef\pdfminorversion {\pdfvariable minorversion } 113 \protected\edef\pdfuniqueresname {\pdfvariable uniqueresname } 114 \protected\edef\pdfhorigin {\pdfvariable horigin } 115 \protected\edef\pdfvorigin {\pdfvariable vorigin } 116 \protected\edef\pdflinkmargin {\pdfvariable linkmargin } 117 \protected\edef\pdfdestmargin {\pdfvariable destmargin } 118 \protected\edef\pdfthreadmargin {\pdfvariable threadmargin } 119 \protected\edef\pdfxformmargin {\pdfvariable xformmargin } % XXX no documentation 120 \protected\edef\pdfpagesattr {\pdfvariable pagesattr } 121 \protected\edef\pdfpageattr {\pdfvariable pageattr } 122 \protected\edef\pdfpageresources {\pdfvariable pageresources } 123 \protected\edef\pdfxformattr {\pdfvariable xformattr } % added by LuaTeX 124 \protected\edef\pdfxformresources {\pdfvariable xformresources } % added by LuaTeX 125 \protected\edef\pdfpkmode {\pdfvariable pkmode } 126 \protected\edef\pdfsuppressoptionalinfo {\pdfvariable suppressoptionalinfo } % added by LuaTeX 127 \protected\edef\pdftrailerid {\pdfvariable trailerid } 128 129 %%% Reserve \span for linear algebra 130 \let\expand=\span % Alias for use in preambles 131 \let\cspan=\span % Alias for use in column spans 132 \let\span=\@undefined 133 134 %%% \outer is a bad feature; free up the control sequence. 135 \let\outer=\@undefined 136 137 \endinput