diff --git a/examples/eekboard-inscript/inscript.py b/examples/eekboard-inscript/inscript.py index 47a26d9bae6bf52b6580ae85611aeceb6d19522b..dbe326ea1b9055ebc83c6a62c5038e9557096cc1 100644 --- a/examples/eekboard-inscript/inscript.py +++ b/examples/eekboard-inscript/inscript.py @@ -33,6 +33,36 @@ KEYCODE_TABLE = { MARK_UPPER = '~!@#$%^&*()_+{}|:"<>?' MARK_LOWER = '`1234567890-=[]\\;\',./' +INSCRIPT_MAPS = ( + "as-inscript", + "bn-inscript", + "gu-inscript", + "hi-inscript", + "kn-inscript", + "ml-inscript", + "mr-inscript", + "or-inscript", + "pa-inscript", + "sd-inscript", + "ta-inscript", + "te-inscript", + "kn-inscript2", + "kok-inscript2-deva", + "mai-inscript2", + "ml-inscript2", + "mni-inscript2-beng", + "mni-inscript2-mtei", + "mr-inscript2", + "ne-inscript2-deva", + "or-inscript2", + "pa-inscript2-guru", + "sa-inscript2", + "sat-inscript2-deva", + "sat-inscript2-olck", + "sd-inscript2-deva", + "ta-inscript2", + "te-inscript2") + class MapFile(object): MAPENTRY_PATTERN = re.compile(r'\A\s*\((?:\((.*?)\)|"(.*?)")\s*"(.*?)"\)') diff --git a/examples/eekboard-inscript/main.py b/examples/eekboard-inscript/main.py index 6353267ee8b8994d0a6c8ae065938f2b00fbd498..b96f6dea455f9c23337fa0f20861e4a4f0283ba0 100644 --- a/examples/eekboard-inscript/main.py +++ b/examples/eekboard-inscript/main.py @@ -19,14 +19,25 @@ import inscript import gtk from optparse import OptionParser -import sys, os +import sys, os, os.path, glob parser = OptionParser() parser.add_option("-n", "--name=LANGCODE", dest="langcode", help="Specify language code to LANGCODE", metavar="LANGCODE") +parser.add_option("-l", "--list", dest="list", default=False, + action="store_true", + help="List available language codes") (options, args) = parser.parse_args() +if options.list: + pat = os.path.join(os.getenv("M17N_DIR"), "*.mim") + for fname in sorted(glob.glob(pat)): + mname = os.path.basename(fname[:-4]) + if mname in inscript.INSCRIPT_MAPS: + print mname + exit(0) + if options.langcode is None: print >> sys.stderr, "Specify language code with -n" exit(1)