瀏覽代碼

feat: add tmux window switching and improve keybindings

- Renames the `gemini` tmux window to `ai` for clarity.
- Adds keybindings for quick switching between the first three windows using `C-e`, `C-a`, and `C-t`.
- Uses `bind-key` for pane resizing for consistency.
Zander Hawke 10 月之前
父節點
當前提交
79a6204e30
共有 1 個文件被更改,包括 11 次插入6 次删除
  1. 11 6
      home/features/cli/tmux.nix

+ 11 - 6
home/features/cli/tmux.nix

@@ -47,8 +47,8 @@ in
             "tmux new-window -n terminal -t {session}"
             "tmux rename-window -t {session}:1 editor"
             "tmux send-keys -t {session}:editor \"nvim\" Enter"
-            "tmux send-keys -t {session}:gemini \"nix shell nixpkgs#gemini-cli\" Enter"
-            "tmux send-keys -t {session}:gemini \"gemini\" Enter"
+            "tmux send-keys -t {session}:ai \"nix shell nixpkgs#gemini-cli\" Enter"
+            "tmux send-keys -t {session}:ai \"gemini\" Enter"
             "tmux select-window -t {session}:editor"
           ]}'
           set -g @sessionx-fzf-builtin-tmux 'off'
@@ -83,10 +83,15 @@ in
       bind-key '"'    split-window -v -c '#{pane_current_path}'
 
       # resize pane with vim motion keys
-      bind -r h resize-pane -L 1
-      bind -r l resize-pane -R 1
-      bind -r j resize-pane -D 1
-      bind -r k resize-pane -U 1
+      bind-key -r h resize-pane -L 1
+      bind-key -r l resize-pane -R 1
+      bind-key -r j resize-pane -D 1
+      bind-key -r k resize-pane -U 1
+
+      # move between tmux windows
+      bind-key -n C-e select-window -t :1
+      bind-key -n C-a select-window -t :2
+      bind-key -n C-t select-window -t :3
     '';
   };
 }