aboutsummaryrefslogtreecommitdiff
path: root/src/config/model.rs
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-05-15 20:31:01 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-05-15 20:31:01 +0300
commit4cbe72ec2d8a174e3c4f9bde2101aa189c7f38e7 (patch)
tree2de696538e494d3c14a920c20877bcd6d4ac39dc /src/config/model.rs
parent43d60fc6629d222ae63813ebcf4531067ba5bc9d (diff)
feat: add indexed keybind families
Diffstat (limited to 'src/config/model.rs')
-rw-r--r--src/config/model.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/config/model.rs b/src/config/model.rs
index 8ea52724..ed8c4dd5 100644
--- a/src/config/model.rs
+++ b/src/config/model.rs
@@ -123,10 +123,23 @@ pub struct KeysConfig {
pub resize_mode: String,
/// Toggle sidebar collapse. Default: "b"
pub toggle_sidebar: String,
+ /// Optional indexed shortcuts expanded over number keys 1-9.
+ pub indexed: IndexedKeysConfig,
/// Prefix-mode custom command bindings.
pub command: Vec<CommandKeybindConfig>,
}
+#[derive(Debug, Default, Deserialize)]
+#[serde(default)]
+pub struct IndexedKeysConfig {
+ /// Modifier combo for tab shortcuts 1-9. Unset by default.
+ pub tabs: String,
+ /// Modifier combo for workspace shortcuts 1-9. Unset by default.
+ pub workspaces: String,
+ /// Modifier combo for agent shortcuts 1-9. Unset by default.
+ pub agents: String,
+}
+
#[derive(Debug, Deserialize)]
#[serde(default)]
pub struct UiConfig {
@@ -195,6 +208,7 @@ impl Default for KeysConfig {
fullscreen: "f".into(),
resize_mode: "r".into(),
toggle_sidebar: "b".into(),
+ indexed: IndexedKeysConfig::default(),
command: Vec::new(),
}
}