Fenrir keyboard layouts
Both Linux console and X11 terminal modes use the TOML layouts in this directory:
- desktop.toml: numeric keypad review, with NumLock off.
- laptop.toml: review chords on the main keyboard.
The Fenrir key is Insert, Super/Windows, or keypad 0 with NumLock off.
Selecting and customizing a layout
Select a layout at launch:
./fenrir --keyboard-layout laptop
./fenrir -x --keyboard-layout /path/to/custom.toml
Or set the startup choice in settings.toml:
[keyboard]
layout = "laptop"
For a named layout, Fenrir searches the regular user's
~/.local/share/stormux/fenrirscreenreader/keyboard/, then
/etc/fenrirscreenreader/keyboard/, then config/keyboard/ beside the binary.
Root searches the system and bundled locations. The first existing layout is
loaded as a complete file; layouts are not merged. Copy a bundled layout as the
starting point for customization. Layout changes apply on the next launch.
Each binding has a label, a key chord, and a command ID:
version = 1
[[bindings]]
name = "Current word"
keys = ["FENRIR", "K"]
command = "current_word"
double_command = "spell_word"
triple_command = "phonetic_word"
This is a minimal example, not a complete replacement layout. Optional double
and triple commands run on successive quick presses of the same chord; a
triple command requires a double command. The default multi-press interval is
200 ms, configured by keyboard.multi_press_timeout_ms.
Put modifiers (FENRIR, CTRL, SHIFT, ALT) before the final key.
Use key names from the bundled layouts, such as SPACE, RIGHT, KP8, and
KPASTERISK. Chords outside the bare review keypad keys require FENRIR.
Unsupported keys, unknown commands, and duplicate chords are rejected.
Validate a custom layout without opening devices:
./fenrir --keyboard-layout /path/to/custom.toml --check-config
Common shortcuts
| Action | Desktop | Laptop |
|---|---|---|
| Previous / current / next line | Keypad 7 / 8 / 9 | Fenrir+U / I / O |
| Previous / current / next word | Keypad 4 / 5 / 6 | Fenrir+J / K / L |
| Previous / current / next character | Keypad 1 / 2 / 3 | Fenrir+M / Comma / Period |
| Read screen | Fenrir+Keypad 5 | Fenrir+Shift+K |
| Follow cursor | Fenrir+Keypad Period | Fenrir+Slash |
| Cycle cursor / table / highlight tracking | Fenrir+Keypad Asterisk | Fenrir+Y |
| Toggle progress tones | Keypad Plus | Fenrir+Shift+P |
| Set reading window; double press to clear | Fenrir+Keypad Slash | Fenrir+Control+8 |
Both layouts use Fenrir+F for settings, Fenrir+H or Fenrir+F1 for the tutorial, and Fenrir+Control+S to save settings. The tutorial describes loaded shortcuts and lets you browse unbound commands.
In table mode, word navigation moves between cells. Numeric tables can use visible headers automatically. Review starts at the first data cell when a recognized table is at or immediately above the application cursor. Fenrir+X selects the current row as headers, overriding automatic selection. Fenrir+Control+Shift+X clears headers and disables automatic selection until table mode is re-entered or the screen session changes. Outside table mode, Fenrir+X places a text-selection mark.
See the user manual for clipboard, reading-region, spellcheck, and menu workflows.