da673639ca
We had various requests to improve existing OSK layouts, but haven't accepted them so far as any changes would be overridden when regenerating the layouts. However as the upstream layouts at http://www.unicode.org are extremely slow to update(*), we shouldn't block all improvements. So instead of letting the update script override all existing layouts, just make it import new layouts. (*) not their fault, as the android layouts are a downstream to Google https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1136 |
||
---|---|---|
.. | ||
cldr2json | ||
dbus-interfaces | ||
osk-layouts | ||
theme | ||
00_org.gnome.shell.gschema.override | ||
50-gnome-shell-system.xml | ||
emoji.json | ||
gnome-shell-dbus-interfaces.gresource.xml | ||
gnome-shell-disable-extensions.service | ||
gnome-shell-osk-layouts.gresource.xml | ||
gnome-shell-overrides-migration.desktop.in | ||
gnome-shell-overrides.convert | ||
gnome-shell-theme.gresource.xml | ||
gnome-shell-wayland.service.in | ||
gnome-shell-wayland.target | ||
gnome-shell-x11.service.in | ||
gnome-shell-x11.target | ||
gnome-shell.portal | ||
meson.build | ||
org.gnome.Shell.desktop.in.in | ||
org.gnome.shell.gschema.xml.in | ||
org.gnome.Shell.PortalHelper.desktop.in.in | ||
org.gnome.Shell.PortalHelper.service.in | ||
perf-background.xml.in | ||
README.osk-layouts | ||
update-osk-layouts.sh |
Gnome-shell OSK layouts are extracted from CLDR layout definitions: https://www.unicode.org/cldr/charts/latest/keyboards/layouts/index.html Updating these involves several steps: 1) Downloading and unzipping the tarball found at: http://www.unicode.org/Public/cldr/latest/keyboards.zip This file contains XML files describing the keyboard layouts. 2) Cloning the cldr2json script at: git://repo.or.cz/cldr2json.git It will be used to convert the XML files into JSON that can be directly consumed by gnome-shell. 3) Running the script to produce the files: ./cldr2json <input-directory> <output-directory> We shall usually use the "android" folder, since that's most complete, and similar to our UI and target sizes. And the target directory must be data/osk-layouts in this repository. 4) Modify gnome-shell-osk-layouts.gresource.xml to include the files 5) Do git add on the updated/new files, and git commit. Or alternatively: 1) Run update-osk-layouts.sh 2) Do git add and git commit