configures tmux

This commit is contained in:
Dennis Schoepf 2026-01-09 21:57:05 +01:00
parent a5400b6d22
commit 4838f2eb46
3 changed files with 54 additions and 6 deletions

52
modules/tmux/default.nix Normal file
View file

@ -0,0 +1,52 @@
{ config, pkgs, ... }:
{
programs.tmux = {
enable = true;
baseIndex = 1;
clock24 = true;
disableConfirmationPrompt = true;
mouse = true;
newSession = true;
prefix = "C-b";
shell = "${pkgs.fish}/bin/fish";
terminal = "screen-256color";
plugins = with pkgs; [
{
plugin = tmuxPlugins.resurrect;
extraConfig = ''
set -g @resurrect-strategy-nvim 'session'
set -g @resurrect-capture-pane-contents 'on'
'';
}
{
plugin = tmuxPlugins.continuum;
extraConfig = ''
set -g @continuum-restore 'on'
set -g @continuum-boot 'on'
set -g @continuum-save-interval '10'
'';
}
]
extraConfig = ''
unbind %
bind | split-window -h
unbind '"'
bind - split-window -v
bind r source-file ~/.tmux.conf \; display "Config reloaded!"
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
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 ? list-keys -a
'';
}
}