summaryrefslogtreecommitdiff
path: root/macros/latex/exptl/mem/Mtp/ot1-com.mtp
blob: 7939225e704a2e519c8afe47a8ca5aa49af79cb2 (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
% (c) 2001-2004 Javier Bezos

input: 2;
output: 1;

states: acc, end;

aliases:

topaccent  = (@"0300-@"0315 | @"031A-@"031B | @"033D-@"0344);
botaccent  = (@"0316-@"0319 | @"031C-@"0333 | @"0339-@"033C | @"0345);
overaccent = (@"0334-@"0338);
accent     = (@"0300-@"0345);

expressions:



% Combine if composed form not in main font

^({accent}) {topaccent} {topaccent} {accent}    => <=
     \4 "c{" \3 "c{" \2 "l{" \1 "}}}" @"1B  <push: acc>;
^({accent}) {topaccent} {botaccent} {topaccent} => <=
     \3 "c{" \4 "c{" \2 "l{" \1 "}}}" @"1B  <push: acc>;
^({accent}) {botaccent} {topaccent} {topaccent} => <=
     \2 "c{" \4 "c{" \3 "l{" \1 "}}}" @"1B  <push: acc>;
^({accent}) {topaccent} {accent}                => <=
     \3 "c{" \2 "l{" \1 "}}" @"1B  <push: acc>;
^({accent}) {botaccent} {topaccent}             => <=
     \2 "c{" \3 "l{" \1 "}}" @"1B  <push: acc>;
^({accent}) {accent}                            => <=
     \2 "l{" \1 "}" @"1B  <push: acc>;

<acc> @"1B   => <pop:>;
<acc>[COMBINING GRAVE ACCENT] => "\UseMemAccent{t}{18}";
<acc>[COMBINING GRAVE ACCENT BELOW] => "\UseMemAccent{u}{18}";
<acc>[COMBINING ACUTE ACCENT] => "\UseMemAccent{t}{19}";
<acc>[COMBINING ACUTE ACCENT BELOW] => "\UseMemAccent{u}{19}";
<acc>[COMBINING CIRCUMFLEX ACCENT] => "\UseMemAccent{t}{94}";
<acc>[COMBINING CIRCUMFLEX ACCENT BELOW] => "\UseMemAccent{u}{94}";
<acc>[COMBINING TILDE] => "\UseMemAccent{t}{126}";
<acc>[COMBINING TILDE BELOW] => "\UseMemAccent{u}{126}";
<acc>[COMBINING MACRON] => "\UseMemAccent{t}{22}";
<acc>[COMBINING MACRON BELOW] => "\UseMemAccent{u}{22}";
<acc>[COMBINING BREVE] => "\UseMemAccent{t}{21}";
<acc>[COMBINING BREVE BELOW] => "\UseMemAccent{u}{21}";
<acc>[COMBINING DOT ABOVE] => "\UseMemAccent{t}{95}";
<acc>[COMBINING DOT BELOW] => "\UseMemAccent{u}{95}";
<acc>[COMBINING DIAERESIS] => "\UseMemAccent{t}{127}";
<acc>[COMBINING DIAERESIS BELOW] => "\UseMemAccent{u}{127}";
<acc>[COMBINING RING ABOVE] => "\UseMemAccent{t}{23}";
<acc>[COMBINING RING BELOW] => "\UseMemAccent{u}{23}";
<acc>[COMBINING DOUBLE ACUTE ACCENT] => "\UseMemAccent{t}{125}";
<acc>[COMBINING CARON] => "\UseMemAccent{t}{20}";
<acc>[COMBINING CARON BELOW] => "\UseMemAccent{u}{20}";
<acc>[COMBINING CEDILLA] => "\UseMemAccent{c}{24}";
<acc>[COMBINING COMMA BELOW] => "\UseMemAccent{p}{,}";
<acc>[COMBINING DOT BELOW] => "\UseMemAccent{p}{.}";


% PUA -> ASCII

@"E125          => "\MemMoveOtherChar\%"; % as a special case (37).
(@"E100-@"E17F) => "\MemMoveOtherChar\" #(\1 - @"E100);



% Glyphs in main font with same value as Unicode characters

(@"0020-@"0021|@"0023-@"0026|@"0028-@"003B|@"003D|@"003F-@"005B|@"005D|@"0061-@"007A) => \1;