summaryrefslogtreecommitdiff
path: root/unicode/make-precompose.sh
blob: 7c513c41e1a891f4cdffbbe188da95ec7730c074 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh
# $XTermId: make-precompose.sh,v 1.6 2007/02/05 01:06:36 Thomas.Wolff Exp $
# $XFree86: xc/programs/xterm/unicode/make-precompose.sh,v 1.4 2005/03/29 04:00:32 tsi Exp $

cat precompose.c.head | sed -e's/@/$/g'

# extract canonical decomposition data from UnicodeData.txt,
# pad hex values to 5 digits,
# sort numerically on base character, then combining character,
# then reduce to 4 digits again where possible
cut UnicodeData.txt -d ";" -f 1,6 |
 grep ";[0-9,A-F]" | grep " " |
 sed -e "s/ /, 0x/;s/^/{ 0x/;s/;/, 0x/;s/$/},/" |
 sed -e "s,0x\(....\)\([^0-9A-Fa-f]\),0x0\1\2,g" |
 (sort -k 3 || sort +2) |
 sed -e "s,0x0\(...[0-9A-Fa-f]\),0x\1,g"

cat precompose.c.tail