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;
|