Files
owlen/crates/owlen-tui/keymap.toml
vikingowl 2d45406982 feat(keymap): rebuild modal binding registry
Acceptance Criteria:\n- Declarative keymap sequences replace pending_key/pending_focus_chord logic.\n- :keymap show streams the active binding table and bindings export reflects new schema.\n- Vim/Emacs default keymaps resolve multi-step chords via the registry.

Test Notes:\n- cargo test -p owlen-tui
2025-10-25 09:12:14 +02:00

153 lines
2.6 KiB
TOML

[[binding]]
modes = ["normal"]
sequence = ["m"]
command = "model.open_all"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+Shift+L"]
command = "model.open_local"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+Shift+C"]
command = "model.open_cloud"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+Shift+P"]
command = "model.open_available"
[[binding]]
modes = ["normal", "editing"]
sequence = ["Ctrl+P"]
command = "palette.open"
[[binding]]
modes = ["normal"]
sequence = ["Tab"]
command = "focus.next"
[[binding]]
modes = ["normal"]
sequence = ["Shift+Tab"]
command = "focus.prev"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+1"]
command = "focus.files"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+2"]
command = "focus.chat"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+3"]
command = "focus.code"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+4"]
command = "focus.thinking"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+5"]
command = "focus.input"
[[binding]]
modes = ["editing"]
sequence = ["Enter"]
command = "composer.submit"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+;"]
command = "mode.command"
[[binding]]
modes = ["normal", "editing", "visual", "command", "help"]
sequence = ["F12"]
command = "debug.toggle"
[[binding]]
modes = ["normal"]
sequence = ["g", "g"]
command = "navigate.top"
[[binding]]
modes = ["normal"]
sequence = ["g", "t"]
command = "files.focus_expand"
[[binding]]
modes = ["normal"]
sequence = ["g", "T"]
command = "files.focus_expand"
[[binding]]
modes = ["normal"]
sequence = ["g", "h"]
command = "files.toggle_hidden"
[[binding]]
modes = ["normal"]
sequence = ["g", "H"]
command = "files.toggle_hidden"
[[binding]]
modes = ["normal"]
sequence = ["d", "d"]
command = "input.clear"
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+W", "s"]
command = "workspace.split_horizontal"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+W", "S"]
command = "workspace.split_horizontal"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+W", "v"]
command = "workspace.split_vertical"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+W", "V"]
command = "workspace.split_vertical"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+K", "Left"]
command = "workspace.focus_left"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+K", "Right"]
command = "workspace.focus_right"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+K", "Up"]
command = "workspace.focus_up"
timeout_ms = 1200
[[binding]]
modes = ["normal"]
sequence = ["Ctrl+K", "Down"]
command = "workspace.focus_down"
timeout_ms = 1200