{ config, pkgs, ... }: { programs.tmux = { enable = true; aggressiveResize = true; sensibleOnTop = false; historyLimit = 2000; tmuxinator.enable = true; mouse = false; baseIndex = 1; disableConfirmationPrompt = true; #shell = "${pkgs.bash}/bin/bash"; terminal = "tmux-256color"; keyMode = "vi"; plugins = [ # Add tmux-tasks pkgs.tmuxPlugins.resurrect pkgs.tmuxPlugins.continuum pkgs.tmuxPlugins.battery pkgs.tmuxPlugins.cpu pkgs.tmuxPlugins.urlview { plugin = pkgs.tmuxPlugins.online-status; extraConfig = '' set -g @online_icon "ok" set -g @offline_icon "offline!" ''; } { plugin = pkgs.tmuxPlugins.dracula; extraConfig = '' set -g @dracula-plugins "cpu-usage network battery weather time" set -g @dracula-refresh-rate 10 set -g @dracula-show-left-icon session set -g @dracula-border-contrast true set -g @dracula-show-powerline true set -g @dracula-show-flags true set -g @dracula-show-timezone false set -g @dracula-fixed-location "Katy, Texas" set -g @dracula-show-location false ''; } ]; extraConfig = '' set -g bell-action any set -g buffer-limit 9 set -g display-panes-active-colour red set -g display-panes-colour blue set -g display-panes-time 1000 set -g display-time 750 set -g set-titles on set -g set-titles-string "#S:#I:#W - "#T"" set -g status on set -g status-position top set -g status-interval 15 set -g status-justify left set -g visual-activity off set -g visual-bell off bind ^b last-window bind '~' split-window "exec ytop" bind 1 select-window -t 1 bind 2 select-window -t 2 bind 3 select-window -t 3 bind 4 select-window -t 4 bind 5 select-window -t 5 bind 6 select-window -t 6 bind 7 select-window -t 7 bind 8 select-window -t 8 bind 9 select-window -t 9 bind 0 select-window -t 10 bind F1 select-window -t 11 bind -n C-1 select-window -t 11 bind F2 select-window -t 12 bind -n C-2 select-window -t 12 bind F3 select-window -t 13 bind -n C-3 select-window -t 13 bind F4 select-window -t 14 bind -n C-4 select-window -t 14 bind F5 select-window -t 15 bind C-5 select-window -t 15 bind F6 select-window -t 16 bind C-6 select-window -t 16 bind F7 select-window -t 17 bind C-7 select-window -t 17 bind F8 select-window -t 18 bind C-8 select-window -t 18 bind F9 select-window -t 19 bind C-9 select-window -t 19 bind F10 select-window -t 20 bind C-0 select-window -t 20 bind S split-window -v -l 5 bind g select-layout tiled bind Tab choose-window bind o select-pane -t :.- bind | split-window -h bind - split-window bind e setw synchronize-panes bind C-c run "tmux show-buffer | wl-copy" bind C-v run "tmux set-buffer -- \"$(wl-paste)\"; tmux paste-buffer" bind -n S-down new-window bind -n S-left prev bind -n S-right next bind -n C-left swap-window -t -1 bind -n C-right swap-window -t +1 bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; new-window -n "urlview" '$SHELL -c "urlview < /tmp/tmux-buffer"' bind C-i neww -n khal "exec ikhal" bind K split-window -h "exec ikhal" bind C-t neww -n vit "exec vit" set -g renumber-windows off ''; }; }