A (marginally) better on screen keyboard for GNOME 45+ (go to the pre-45 branch for compatibility from gnome 42-44)
Advantages over the default OSK:
- Function, modifier, tab, and arrow key support
- Ability to move around the screen
- More compact layout
Requirements
- GNOME 45 or above
- Wayland (X11 is not working properly)
Demo
Keyboard Demo.webm
Settings Demo.webm
Install
- Visit https://extensions.gnome.org/extension/5949/gjs-osk/
- Confirming that you have Chrome GNOME shell installed on your computer and your browser's GNOME Shell Integration plugin
- Click Install, and accept the prompt
Install from Source
- Head to the releases in the sidebar
- Download
gjsosk@vishram1123_[version].zip
(main
for GNOME version >= 45, pre-45
for GNOME verison <= 44)
- Run
gnome-extensions install /path/to/gjsosk@vishram1123_[version].zip
(replace with appropriate path)
- Log out of GNOME and log back in.
- Click on the keyboard button in the dash bar
Usage
- To drag the keyboard around, click on the move icon in the bottom right, then drag the keyboard around the screen. To get the full keyboard back, press the move icon again.
- The keyboard will snap to the corners, edges, and center of the screen.
- To change properties about the keyboard, open up the "Extensions" application, and click on "Settings" under this extension to get a list of changeable properties
- Close the settings dialog to save any modified settings
- To type special characters, open GNOME settings, and turn on "Compose Key" under the Keyboard submenu. Choose a modifier (preferably right alt), and use the key combinations listed here to type special characters
- To change the keyboard layout, change the layout in Gnome's Control Center
- To add typing prediction, add "Typing Booster" as an input source (in GNOME's settings), and keep it chosen as the primary input source (extended guide here).
- Note that this will cause predictive text to be present even without the OSK open, and the input language for Typing Booster's predictions will have to be set in Typing Booster's settings
- To open the keyboard from the command line (or with a shortcut), run the command
dconf write /org/gnome/shell/extensions/gjsosk/indicator/opened true
which will open the keyboard
Known Problems/Issues and Intended Features (Would appreciate solutions about how to fix):
- 100% width or height doesn't take up the full monitor width or height (minus 25 px on either side). Instead, it is 1 or 2 px smaller, depending on the monitor size
Help
- If you find any bugs, or if you have any suggestions, please open an issue or submit a pull request. Thanks!
Keyboard Layouts
- As of recently, all keyboard layouts and variants (available through localectl) have been added to GJS-OSK. Please report on the state of keyboard layouts as correct/incorrect in issue #48, and I will try to fix them promptly.
- To generate a single keyboard layout, install
xkbcommon
through pip
and run genKeyMap.py
with layout+variant
as the argument (pip install xkbcommon
then python genKeyMap.py de+dvorak
for example)
Help in this area is greatly appreciated!