]> Skullheadx's Git Forge - nixos.git/commitdiff
Cleanup tmux
authorAndrew <admonty1@protonmail.com>
Wed, 29 Oct 2025 03:42:35 +0000 (23:42 -0400)
committerAndrew <admonty1@protonmail.com>
Wed, 29 Oct 2025 03:42:35 +0000 (23:42 -0400)
tmux.nix

index 774f5bffe520c659608f85ff5a7464d52ad110d1..5a12e0488b581266e1fe43bdc3e3340f9d08a528 100644 (file)
--- a/tmux.nix
+++ b/tmux.nix
@@ -6,92 +6,25 @@
   programs.tmux = {
     enable = true;
     shell = "${pkgs.fish}/bin/fish";
-    terminal = "xterm-256color";
+    terminal = "xterm-ghostty";
     historyLimit = 10000;
-    sensibleOnTop = false;
-    plugins = with pkgs.tmuxPlugins; [
-      sensible
-      yank
-      vim-tmux-navigator # Deep Neovim integration for seamless pane navigation
-      {
-        plugin = resurrect; # Session persistence
-        extraConfig = ''
-          set -g @resurrect-capture-pane-contents 'on'
-          set -g @resurrect-strategy-nvim 'session'
-        '';
-      }
-      {
-        plugin = continuum; # Auto-save sessions
-        extraConfig = ''
-          set -g @continuum-restore 'on'
-          set -g @continuum-save-interval '10' # Save every 10 minutes
-        '';
-      }
-    ];
-    extraConfig = ''
-                        # Basic settings for usability
-                        set -g mouse on
-                        set -g base-index 1
-                        set -g pane-base-index 1
-                        set -g status-style bg=black,fg=cyan
-                        set -g history-limit 10000
-                        set -g prefix C-a
-                        unbind C-b
-                        bind C-a send-prefix
-
-                        bind | split-window -h
-                        bind - split-window -v
-
-
-                            # Pane navigation (vim-style)
-                            bind h select-pane -L
-                            bind j select-pane -D
-                            bind k select-pane -U
-                            bind l select-pane -R
+    baseIndex = 1;
+    clock24 = true;
+    customPaneNavigationAndResize = true;
+    disableConfirmationPrompt = true;
+    keyMode = "vi";
+    mouse = true;
+    newSession = true;
+    prefix = "C-j";
+    shortcut = "j";
 
-                            # Pane resizing with Shift + vim keys
-                            bind -r H resize-pane -L 5
-                            bind -r J resize-pane -D 5
-                            bind -r K resize-pane -U 5
-                            bind -r L resize-pane -R 5
-                            bind s choose-session
-                            bind w choose-window
-            # Auto-create sessions if they don't exist
-            if-shell "tmux has-session -t dev   2>/dev/null" "" "new-session -ds dev -c ~/dev 'fish'"
-            if-shell "tmux has-session -t music 2>/dev/null" "" "new-session -ds music 'rmpc'"
-            if-shell "tmux has-session -t nixos 2>/dev/null" "" "new-session -ds nixos -c ~/.dotfiles/nixos 'nvim .'"
-
-                  # Quick binds for session switching
-                  bind d switch-client -t dev
-                  bind m switch-client -t music
-                  bind n switch-client -t nixos
-      bind -n C-1 select-window -t 1
-      bind -n C-2 select-window -t 2
-      bind -n C-3 select-window -t 3
-      bind -n C-4 select-window -t 4
-      bind -n C-5 select-window -t 5
-      bind -n C-6 select-window -t 6
-      bind -n C-7 select-window -t 7
-      bind -n C-8 select-window -t 8
-      bind -n C-9 select-window -t 9
-                        # Fish-friendly clipboard integration
-                        set -g set-clipboard on
-                        bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"
-
-                        # Session initialization script
-                        set -g @tmux-resurrect-restore-script '${config.home.homeDirectory}/.config/tmux/setup-sessions.sh'
+    extraConfig = ''
+      bind | split-window -h
+      bind - split-window -v
     '';
   };
 
   home.packages = with pkgs; [
     tmux
-    xclip
   ];
-
-  # Create session setup script
-  #  home.file = {
-  #    ".config/tmux/setup-sessions.sh" = {
-  #      executable = true;
-  #    };
-  #};
 }