Repository navigation
Releases: muntedcrocodile/universal_input
Release list
Universal Input v1.1.1
Universal Input 1.1.1 adds configurable quick inserts with YAML settings and restores word-selection shortcuts by moving history navigation to Ctrl+R/P.
Changes
- Define the quick-insert toolbar and hotkeys using an ordered
quick_insertlist, with custom labels, hidden buttons, inline text, UTF-8 files, command output, cursor offsets, and selected placeholders. Retain the interactive table picker and single-step undo. Commands have runtime/output limits and discard results when the destination changes. #7 - Move settings to
config.yaml, automatically migrating existing JSON settings and quick-insert shortcuts while retaining the original JSON. Preserve YAML comments during startup and normal font-size saves. History remains JSON. #7 - Use Ctrl+R for Recents and Ctrl+P for Clipboard by default, freeing Ctrl+Shift+Left/Right for word selection. #8
- Fix the quick-insert toolbar's dark-theme background and keep table insertion guides visible during delayed syntax-highlighting refreshes. Expand configuration examples and usage documentation.
Updating
This is a source release for Linux/X11. In an existing checkout:
git switch main
git pull --ff-only
./scripts/install-deps
./scripts/install-servicePyYAML is now required; the dependency installer provides Debian's python3-yaml package. Existing JSON settings migrate automatically to YAML, and YAML takes precedence when both files exist.
Existing saved shortcuts are preserved. To adopt the new history shortcuts, set keybindings.history_left to Ctrl+R and keybindings.history_right to Ctrl+P in config.yaml, or remove those overrides to use the defaults. Restart universal-input.service after editing settings.
Validation
./scripts/test: 309 passed, including isolated X11 and D-Bus desktop tests. The merged code matches the tested tree. Release metadata and the bundled Markdown template were verified; the live user service was restarted and confirmed active.
See the full changelog, usage guide, and changes since v1.1.0.
Universal Input v1.1.0
Universal Input 1.1.0 brings together PRs #1–#6: offline writing assistance, richer Markdown editing, larger tables, and desktop capture/focus fixes.
Changes
- Offline word predictions: accept grey inline suggestions with Tab. Includes an optional local model installer and an
automatic_popupsetting for manual-only opening. #1 - Reliable textbox capture: read nested browser textbox content through Copy fallback and wait for shortcut release before capture. #2
- Markdown editing: insert a testing template, preserve cursor and selection across Raw/Rendered mode switches, highlight rendered code, and display nested quote bars. #3
- Writing assistance: local English autocorrect, basic grammar suggestions, independent settings, and personal dictionary word removal. #4
- Focus and accessibility: save and dismiss drafts when focus moves away, preserve authored Markdown line breaks, and improve accessibility startup and Copy fallback diagnostics. #5
- Custom table sizes: enter dimensions beyond the picker grid, up to 1,000 rows, 100 columns, and 10,000 cells, with cancellation and undo. #6
See the full changelog and usage guide.
Updating
This is a source release for Linux/X11, following v1.0.0. In an existing checkout:
git switch main
git pull --ff-only
./scripts/install-serviceFor optional offline predictions, run ./scripts/install-completion, then restart universal-input.service. Existing configuration values are retained and missing settings receive defaults. Autocorrect and basic grammar checking default to enabled; set autocorrect or grammar_check to false to disable either. Set automatic_popup to false to open only with Ctrl+Space or the tray.
Wayland and cross-Qube integration remain unsupported. Grammar assistance uses limited offline English rules.
Validation
GSETTINGS_BACKEND=memory ./scripts/test -q: 254 passed, including isolated X11 and D-Bus desktop tests. Release metadata and the bundled Markdown template were verified, and the live user service was restarted and confirmed active.
Full comparison: v1.0.0...v1.1.0
Universal Input v1.0.0
The first public release of Universal Input: a floating, keyboard-driven draft editor for Linux/X11, including an individual Qubes OS Qube.
Select an accessible text field or press Ctrl+Space, edit its full contents in Raw Markdown or Rendered view, and press Ctrl+Enter to insert. The original field stays unchanged while you draft.
- Frameless, translucent editor that bypasses tiling window managers.
- Markdown highlighting, editable code-language headers, tables, task lists, links, and formatting shortcuts.
- Local spelling suggestions and a persistent personal dictionary.
- Separate recent-draft and clipboard histories, with configurable retention.
- Configurable keybindings, window dimensions, font size, and indentation.
- Line numbers, whole-line selection, go-to-line, and numbered history insertion.
- A systemd user service, X11 login hook, and installation scripts.
See the README for installation and screenshots, and the usage guide for all shortcuts and settings.
This is an early release, tested on Debian 13. Wayland and cross-Qube integration are not supported. Automatic detection depends on AT-SPI; the manual fallback requires normal Select All, Copy, and Paste shortcuts. Existing complex rich documents are not imported losslessly. Histories are stored locally and unencrypted.
Licensed under GNU AGPL version 3 or later (AGPL-3.0-or-later). This is a source release; install dependencies with ./scripts/install-deps and enable automatic startup with ./scripts/install-service.
Validation: 67 passing tests, isolated X11 desktop integration tests, systemd unit validation, and a live service startup on the development Qube.