%D \module %D [ file=char-ini, %D version=2006.08.20, %D title=\CONTEXT\ Character Support, %D subtitle=Initialization, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %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 Character Support / Initialization} \registerctxluafile{char-def}{1.001} % let's load this one first \registerctxluafile{char-ini}{1.001} \registerctxluafile{char-cjk}{1.001} \registerctxluafile{char-map}{1.001} % maybe we will load this someplace else \registerctxluafile{char-tex}{1.001} \unprotect % ¨äëïöüÿ % ´áćéíĺńóŕśúýź % ˙ċėġiż % ¯āēīōū % ˝őű % ˆâĉêĝĥîĵôŝûŵŷ % `àèìòùỳ % ¸çķļņŗşţ % ˛ąęįų % ˚åů % ˘ăĕğĭŏŭ % ˇčďěľňřšťž % ˜ãĩñõũ % \def\checkedchar#1% #2% % {\relax\iffontchar\font#1 \expandafter\firstoftwoarguments\else\expandafter\secondoftwoarguments\fi{\char#1}} % % impossible in math mode so there always fallback (till we have gyre): % % use \normalUchar when possible .. the next one is nice for documents and it also accepts % 0x prefixed numbers \def\utfchar#1{\ctxcommand{utfchar(\number#1)}} \def\checkedchar {\relax\ifmmode\expandafter\checkedmathchar\else\expandafter\checkedtextchar\fi} % #1#2 \def\checkedmathchar#1#2{#2} \def\checkedtextchar #1{\iffontchar\font#1 \expandafter\firstoftwoarguments\else\expandafter\secondoftwoarguments\fi{\char#1}} \unexpanded\def\textormathchar#1% {\relax\ifmmode \char#1\relax \else\iffontchar\font#1\relax \char#1\relax \else $\char#1$% \fi\fi} %D The codes are stored in the format, so we don't need to reinitialize %D them (unless of course we have adapted the table). It is on the agenda %D to do this with \type {tex.lccode} cum suis once they're available. % \def\setcclcuc#1#2#3{\global\catcode#1=\lettercatcode\global\lccode#1=#2\global\uccode#1=#3\relax} % \def\setcclcucself#1{\global\catcode#1=\lettercatcode\global\lccode#1=#1\global\uccode#1=#1\relax } \ctxlua{characters.setcodes()} % Is setting up vrb tpa and tpb needed? \ctxlua { characters.define( { % letter catcodes \number\texcatcodes, \number\ctxcatcodes, \number\notcatcodes, %number\mthcatcodes, \number\vrbcatcodes, \number\prtcatcodes, \number\tpacatcodes, \number\tpbcatcodes, \number\txtcatcodes, }, { % activate catcodes \number\ctxcatcodes, \number\notcatcodes, \number\prtcatcodes, % new } ) % catcodes.register("xmlcatcodes",\number\xmlcatcodes) } \def\chardescription#1{\ctxcommand{chardescription(\number#1)}} \protect \endinput