aboutsummaryrefslogtreecommitdiff
path: root/docs/next/website
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@hey.com>2026-08-09 18:10:52 +0200
committerGitHub <noreply@github.com>2026-08-09 19:10:52 +0300
commit4e31084495120674a0cf403a27d3d91c5efb34fe (patch)
tree5c47ba87d2cd7fe0bb9a02a360de38c79d8a9d5c /docs/next/website
parentca1af383a82733608a0563fce2252058b478498c (diff)
feat: add direct pane resize keybindings (#2558)
Diffstat (limited to 'docs/next/website')
-rw-r--r--docs/next/website/src/content/docs/configuration.mdx10
-rw-r--r--docs/next/website/src/data/config-reference.json24
2 files changed, 33 insertions, 1 deletions
diff --git a/docs/next/website/src/content/docs/configuration.mdx b/docs/next/website/src/content/docs/configuration.mdx
index ce4db4e2..a170613f 100644
--- a/docs/next/website/src/content/docs/configuration.mdx
+++ b/docs/next/website/src/content/docs/configuration.mdx
@@ -137,7 +137,15 @@ A binding may also be an array when one action needs multiple shortcuts:
next_tab = ["prefix+n", "ctrl+alt+]"]
```
-Optional actions are unset by default. Bind them with `prefix+` for prefix-mode behavior, or use an explicit modified chord when you intentionally want a direct shortcut.
+Optional actions are unset by default. Bind them with `prefix+` for prefix-mode behavior, or use an explicit modified chord when you intentionally want a direct shortcut. For example, tmux-style one-keystroke pane resizing without entering resize mode:
+
+```toml
+[keys]
+resize_pane_left = "ctrl+shift+alt+left"
+resize_pane_down = "ctrl+shift+alt+down"
+resize_pane_up = "ctrl+shift+alt+up"
+resize_pane_right = "ctrl+shift+alt+right"
+```
Key strings accept plain keys, modifier combinations such as `ctrl+a`, `shift+n`, `alt+1`, `cmd+k`, and special keys such as `enter`, `tab`, `esc`, `left`, `right`, `up`, and `down`. Named punctuation such as `minus`, `comma`, `ampersand`, `plus`, and `backtick` is also accepted. Plain direct printable keys such as `n` are unsafe because they intercept typing; use `prefix+n` unless you intentionally want a direct binding. The `navigate_workspace_*` and `navigate_pane_*` fields are navigate-mode-only and may use plain keys such as `j` or `k`; they must not use `prefix+`, `esc`, `enter`, `tab`, `shift+tab`, `left`, `right`, or unmodified `1` through `9`. Left and right arrows are permanent aliases for pane-left and pane-right navigation. These navigate-mode shortcuts are independent from general action bindings such as `focus_pane_down = "prefix+j"`; when both use the same key, the navigate-mode shortcut wins while navigate mode is open. Alt, Cmd/Super, and punctuation with modifiers depend on your terminal and tmux settings.
diff --git a/docs/next/website/src/data/config-reference.json b/docs/next/website/src/data/config-reference.json
index a4732ffc..2147192d 100644
--- a/docs/next/website/src/data/config-reference.json
+++ b/docs/next/website/src/data/config-reference.json
@@ -524,6 +524,30 @@
"description": "Enter resize mode."
},
{
+ "key": "keys.resize_pane_left",
+ "type": "keybinding",
+ "default": "unset",
+ "description": "Resize the focused pane toward the left. Unset by default."
+ },
+ {
+ "key": "keys.resize_pane_down",
+ "type": "keybinding",
+ "default": "unset",
+ "description": "Resize the focused pane downward. Unset by default."
+ },
+ {
+ "key": "keys.resize_pane_up",
+ "type": "keybinding",
+ "default": "unset",
+ "description": "Resize the focused pane upward. Unset by default."
+ },
+ {
+ "key": "keys.resize_pane_right",
+ "type": "keybinding",
+ "default": "unset",
+ "description": "Resize the focused pane toward the right. Unset by default."
+ },
+ {
"key": "keys.toggle_sidebar",
"type": "keybinding",
"default": "\"prefix+b\"",