Support "U+XXXX" format as input
diff --git a/pyotlss.py b/pyotlss.py
index 69952bd..1d3b64f 100755
--- a/pyotlss.py
+++ b/pyotlss.py
@@ -1207,7 +1207,7 @@
self.log (tag, "NOT subset; don't know how to subset")
glyphOrder = self.font.getGlyphOrder()
- #print [glyphOrder.index (g) for g in self.glyphs_all]
+ #print sorted(glyphOrder.index (g) for g in self.glyphs_all)
glyphOrder = [g for g in glyphOrder if g in self.glyphs_all]
self.font.setGlyphOrder (glyphOrder)
self.font._buildReverseGlyphOrderDict ()
@@ -1314,7 +1314,7 @@
# glyph names. But it currently doesn't provide such a thing.
#
if not options.glyph_names \
- and all (any (g.startswith (p) for p in ['gid', 'glyph', 'uni']) \
+ and all (any (g.startswith (p) for p in ['gid', 'glyph', 'uni', 'U+']) \
for g in args):
post = fontTools.ttLib.getTableClass('post')
saved = post.decode_format_2_0
@@ -1334,8 +1334,12 @@
if g in names:
glyphs.append (g)
continue
- if g.startswith ('uni') and len (g) > 3:
- u = int (g[3:], 16)
+ if g.startswith ('uni') or g.startswith ('U+'):
+ if g.startswith ('uni') and len (g) > 3:
+ g = g[3:]
+ elif g.startswith ('U+') and len (g) > 2:
+ g = g[2:]
+ u = int (g, 16)
unicodes.append (u)
continue
if g.startswith ('gid') or g.startswith ('glyph'):