diff options
| author | Peng Huang <shawn.p.huang@gmail.com> | 2010-05-16 12:42:22 +0800 |
|---|---|---|
| committer | Peng Huang <shawn.p.huang@gmail.com> | 2010-05-16 12:42:22 +0800 |
| commit | 40b35c83033ba26a661731f44405280ed91bd48a (patch) | |
| tree | 6568dedb11c8661d18562965d7ba408d73851b2f /scripts | |
| parent | 3cd7a8f7f2741d966fa9bea2dcaced4376c2e277 (diff) | |
| download | ibus-libpinyin-40b35c83033ba26a661731f44405280ed91bd48a.tar.gz ibus-libpinyin-40b35c83033ba26a661731f44405280ed91bd48a.tar.xz ibus-libpinyin-40b35c83033ba26a661731f44405280ed91bd48a.zip | |
Add PunctTable.h
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/genpuncttable.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/scripts/genpuncttable.py b/scripts/genpuncttable.py new file mode 100644 index 0000000..b852ec6 --- /dev/null +++ b/scripts/genpuncttable.py @@ -0,0 +1,32 @@ +# vim:set et sts=4: +# -*- coding: utf-8 -*- + +from punct import * + +def tocstr(s): + s = s.replace('\\', '\\\\') + s = s.replace('"', '\\"') + return '"%s"' % s + +def gen_table(): + array = [] + i = 0 + print 'static const gchar * const' + print 'puncts[] = {' + for k, vs in punct_map: + k = tocstr(k) + vs = map(tocstr, vs) + array.append((i, k)) + line = ' %s, %s, NULL,' % (k, ", ".join(vs)) + print line.encode("utf8") + i += len(vs) + 2 + print '};' + print + print 'static const gchar * const * const' + print 'punct_table[] = {' + for i, k in array: + print ' &puncts[%d], // %s' % (i, k) + print '};' + +if __name__ == "__main__": + gen_table() |
