keyboard
keyboard copied to clipboard
How to add alternative layouts (e.g. Dvorak or equivalent)
I’d like to add the Bépo (Dvorak-like for French) keyboard layout to this project. Looking quickly at the source code, it seems there is one keyboard layout per language/locale.
Yes I think you would need to add a language variant (fr_bepo ?) for it right now.
It would be nice to have the layout more flexible instead of "hard coded" into QML to make it easier. But we do not have that right now.
@jpetersen I've just had a look at the QML files and couldn't actually find where the language specific layouts are defined. Could you point me at some files to look at? (I was gonna just change the layouts and build a variant with dvorak for myself)
You can find, for example, the French layout at plugins/fr/qml/Keyboard_fr.qml
.
The Lomiri keyboard (continuation of ubuntu-keyboard project) has an en@dv
abstract layout. You can see how it's added in #60 where I've started merging that code into maliit keyboard, and add a fr@bepo
layout.
I'm working on a Colemak (en@co
) abstract layout. I'm trying to go by the Dvorak merge commit https://github.com/maliit/keyboard/pull/60/commits/0b1ffc431d2c0c37eadfd7c7a36c446363a93f44 in #60 but that shows some extra files that aren't in the current repo. My fork of current master is missing a debian
folder, plugins/en@dv/[email protected]
, plugins/en@dv/qml/qml.pro
, plugins/en@dv/src/src.pro
, and plugins/plugins.pro
. Is that correct? Looks like there was maybe an architectural change to how plugins work somewhere along the way, but I'm not having any luck finding the matching commit history to confirm that.
Is that correct?
Yes. The lomiri-keyboard source still uses qmake (hence the .pro
files), while maliit-keyboard was converged to CMake some time ago.