feat: vim bindings in the input via CodeMirror 6
- Replace the plain <textarea> with a CodeMirror 6 EditorView that has @replit/codemirror-vim attached. Loaded from esm.sh, so no build step — finrod stays no-bundler. - vim() extension is conditionally omitted on coarse-pointer devices (phones, tablets) where modal editing without a hardware Esc key is unusable and IME composition fights the keymap. - Ctrl-/Cmd-Enter shortcut and the typing-debounce that refreshes the "Hot:" indicator both migrate to CodeMirror's keymap and updateListener APIs respectively. - Editor styled to match the existing .output pane. CHANGELOG: note under [Unreleased].
This commit is contained in:
@@ -7,6 +7,9 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Added
|
||||
- Vim bindings in the input via CodeMirror 6 + `@replit/codemirror-vim` (loaded from esm.sh, no build step). Supports `i`/`Esc`, `hjkl`, word/line motions, `dd`/`yy`/`p`, undo/redo, `/` search, `:` command line. Auto-disabled on touch devices (detected via `(pointer: coarse)`) where modal editing fights the virtual keyboard.
|
||||
|
||||
## [0.1.0] - 2026-06-09
|
||||
|
||||
First release. Stateless translator UI that proxies streaming requests to
|
||||
|
||||
Reference in New Issue
Block a user