8 cat _tmp3 |
grep "$1" |
while read i
; do
9 code
=`echo $i | cut -c1-6`
10 echo "$code $2" >> _tmp5
15 echo " * getting list of needed unicode characters..."
17 cat mappings
/*.TXT |
sed -n
'/^0x../p' | \
18 cut
-f2
,4 |
sort |
uniq |
sed -n
'/^0x/p' > _tmp1
19 cat _tmp1 | cut
-f1 |
sort |
uniq > _tmp2
22 echo " * making unique list of unicode characters meanings..."
25 cat _tmp2 |
while read i
; do
26 sed -n
"/^$i/p" _tmp1 |
(read t
; echo "$t" >> _tmp3
)
31 echo " * creating one-byte fallback tables..."
35 echo " - for latin capital letters..."
37 cat _tmp3 |
grep 'LATIN CAPITAL LETTER [A-Z]$' > _tmp6
38 cat _tmp3 |
grep 'LATIN CAPITAL LETTER [A-Z] WITH' >> _tmp6
39 cat _tmp6 |
sort +2 > _tmp4
41 cat _tmp4 |
while read i
; do
42 code
=`echo $i | cut -c1-6`
43 fallb
=`echo $i | cut -c8-29`
44 cat _tmp4 | fgrep
"$fallb" | cut
-c1-6 |
(read i
;
45 echo "$code $i" >> _tmp5
)
49 echo " - for latin small letters..."
51 cat _tmp3 |
grep 'LATIN SMALL LETTER [A-Z]$' > _tmp6
52 cat _tmp3 |
grep 'LATIN SMALL LETTER [A-Z] WITH' >> _tmp6
53 cat _tmp6 |
sort +2 > _tmp4
55 cat _tmp4 |
while read i
; do
56 code
=`echo $i | cut -c1-6`
57 fallb
=`echo $i | cut -c8-27`
58 cat _tmp4 | fgrep
"$fallb" | cut
-c1-6 |
(read i
;
59 echo "$code $i" >> _tmp5
)
63 add_fallback
"DOUBLE .*QUOTATION MARK" "0x0022" "double quotations"
64 add_fallback
"SINGLE .*QUOTATION MARK" "0x0027" "single quotations"
65 add_fallback
"DASH" "0x002D" "dashes"
69 echo " * removing infinite loops from fallback tables..."
71 cat _tmp5 |
grep -v
'\(0x....\) \1' |
sort > Fallbacks
73 rm -f _tmp1 _tmp2 _tmp3 _tmp4 _tmp5 _tmp6