summaryrefslogtreecommitdiff
path: root/macros/latex/exptl/mem/Mtp/lgr-com.mtp
blob: dca3f3a75e2e871c91b1cab0a414f72f925d6cbc (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
% (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:


. [COMBINING COMMA ABOVE][COMBINING ACUTE ACCENT] => ">'" \1;
. [COMBINING COMMA ABOVE][COMBINING GRAVE ACCENT] => ">`" \1;
. [COMBINING COMMA ABOVE][COMBINING GREEK PERISPOMENI] => ">=" \1;

. [COMBINING REVERSED COMMA ABOVE][COMBINING ACUTE ACCENT] => "<'" \1;
. [COMBINING REVERSED COMMA ABOVE][COMBINING GRAVE ACCENT] => "<`" \1;
. [COMBINING REVERSED COMMA ABOVE][COMBINING GREEK PERISPOMENI] => @"40 \1;

. [COMBINING COMMA ABOVE]=> ">" \1;
. [COMBINING REVERSED COMMA ABOVE] => "<" \1;

. [COMBINING ACUTE ACCENT] => "'" \1;
. [COMBINING GRAVE ACCENT] => "`" \1;
. [COMBINING GREEK PERISPOMENI] => "=" \1;


% 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 DIAERESIS] => "\UseMemAccent{t}{34}";
<acc>[COMBINING DIAERESIS BELOW] => "\UseMemAccent{u}{34}";
<acc>[COMBINING BREVE BELOW] => "\UseMemAccent{b}{20}";
<acc>[COMBINING INVERTED BREVE BELOW] => "\UseMemAccent{b}{1}";
<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|@"0025|@"0028-@"003A|@"005B|@"005D) => \1;