2025-04-13 22:19:45 -07:00
|
|
|
{ pkgs, ... }:
|
|
|
|
|
|
|
|
let
|
|
|
|
tmuxConfig = builtins.readFile ./tmux.conf;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
programs.tmux = {
|
|
|
|
enable = true;
|
|
|
|
baseIndex = 1;
|
|
|
|
escapeTime = 10;
|
|
|
|
historyLimit = 10000;
|
|
|
|
keyMode = "vi";
|
|
|
|
prefix = "C-a";
|
|
|
|
terminal = "xterm-256color";
|
|
|
|
extraConfig = tmuxConfig;
|
|
|
|
plugins = with pkgs.tmuxPlugins; [
|
|
|
|
sensible
|
|
|
|
yank
|
|
|
|
kanagawa
|
|
|
|
{
|
2025-10-04 14:32:15 -07:00
|
|
|
plugin = tokyo-night-tmux;
|
2025-04-13 22:19:45 -07:00
|
|
|
extraConfig = ''
|
2025-10-04 14:32:15 -07:00
|
|
|
set -g @tokyo-night-tmux_theme night
|
|
|
|
set -g @tokyo-night-tmux_transparent 1
|
|
|
|
set -g @tokyo-night-tmux_terminal_icon
|
|
|
|
set -g @tokyo-night-tmux_active_terminal_icon
|
|
|
|
|
|
|
|
set -g @tokyo-night-tmux_show_path 1
|
|
|
|
set -g @tokyo-night-tmux_path_format full
|
|
|
|
|
|
|
|
# No extra spaces between icons
|
|
|
|
set -g @tokyo-night-tmux_window_tidy_icons 0
|
2025-04-13 22:19:45 -07:00
|
|
|
|
|
|
|
set -g status-right " #(tms sessions)"
|
|
|
|
bind -r '(' switch-client -p\; refresh-client -S
|
|
|
|
bind -r ')' switch-client -n\; refresh-client -S
|
2025-10-04 14:32:15 -07:00
|
|
|
bind C-o display-popup -E "tms"
|
2025-04-13 22:19:45 -07:00
|
|
|
'';
|
|
|
|
}
|
2025-05-25 16:00:49 -07:00
|
|
|
{
|
|
|
|
plugin = resurrect;
|
|
|
|
extraConfig = "set -g @resurrect-strategy-nvim 'session'";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
plugin = continuum;
|
|
|
|
extraConfig = ''
|
|
|
|
set -g @continuum-restore 'on'
|
|
|
|
set -g @continuum-save-interval '60' # minutes
|
|
|
|
'';
|
|
|
|
}
|
2025-04-13 22:19:45 -07:00
|
|
|
];
|
|
|
|
};
|
|
|
|
}
|