I made a keyboard and Lexical Model, copied the two packages to my Android phone, downloaded Keyman from the Play Store, loaded both packages. The keyboard works, ( but predictive text is still in English. Here are the details:
I followed the instructions to make a Lexical Model for the Rossel language of Papua New Guinea (YLE), along with a keyboard for the special characters, using Keyman Developer 15.0.267. The phone is a Samsung Galaxy S7, running Android 8.0.0. The version of Keyman that I just downloaded from the Play Store is also 15.0.267. The TSV file containing the wordlist has 4247 entries. When I did Build All in the Developer, I got green messages for success.
When I was setting up Keyman on the phone, I went through the steps, as I had read about in the documentation, and loaded both the keyboard file and the dictionary file from the SD card in my phone, where they had synchronized with Resilio Sync from my Macbook. (I run Windows 10 in a virtual machine over VirtualBox, and thatâs how I could run Keyman Developer.)
Is there another step that I need to do so that the predictions will come from the Rossel dictionary instead of from the English dictionary?
The link between the keyboard and the lexical model is the language tag (BCP 47 code), which is âyleâ in this case. The language tag is specified in the .kps file (the âPackagingâ source file used to make the .kmp package).
For the keyboard package, use the âKeyboardsâ tab on the left. For the lexical model package, use the âLexical Modelsâ tab on the left.
If those packages donât have a language tag in common, then the keyboard canât use the lexical model.
If you find a language tag match, then the problem is elsewhere!
Thanks, @drowe , for that suggestion.
I looked in the android app and couldnât find any tabs on the left, so I guessed you meant inside Keyman Developer, and then I saw them.
I opened the .kps file for the keyboard (rossel_u_1_5_colon.kps) and clicked on the Keyboard tab on the left and saw âyleâ in the Languages box:
Then I opened the kps file for the Lexical Model (jim_henderson.yle.rossel_yle.model.kps), clicked Lexical Model and saw âyleâ again in the Languages box:
You might find the âTest on Webâ functionality in Keyman Developer is very helpful here. It allows you to test your keyboard and model together on your local machine in a web browser before you deploy to a phone.
You can also use it to deploy packages pretty easily to your phone, avoiding the whole Resilio Sync juggle.
In terms of the issue you are experiencing on your Android device, if you are getting English predictions, that suggests your keyboard was installed with âenâ and not âyleâ. Make sure you have installed the packaged keyboard with the correct code.
Also, does the model show as installed in Keyman on your Android device? Youâd see it listed under Settings / Installed languages / Rossel: