[emoji] Port generator to packtab
diff --git a/src/gen-emoji-table.py b/src/gen-emoji-table.py
index 9afe747..22da228 100755
--- a/src/gen-emoji-table.py
+++ b/src/gen-emoji-table.py
@@ -4,6 +4,7 @@
import sys
import os.path
from collections import OrderedDict
+import packTab
if len (sys.argv) != 2:
print("usage: ./gen-emoji-table.py emoji-data.txt", file=sys.stderr)
@@ -54,12 +55,17 @@
for typ,s in ranges.items():
if typ != "Extended_Pictographic": continue
- print()
- print("static const struct hb_unicode_range_t _hb_unicode_emoji_%s_table[] =" % typ)
- print("{")
- for pair in sorted(s):
- print(" {0x%04X, 0x%04X}," % pair)
- print("};")
+
+ arr = dict()
+ for start,end in s:
+ for i in range(start,end):
+ arr[i] = 1
+
+ sol = packTab.pack_table(arr, 0, compression=3)
+ code = packTab.Code('_hb_emoji')
+ sol.genCode(code, 'is_'+typ)
+ code.print_c(linkage='static inline')
+ print()
print ()
print ("#endif /* HB_UNICODE_EMOJI_TABLE_HH */")