Skip to content


Subversion checkout URL

You can clone with
Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

34 lines (25 sloc) 1.526 kb
The keyboard app uses large dictionary files for auto correction and
word suggestions. If we include all the dictionaries we have, our
builds become too large. So the keyboard is configured at build time to
include only the IMEs, layouts, and dictionaries we need for a
particular build.
Dictionaries files currently only apply for the latin IME and live in
js/imes/latin/dictionaries, along with the source files (in XML) in
Android format. There is a Makefile present to convert the source files
into Firefox OS dictionaries.
At build time we only package the IMEs and dictionaries required by the
specified keyboard layouts.
We also configure the manifest.webapp file at build time, to add entry
points for each layout.
Configuration is done with the GAIA_KEYBOARD_LAYOUTS environment
variable, and there is a default value defined in the Makefile.
By default, all dictionaries associated to layouts included in
GAIA_KEYBOARD_LAYOUTS will be preloaded into the build. You may instead
preload only a few dictionaries and have all other dictionaries offered
to user as a download, by only setting the dictionaries of the layouts
you want to include with GAIA_KEYBOARD_PRELOAD_DICT_LAYOUTS variable.
Downloadable dictionaries only works with Latin IME for now.
Layouts with non-Latin IMEs are always preloaded with their dictionaries.
The build happens in gaia/build_stage.
The actual configuration code is in build/layout_configurator.js.
The build tests can offer some clue on configuration and the resulting build.
Jump to Line
Something went wrong with that request. Please try again.