summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/char-def.tex
blob: 39137241d95569bc3c03f1e58e47a3ca23586b4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
%D \module
%D   [       file=char-def,
%D        version=2005.04.25,
%D          title=\CONTEXT\ Lua Macros,
%D       subtitle=Unicode Support,
%D         author=Hans Hagen,
%D           date=\currentdate,
%D      copyright=PRAGMA]
%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}{Unicode Support (tables)}

\unprotect

%D An auxiliary macro:

\def\setcclcuc #1 #2 #3 %
  {\global\catcode#1=11 %
   \global\lccode #1=#2 %
   \global\uccode #1=#3 }

\registerctxluafile{char-def}{1.001}
\registerctxluafile{char-map}{1.001}
\registerctxluafile{char-syn}{1.001}

%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).

\ctxlua{characters.setcodes()}

% \startruntimeluacode
%   \ctxlua{characters.setpdfunicodes()}% pdftounicode mappings can only be done runtime
% \stopruntimeluacode

%D This is needed for Turkish:

\setcclcuc "201C "201C "201C
\setcclcuc "201D "201D "201D

\protect \endinput

% \ctxlua{characters.context.show(123)}
% \ctxlua{characters.context.show(0x7B)}
% \ctxlua{characters.context.show("7B")}

% \dostepwiserecurse{`A}{`Z}{1}
%   {\ctxlua{characters.context.show(\recurselevel)}}