GcinScripts01: ibus2tab

File ibus2tab, 1.7 kB (added by caleb, 2 years ago)
Line 
1 #!/bin/sh
2 #
3 # This script is public domain.
4 #
5 # ibus2tab
6
7   VERSION=0.0.2
8
9 if [ "$1" = "" ]; then
10   echo ${0##*/}, version $VERSION, for Boshiamy IM only.
11   echo "Usage: ${0##*/} file"
12   exit 1
13 fi
14
15 if [ ! -e "$1" ]; then
16   echo ${0##*/}: cannot access $1.
17   exit 2
18 fi
19 CINFILE=`basename $1 .db | tr A-Z a-z`.cin
20 tail -n 39 $0 > $CINFILE
21 export LC_ALL=C
22 echo .dump | \
23 sqlite3 $1 | \
24 grep '^INSERT INTO "phrases" VALUES' | \
25 sed -e 's/INSERT INTO "phrases" VALUES(//' -e 's/);$//' \
26     -e 's/,/ /g' | \
27 awk '{print $4,$5,$6,$7,$8,"    ",$10," ",$11}' | \
28 sed -e 's/^/ /' \
29     -e 's/ /  /g' \
30     -e "s/'//g" \
31     -e 's/ 1 / a /g' \
32     -e 's/ 2 / b /g' \
33     -e 's/ 3 / c /g' \
34     -e 's/ 4 / d /g' \
35     -e 's/ 5 / e /g' \
36     -e 's/ 6 / f /g' \
37     -e 's/ 7 / g /g' \
38     -e 's/ 8 / h /g' \
39     -e 's/ 9 / i /g' \
40     -e 's/ 10 / j /g' \
41     -e 's/ 11 / k /g' \
42     -e 's/ 12 / l /g' \
43     -e 's/ 13 / m /g' \
44     -e 's/ 14 / n /g' \
45     -e 's/ 15 / o /g' \
46     -e 's/ 16 / p /g' \
47     -e 's/ 17 / q /g' \
48     -e 's/ 18 / r /g' \
49     -e 's/ 19 / s /g' \
50     -e 's/ 20 / t /g' \
51     -e 's/ 21 / u /g' \
52     -e 's/ 22 / v /g' \
53     -e 's/ 23 / w /g' \
54     -e 's/ 24 / x /g' \
55     -e 's/ 25 / y /g' \
56     -e 's/ 26 / z /g' \
57     -e "s/ 27 / ' /g" \
58     -e 's/ 45 / [ /g' \
59     -e 's/ 46 / ] /g' \
60     -e 's/ 55 / , /g' \
61     -e 's/ 56 / . /g' \
62     -e 's/NULL//g' | \
63 tr -d " " >> $CINFILE
64 gcin2tab $CINFILE
65 exit
66 %gen_inp
67 %ename boshiamy
68 %cname 嘸蝦米
69 %selkey 123456789
70 %space_style 1
71 %keyname begin
72 ' 、
73 , ,
74 . .
75 [ 〔
76 ] 〕
77 a A
78 b B
79 c C
80 d D
81 e E
82 f F
83 g G
84 h H
85 i I
86 j J
87 k K
88 l L
89 m M
90 n N
91 o O
92 p P
93 q Q
94 r R
95 s S
96 t T
97 u U
98 v V
99 w W
100 x X
101 y Y
102 z Z
103 %keyname end
104 %chardef begin