Varnam Support for Indic Keyboard
Fixes smc/smc-project#47 (closed)
A rough sketch of how this is going to be implemented : smc/smc-project#47 (comment 415429710)
- New varnam keyboard identifiers will start with
varnam-
followed by the varnam scheme/symbol identifier. Eg:varnam-ml
- All supported varnam languages will be defined in app (currently done in
VarnamIndicKeyboard.java
) :
public static final HashMap<String, Scheme> schemes = new HashMap<String, Scheme>() {{
put("varnam-ml", new Scheme("ml", "ml", "Malayalam", "", "0.1", "Navaneeth KN"));
put("varnam-ta", new Scheme("ta", "ta", "Tamil", "", "0.1", "Navaneeth KN/Kumaran Venkataraman"));
}};
@jishnu7 From where does the keyboard name in spacebar come from ?
- The files required for the varnam keyboards (called VSTs - Varnam Symbol Table) won't be included, because some of them are considerably huge in size (Hindi is 7MB, Sanskrit is 13MB, Bangla is 11MB, Marathi is 18MB etc.)
-
@jishnu7 Need to know if there's a way to add a new keyboard layout if only the VST exist, like add the new layout if VST is available. A dynamic addition of layouts to
method.xml
.
-
@jishnu7 Need to know if there's a way to add a new keyboard layout if only the VST exist, like add the new layout if VST is available. A dynamic addition of layouts to
- There will be a new folder for storing varnam related files. This will be in a user accessible place. So users can copy-paste VSTs or learning files as they want. (A learning file is a SQLite database where varnam stores its learnings of words, patterns etc.). This location is at
Internal Storage/Android/data/org.smc.inputmethod.indic/files/varnam
ml/ ml.vst ml.vst.learnings ... ta/ ta.vst ta.vst.learnings ...
Varnam in Settings
- There will be a new "Varnam" section in app settings where users can download the VSTs they need.
- It will also have the option to download packs and import new words from Varnam server.
- Most features of Varnam Desktop app will be here such as :
- Download a new language (VST)
- Import words from file
- Download language packs and import words from them
Try out the desktop app for more understanding.
Edited by Subin Siby