Experimental code sample of a Myanmar composing keyboard with conversion from Zawgyi font encoding to Unicode.
This is not an official Google product.
- On-screen ("soft") keyboard for Burmese following Myanmar3 layout.
- Key character map for physical keyboard, overlaying Myanmar3 layout onto a QWERTY keyboard.
- Incremental composition of grapheme clusters.
- Automatic correction of non-standard input. One example of many: typing သ (101E) followed by ြ (103C) gets corrected to ဩ (1029).
- Suggestions for completing grapheme clusters. For example, after typing ဖ (1016), grapheme clusters can be selected from a list of frequent completions, starting with ဖြ ဖွဲ့ ဖြူ.
- Stand-alone library for composing grapheme clusters and serializing them in canonical storage order.
- The grapheme composer library is configurable: decide at construction time whether ေ (1031) must be typed before or after a letter (in the sample keyboard, it must be typed before a letter), whether ြ (103C) must be typed before or after a letter, etc.
- Soft key for conversion from Zawgyi. Converts Android clipboard contents from Zawgyi to Unicode and inserts the resulting Unicode text.
- Physical keyboard shortcut (Ctrl-Shift-V) for conversion from Zawgyi.
- Stand-alone Zawgyi-to-Unicode conversion Java library and command-line utility.
Building the code sample currently requires Bazel. Support for Gradle may be added later. The Android SDK command line tools need to be installed under /usr/local/android-sdk
(symlink is fine), together with build-tools and android-24 platform. Details can be found in .travis.yml.
The build has been tested on Darwin and GNU/Linux (including with Travis CI).
All files are licensed under an Apache License, Version 2.0.