#Fairly basic Tmux config. #Copyright 2018 TheToric # #This program is free software: you can redistribute it and/or modify #it under the terms of the GNU General Public License as published by #the Free Software Foundation, either version 3 of the License, or #(at your option) any later version. # #This program is distributed in the hope that it will be useful, #but WITHOUT ANY WARRANTY; without even the implied warranty of #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #GNU General Public License for more details. # #You should have received a copy of the GNU General Public License #along with this program. If not, see . #remap prefix from C-b to alt-a unbind C-b set-option -g prefix M-a bind-key M-a send-prefix #split panes using | and - unbind '|' unbind '_' bind | split-window -h bind _ split-window -v unbind '"' unbind % #switch panes using alt-hjkl bind -n M-h select-pane -L bind -n M-l select-pane -R bind -n M-k select-pane -U bind -n M-j select-pane -D #or with the prefix and hjkl bind h select-pane -L bind l select-pane -R bind k select-pane -U bind j select-pane -D #resize panes with HJKL 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 #sorta-kinda vim keys for copy and paste (entering copy mode is [, can paste with ]). bind-key -T copy-mode-vi v send-keys -X begin-selection bind-key -T copy-mode-vi y send-keys -X copy-selection bind-key -T copy-mode-vi y send-keys -X copy-pipe "xclip -sel clip -i" bind-key -T copy-mode-vi r send-keys -X rectangle-toggle #display pane numbers unbind d bind-key d display-panes #moving panes between windows. M to mark panes. unbind j bind-key j join-pane unbind s bind-key s swap-pane #reload conf with r bind r source-file ~/.tmux.conf #fix annoying escape behavior set -sg escape-time 0 #pass through focus events set -g focus-events on #customizing status line #make sure the status line can hold the stuff we are about to give it. set -g status-left-length 40 set -g status-right-length 40 #have the left side status line display my hostname. set -g status-left " #{host_short} | " #have the right side status bar display the current battery status and the time/date. set -g status-right 'battery:#(acpi | grep -Eo "[0-9]+%" | tr "\n" " " | sed "s/\s\+$//") | %H:%M %d/%m/%y '