summaryrefslogtreecommitdiff
path: root/modules/tmux.nix
diff options
context:
space:
mode:
authorsinanmohd <sinan@sinanmohd.com>2024-01-08 23:23:28 +0530
committersinanmohd <sinan@sinanmohd.com>2024-01-08 23:24:51 +0530
commit119d8d504f435b552e548a9130ae96a2a3721dff (patch)
treed2f489e29e9f52f79228ba437cf3e5e5b54dc6bd /modules/tmux.nix
parent00cf70110af4661b20e19b1cd42eabc224abc573 (diff)
modules/tmux: init
Diffstat (limited to 'modules/tmux.nix')
-rw-r--r--modules/tmux.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/tmux.nix b/modules/tmux.nix
new file mode 100644
index 0000000..77e942d
--- /dev/null
+++ b/modules/tmux.nix
@@ -0,0 +1,40 @@
+{ pkgs, ... }:
+
+{
+ environment = {
+ systemPackages = with pkgs; [ tmux ];
+
+ etc."tmux.conf".text = ''
+ # base
+ set-option -g prefix C-a
+ unbind-key C-b
+ bind-key C-a send-prefix
+ setw -g pane-base-index 1
+ set -g history-limit 10000
+
+ # vim
+ set -g mode-keys vi
+ bind -T copy-mode-vi v send -X begin-selection
+ bind -T copy-mode-vi y send -X copy-selection
+ bind -r C-w last-window
+
+ bind -r h select-pane -L
+ bind -r j select-pane -D
+ bind -r k select-pane -U
+ bind -r 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 -r C-h select-window -t :-
+ bind -r C-l select-window -t :+
+
+ # not eye candy
+ set -g status-style "bg=default fg=7"
+ set -g status-left ""
+ set -g status-right "#{session_name}"
+ '';
+ };
+}