Input methods
Introduction
There are, in theory, several ways to input text on pmOS already. These are:
- Matchbox-keyboard - a lightweight on-screen keyboard for X11.
- QT virtual keyboard, used in Plasma Mobile.
- Onboard - an on-screen keyboard for touch screen or for mobility impaired users.
- Hardware keyboards, e.g. on devices such as the Nokia N900 or the Droid 4.
- Bluetooth and other wireless keyboards (if support exists for Bluetooth devices).
This page intends to track these as well as other, novel, input methods.
Conventional on-screen keyboards
Onboard
Ubuntu used to come with Onboard, which is actually designed not for tablets, but as an assistive technology in conjunction with an external pointing device.
Installation
Onboard was not available on stable releases up to v21.06 (inlculding). It's avaiable on edge and will be part of future stable releases as it was moved from testing to community in Alpine Linux between v3.14 and v3.15.
It can be installed on stable releases v21.06 and earlier by repository pinning (wiki). However, this can lead to package version conflicts. If you still want to do it:
- sudo vi /etc/apk/repositories
add:
@edge http://dl-cdn.alpinelinux.org/alpine/edge/main @testing http://dl-cdn.alpinelinux.org/alpine/edge/testing
- sudo apk update
- sudo apk add onboard@testing python3@edge py3-cairo@edge py3-dbus@edge py3-gobject3@edge
If you later on upgrade your distribution to a new stable release, remove the pinning entries in /etc/apk/repositories and reinstall the mentioned packages without pinnig add-on.
Settings
Notable options in the settings:
- General
- check Auto-show when editing text
- check Show floating icon when Onboard is hidden
- uncheck Show tooltips
- uncheck Show status icon
- Window
- check Dock to screen edge
- Layout
- Small: For small sized devices
- Compact: For medium sized devices
- Phone: Works well for login screen and unlocking screen
- Theme
- e.g. Nightshade
Command line options
For e.g. LightDM and xfce4-screensaver, command onboard -e -l Phone
can be used. Option -e
embeds the keyboard. Option -l
defines the layout to be used. For LightDM configuration see (tbd: create page and set link). For xfce4-screensaver, the keyboard command can be set in the screensaver settings.
machbox-keyboard
This is available on stable releases.
For usage in LightDM or xfce4-screensaver, use command matchbox-keyboard --xid
for embedding.
Maliit
Maliit is a cross-platform text-input system based on client-server model. Input methods are supported by plugins, which means it is quite extensible.
Other
Other options might include:
- corekeyboard, available on stable releases.
- GOK (The Gnome on-screen keyboard), which apparently has won awards.
- Florence, a virtual keyboard for X11.
- xvkbd, a virtual keyboard for X11, with word completion and a few other features.
Hardware keyboards
Braille
The Orbit Writer is an economical, portable, Bluetooth-enabled, Perkins-style keyboard. It is optimized for 6-dot braille and has a number of additional buttons.
Chorded
GKOS is an implementation of a chorded keyboard that is semi-open. A chord for a musician is a combination of three or more notes that create a new note; the chorded keyboard is analogous to this in that key presses are created by combinations of a few key presses, albeit the GKOS method only uses single button presses or a combination of two presses.
Unfortunately, GKOS's apps are not open-source. However, the standard itself is straightforward to implement either in hardware or software, and is entirely suitable for handhelds and PDAs.
According to its website, GKOS has been superseded by ComboKey. The ComboKey seems to apply some of the ideas behind the GKOS system to a user using the device single-handedly in a tight area.
Folding
Jelly Comb
The Jelly Comb Foldable Bluetooth Keyboard B003 is an economical, portable, folding keyboard with a built-in touchpad. It supports both Bluetooth and USB.
Handwriting/pointer-based systems
Graffiti and Quikwriting
Graffiti was the single-stroke handwriting system for Palm OS. It was the subject of a lawsuit from Xerox, which Palm lost.
Quikwriting was a research project that produced an alternative to the Graffiti method of text input. There is an open-source implementation called QWO. It is a little awkward to use, but it does work rather well, once one learns. See https://mrl.nyu.edu/~perlin/demos/quikwriting.html.
Other relevant links regarding Graffitti:
Cellwriter
Similarly to Quikwriting, Cellwriter is the product of a research project. It is an accomplished handwriting system:
Dasher
Dasher is a keyboard designed for when one only has a single pointing device and one wants to work quickly. To that extent it may be especially convenient for devices with styluses. It is free software and is designed also for accessibility to the impaired.
Miscellaneous
- GNOME's design page concerning on-screen keyboards has some of these and a few other items, not all of them freely-licensed.
- Literki keyboard, a keyboard for X11 that overlays over the current window, which may be convenient for handhelds, but may not be very accessible.
- Enscrebi input method, similar to CellWriter.
- GridPad input method, yet another grid-based handwriting system.
- OpenMoko Wiki's overview of input methods in a wish-list format.
- Vogel and Baudisch, 2007 - 'Shift: A Technique for Operating Pen-Based Interfaces Using Touch'.
- 'Keyboard Debate' article on OpenMoko Wiki