-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtmux.nix
51 lines (47 loc) · 1.3 KB
/
tmux.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{ pkgs, ... }:
let
tokyo-night-tmux = pkgs.tmuxPlugins.mkTmuxPlugin
{
pluginName = "tokyo-night";
version = "v1.5.3";
# the plugin-file (sourced in .tmux.conf) is not abiding standards (kebab-case instead of snake)
rtpFilePath = "tokyo-night.tmux";
src = pkgs.fetchFromGitHub {
owner = "janoamaral";
repo = "tokyo-night-tmux";
rev = "d34f1487b4a644b13d8b2e9a2ee854ae62cc8d0e";
sha256 = "sha256-3rMYYzzSS2jaAMLjcQoKreE0oo4VWF9dZgDtABCUOtY=";
};
};
in
{
programs.tmux = {
enable = true;
escapeTime = 10;
shell = "${pkgs.zsh}/bin/zsh";
keyMode = "vi";
baseIndex = 1;
terminal = "tmux-256color";
historyLimit = 1000;
tmuxinator.enable = true;
extraConfig = ''
set-option -g detach-on-destroy off
set -ga terminal-overrides ",*256col*:Tc"
bind-key -n C-s next-window
bind-key -n C-t switch-client -n
bind-key -n C-n switch-client -p
bind-key -n C-h previous-window
bind-key M-o send-prefix
bind-key -n C-g copy-mode \;
bind x kill-session
bind M-x kill-session
bind M-n next-window
bind M-p previous-window
set -s escape-time 0
set -g @tokyo-night-tmux_show_path 1
'';
plugins = with pkgs; [
tokyo-night-tmux
];
};
}