home | refactor
This commit is contained in:
parent
672d71a83a
commit
73fadb981d
468 changed files with 197 additions and 210 deletions
151
home/common/tmux.nix
Normal file
151
home/common/tmux.nix
Normal file
|
|
@ -0,0 +1,151 @@
|
|||
{ 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.vim-tmux-navigator
|
||||
{
|
||||
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-border-contrast true
|
||||
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-synchronize-panes-label "Sync"
|
||||
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 =
|
||||
''
|
||||
bind '~' split-window "exec ytop"
|
||||
bind - split-window -v -c "#{pane_current_path}"
|
||||
bind -n C-1 select-window -t 11
|
||||
bind -n C-2 select-window -t 12
|
||||
bind -n C-3 select-window -t 13
|
||||
bind -n C-4 select-window -t 14
|
||||
bind -n C-left swap-window -t -1
|
||||
bind -n C-right swap-window -t +1
|
||||
bind -n S-down new-window
|
||||
bind -n S-left prev
|
||||
bind -n S-right next
|
||||
bind 0 select-window -t 10
|
||||
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 C-0 select-window -t 20
|
||||
bind C-5 select-window -t 15
|
||||
bind C-6 select-window -t 16
|
||||
bind C-7 select-window -t 17
|
||||
bind C-8 select-window -t 18
|
||||
bind C-9 select-window -t 19
|
||||
bind C-c run "tmux show-buffer | wl-copy"
|
||||
bind C-i neww -n khal "exec ikhal"
|
||||
bind C-t neww -n vit "exec vit"
|
||||
bind C-v run "tmux set-buffer -- \"$(wl-paste)\"; tmux paste-buffer"
|
||||
bind F1 select-window -t 11
|
||||
bind F10 select-window -t 20
|
||||
bind F2 select-window -t 12
|
||||
bind F3 select-window -t 13
|
||||
bind F4 select-window -t 14
|
||||
bind F5 select-window -t 15
|
||||
bind F6 select-window -t 16
|
||||
bind F7 select-window -t 17
|
||||
bind F8 select-window -t 18
|
||||
bind F9 select-window -t 19
|
||||
bind K split-window -h "exec ikhal"
|
||||
bind S split-window -v -l 5
|
||||
bind Tab choose-window
|
||||
bind ^b last-window
|
||||
bind e setw synchronize-panes
|
||||
bind g select-layout tiled
|
||||
bind o select-pane -t :.-
|
||||
bind | split-window -h -c "#{pane_current_path}"
|
||||
bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; new-window -n "urlscan" '$SHELL -c "urlscan -c -d < /tmp/tmux-buffer"'
|
||||
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 focus-events on
|
||||
set -g lock-after-time 120
|
||||
set -g lock-command 'tty | grep -q "^/dev/tty" && vlock'
|
||||
set -g renumber-windows off
|
||||
set -g set-titles on
|
||||
set -g set-titles-string "#S:#I:#W - "#T""
|
||||
set -g status on
|
||||
set -g status-interval 0
|
||||
set -g status-interval 15
|
||||
set -g status-justify left
|
||||
set -g status-position top
|
||||
set -g visual-activity off
|
||||
set -g visual-bell off
|
||||
set -sa terminal-features ',tmux-256color:RGB'
|
||||
set -sa terminal-overrides ",tmux-256color:RGB"
|
||||
set -sg escape-time 0
|
||||
'';
|
||||
};
|
||||
xdg.configFile."tmuxinator" = {
|
||||
recursive = true;
|
||||
source = ./files/tmuxinator;
|
||||
target = "tmuxinator";
|
||||
};
|
||||
home.file = {
|
||||
tmux-css = {
|
||||
enable = true;
|
||||
target = ".tmux-cssh";
|
||||
text = ''
|
||||
vps:-sc www.tail -sc nuwww.tail
|
||||
local:-sc harper.tail -sc mini.tail -sc display.tail -sc harper2.tail -sc pihole.tail -sc fred.tail
|
||||
server:-cs vps -cs local
|
||||
laptop:-sc loki.tail -sc dragon.tail
|
||||
arch:-sc harper.tail -sc pocket2.tail -sc pihole.tail -sc nuwww.tail -sc display.tail -sc fred.tail
|
||||
nix:-sc loki.tail -sc eve.tail -sc dragon.tail -sc smaug.tail
|
||||
nix-all:-sc loki.tail -sc eve.tail -sc dragon.tail -sc smaug.tail -sc ace.tail -sc pocket2.tail
|
||||
ubuntu:-sc mini.tail -sc www.tail -sc harper2.tail
|
||||
vm:-sc vm1 -sc vm2
|
||||
all-laptop:-cs laptop -sc smaug.tail -sc dragon.tail -sc pocket2.tail -sc ace.tail -sc eve.tail
|
||||
# -sc pine.tail
|
||||
#all:-cs server -cs laptop
|
||||
all:-cs server -cs all-laptop
|
||||
test:-cs all -cs vm
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue