keybinds section of tui.json (or tui.jsonc).
- Global:
~/.config/symbiotic/tui.json - Project:
tui.jsonat the root of your project (or any directory between your working directory and the git root), or.symbiotic/tui.json - Custom path: set the
SYMBIOTIC_TUI_CONFIGenvironment variable
If you still have
keybinds in symbiotic.json, they are moved automatically to a tui.json next to it on startup (a .tui-migration.bak backup is kept).tui.json
Leader key
Symbiotic Code uses aleader key for most keybinds. This avoids conflicts in your terminal.
By default, ctrl+x is the leader key and most actions require you to first press the leader key and then the shortcut. For example, to start a new session you first press ctrl+x and then press n. The leader key stays active for 2 seconds.
You don’t need to use a leader key for your keybinds but we recommend doing so.
Keybind syntax
- Combine modifiers and a key with
+, for examplectrl+shift+a. Supported modifiers arectrl,alt(alsometaoroption),shift, andsuper. - Use
<leader>to reference the leader key, for example<leader>n. - Separate alternative bindings with commas, for example
"pageup,ctrl+alt+b".
session_delete and session_pin_toggle in the session list, stash_delete in the stash dialog, and model_provider_list and model_favorite_toggle in the model list. That’s why they can share keys with other actions.
Disable keybind
You can disable a keybind by adding the key totui.json with a value of “none”.
tui.json
Shift+Enter
Some terminals don’t send modifier keys with Enter by default. You may need to configure your terminal to sendShift+Enter as an escape sequence.
Windows Terminal
Open yoursettings.json at:
actions array:
keybindings array: