%D \module %D [ file=catc-xml, %D version=2006.09.18, %D title=\CONTEXT\ Catcode Macros, %D subtitle=\XML\ Catcode Tables, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. \writestatus{loading}{ConTeXt Catcode Regimes / XML} \ifdefined \xmlcatcodesn \else \newcatcodetable \xmlcatcodesn \fi % normal \ifdefined \xmlcatcodese \else \newcatcodetable \xmlcatcodese \fi % entitle \ifdefined \xmlcatcodesr \else \newcatcodetable \xmlcatcodesr \fi % reduce \startcatcodetable \xmlcatcodesn \catcode`\^^I = 10 % ascii tab is a blank space \catcode`\^^M = 5 % ascii return is end-line \catcode`\^^L = 5 % ascii form-feed \catcode`\ = 10 % ascii space is blank space \catcode`\^^Z = 9 % ascii eof is ignored \catcode`\& = 13 % entity \catcode`\< = 13 % element \catcode`\> = 12 \catcode`\" = 12 % probably not needed any more \catcode`\/ = 12 % probably not needed any more \catcode`\' = 12 % probably not needed any more \catcode`\~ = 12 % probably not needed any more \catcode`\# = 12 % probably not needed any more \catcode`\\ = 12 % probably not needed any more \stopcatcodetable \startcatcodetable \xmlcatcodese \catcode`\^^I = 10 % ascii tab is a blank space \catcode`\^^M = 5 % ascii return is end-line \catcode`\^^L = 5 % ascii form-feed \catcode`\ = 10 % ascii space is blank space \catcode`\^^Z = 9 % ascii eof is ignored \catcode`\& = 13 % entity \catcode`\< = 13 % element \catcode`\> = 12 \catcode`\# = 13 \catcode`\$ = 13 \catcode`\% = 13 \catcode`\\ = 13 \catcode`\^ = 13 \catcode`\_ = 13 \catcode`\{ = 13 \catcode`\} = 13 \catcode`\| = 13 \catcode`\~ = 13 \stopcatcodetable \startcatcodetable \xmlcatcodesr \catcode`\^^I = 10 % ascii tab is a blank space \catcode`\^^M = 5 % ascii return is end-line \catcode`\^^L = 5 % ascii form-feed \catcode`\ = 10 % ascii space is blank space \catcode`\^^Z = 9 % ascii eof is ignored \catcode`\& = 13 % entity \catcode`\< = 13 % element \catcode`\> = 12 \catcode`\# = 13 \catcode`\$ = 13 \catcode`\% = 13 \catcode`\\ = 13 \catcode`\^ = 13 \catcode`\_ = 13 \catcode`\{ = 13 \catcode`\} = 13 \catcode`\| = 13 \catcode`\~ = 13 \stopcatcodetable %D Next we hook in some active character definitions. \letcatcodecommand \xmlcatcodesn `\& \relax \letcatcodecommand \xmlcatcodesn `\< \relax \letcatcodecommand \xmlcatcodese `\& \relax \letcatcodecommand \xmlcatcodese `\< \relax \letcatcodecommand \xmlcatcodesr `\& \relax \letcatcodecommand \xmlcatcodesr `\< \relax \letcatcodecommand \xmlcatcodese `\# \relax \letcatcodecommand \xmlcatcodese `\$ \relax \letcatcodecommand \xmlcatcodese `\% \relax \letcatcodecommand \xmlcatcodese `\\ \relax \letcatcodecommand \xmlcatcodese `\^ \relax \letcatcodecommand \xmlcatcodese `\_ \relax \letcatcodecommand \xmlcatcodese `\{ \relax \letcatcodecommand \xmlcatcodese `\} \relax \letcatcodecommand \xmlcatcodese `\| \relax \letcatcodecommand \xmlcatcodese `\~ \relax \letcatcodecommand \xmlcatcodesr `\# \relax \letcatcodecommand \xmlcatcodesr `\$ \relax \letcatcodecommand \xmlcatcodesr `\% \relax \letcatcodecommand \xmlcatcodesr `\\ \relax \letcatcodecommand \xmlcatcodesr `\^ \relax \letcatcodecommand \xmlcatcodesr `\_ \relax \letcatcodecommand \xmlcatcodesr `\{ \relax \letcatcodecommand \xmlcatcodesr `\} \relax \letcatcodecommand \xmlcatcodesr `\| \relax \letcatcodecommand \xmlcatcodesr `\~ \relax \let\xmlcatcodes \xmlcatcodesn % beware, in mkiv we use \notcatcodes %D We register the catcodetables at the \LUA\ end where some further %D initializations take place. \ifnum\texengine=\luatexengine \ctxlua { characters.define( { % letter catcodes \number\xmlcatcodesn, \number\xmlcatcodese, \number\xmlcatcodesr, }, { % activate catcodes \number\xmlcatcodesn, \number\xmlcatcodese, \number\xmlcatcodesr, } ) catcodes.register("xmlcatcodes",\number\xmlcatcodes) } \fi \endinput