Skip to content

A fork of LatinIME (by Google for Android), targeting marginalised languages that also deserve first-class status on mobile operating systems.

License

Notifications You must be signed in to change notification settings

divvun/giellakbd-android

Repository files navigation

giellakbd-android

A fork of LatinIME (by Google for Android), targeting marginalised languages that also deserve first-class status on mobile operating systems.

Note. This project is the place where all the code is kept. It also has som basic configuration, but crucially - you can't open this project in Android Studio and run it (yes, you can. In a way, but it's no good. Look. Stop interrupting me and pay attention).

Backgound

On one hand, you have all the linguists and other related folks at UiT working on getting spellers and suggestions and reasonable keyboard layouts. They work in one repo per language.

On the other hand you have the android app that's supposed to be one single app that ships many languages.

The linguists don't only make the android app, they make ios, mac, windows etc. They shouldn't have to worry about android stores etc. To facilitate this, they create a yaml layout such as this

If you wanna build an android app though, that won't help you. You need layout xml:s. Introducing - kbdgen. Kbdgen downloads layout files. It does it by cloning this repo and then meta-programming on some layouts and xmls.

To compile the problem slightly, we don't really want to distribute one keyboard per language. Hence, we combine multiple languages per keyboard. There are two repos for this. https://github.com/divvun/divvun-dev-keyboard and https://github.com/divvun/divvun-keyboard . Right? Right.

Building

You're gonna need kbdgen. You can download it from pahkat. Technically.

$ wget https://pahkat.uit.no/devtools/download/kbdgen\?channel\=nightly\&platform\=macos

The following will download divvun-dev-keyboard and create you a runnable android project.

cd source/divvun
git clone [email protected]:divvun/kbdgen.git
git clone [email protected]:divvun/divvun-dev-keyboard.git 
cd kbdgen
cargo run -- fetch -b /Users/srdkvr/source/divvun/divvun-dev-keyboard/divvun-dev.kbdgen #fetches deps since divvun-dev-keyboard is shallow
cargo run -- target --bundle-path /Users/srdkvr/source/divvun/divvun-dev-keyboard/divvun-dev.kbdgen --output-path ~/source/divvun/android_keyboard android build

You might need

$ brew install imagemagick@6
$ echo 'export PATH="/opt/homebrew/opt/imagemagick@6/bin:$PATH"' >> ~/.zshrc

If you got this right, you can open ~/source/divvun/android_keyboard in Android Studio and work on your project. If you make any code-changes, make sure to upload them in this repo and this repo alone. Don't upload all the files kbdgen put in this directory for you.

License

Apache 2 license. See LICENSE.

About

A fork of LatinIME (by Google for Android), targeting marginalised languages that also deserve first-class status on mobile operating systems.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published