Created
February 11, 2020 04:32
-
-
Save gabrielc63/c665b3f99324610d9f76bf5bdb5fa769 to your computer and use it in GitHub Desktop.
tmux
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| set -g activity-action other | |
| set -g assume-paste-time 1 | |
| set -g base-index 0 | |
| set -g bell-action any | |
| # set -g default-command | |
| set -g default-shell /bin/zsh | |
| set -g default-size 80x24 | |
| set -g destroy-unattached off | |
| set -g detach-on-destroy on | |
| 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 history-limit 2000 | |
| set -g key-table root | |
| set -g lock-after-time 0 | |
| set -g lock-command "lock -np" | |
| set -g message-command-style fg=yellow,bg=black | |
| set -g message-style fg=black,bg=yellow | |
| set -g mouse off | |
| set -g prefix C-b | |
| set -g prefix2 None | |
| set -g renumber-windows off | |
| set -g repeat-time 500 | |
| set -g set-titles off | |
| set -g set-titles-string "#S:#I:#W - \"#T\" #{session_alerts}" | |
| set -g silence-action other | |
| set -g status on | |
| set -g status-bg green | |
| set -g status-fg black | |
| set -g status-format[0] "#[align=left range=left #{status-left-style}]#{T;=/#{status-left-length}:status-left}#[norange default]#[list=on align=#{status-justify}]#[list=left-marker]<#[list=right-marker]>#[list=on]#{W:#[range=window|#{window_index} #{window-status-style}#{?#{&&:#{window_last_flag},#{!=:#{window-status-last-style},default}}, #{window-status-last-style},}#{?#{&&:#{window_bell_flag},#{!=:#{window-status-bell-style},default}}, #{window-status-bell-style},#{?#{&&:#{||:#{window_activity_flag},#{window_silence_flag}},#{!=:#{window-status-activity-style},default}}, #{window-status-activity-style},}}]#{T:window-status-format}#[norange default]#{?window_end_flag,,#{window-status-separator}},#[range=window|#{window_index} list=focus #{?#{!=:#{window-status-current-style},default},#{window-status-current-style},#{window-status-style}}#{?#{&&:#{window_last_flag},#{!=:#{window-status-last-style},default}}, #{window-status-last-style},}#{?#{&&:#{window_bell_flag},#{!=:#{window-status-bell-style},default}}, #{window-status-bell-style},#{?#{&&:#{||:#{window_activity_flag},#{window_silence_flag}},#{!=:#{window-status-activity-style},default}}, #{window-status-activity-style},}}]#{T:window-status-current-format}#[norange list=on default]#{?window_end_flag,,#{window-status-separator}}}#[nolist align=right range=right #{status-right-style}]#{T;=/#{status-right-length}:status-right}#[norange default]" | |
| set -g status-format[1] "#[align=centre]#{P:#{?pane_active,#[reverse],}#{pane_index}[#{pane_width}x#{pane_height}]#[default] }" | |
| set -g status-interval 15 | |
| set -g status-justify left | |
| set -g status-keys vi | |
| set -g status-left "[#S] " | |
| set -g status-left-length 10 | |
| set -g status-left-style default | |
| set -g status-position bottom | |
| set -g status-right "#{?window_bigger,[#{window_offset_x}#,#{window_offset_y}] ,}\"#{=21:pane_title}\" %H:%M %d-%b-%y" | |
| set -g status-right-length 40 | |
| set -g status-right-style default | |
| set -g status-style fg=black,bg=green | |
| set -g update-environment[0] DISPLAY | |
| set -g update-environment[1] KRB5CCNAME | |
| set -g update-environment[2] SSH_ASKPASS | |
| set -g update-environment[3] SSH_AUTH_SOCK | |
| set -g update-environment[4] SSH_AGENT_PID | |
| set -g update-environment[5] SSH_CONNECTION | |
| set -g update-environment[6] WINDOWID | |
| set -g update-environment[7] XAUTHORITY | |
| set -g visual-activity off | |
| set -g visual-bell off | |
| set -g visual-silence off | |
| set -g word-separators " " | |
| # Our .tmux.conf file | |
| # Setting the prefix from C-b to C-a | |
| # START:prefix | |
| set -g prefix C-a | |
| # END:prefix | |
| # Free the original Ctrl-b prefix keybinding | |
| # START:unbind | |
| unbind C-b | |
| # END:unbind | |
| #setting the delay between prefix and command | |
| # START:delay | |
| set -sg escape-time 1 | |
| # END:delay | |
| # Ensure that we can send Ctrl-A to other apps | |
| # START:bind_prefix | |
| bind C-a send-prefix | |
| # END:bind_prefix | |
| # Set the base index for windows to 1 instead of 0 | |
| # START:index | |
| set -g base-index 1 | |
| # END:index | |
| # Set the base index for panes to 1 instead of 0 | |
| # START:panes_index | |
| setw -g pane-base-index 1 | |
| # END:panes_index | |
| # Reload the file with Prefix r | |
| # START:reload | |
| bind r source-file ~/.tmux.conf \; display "Reloaded!" | |
| # END:reload | |
| # splitting panes | |
| # START:panesplit | |
| bind | split-window -h | |
| bind - split-window -v | |
| # END:panesplit | |
| # moving between panes | |
| # START:paneselect | |
| bind h select-pane -L | |
| bind j select-pane -D | |
| bind k select-pane -U | |
| bind l select-pane -R | |
| # END:paneselect | |
| # Quick pane selection | |
| # START:panetoggle | |
| bind -r C-h select-window -t :- | |
| bind -r C-l select-window -t :+ | |
| # END:panetoggle | |
| # Pane resizing | |
| # START:paneresize | |
| 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 | |
| # END:paneresize | |
| # mouse support - set to on if you want to use the mouse | |
| # START:mouse | |
| set -g mouse on | |
| # END:mouse | |
| # Set the default terminal mode to 256color mode | |
| # START:termcolor | |
| set -g default-terminal "screen-256color" | |
| # END:termcolor | |
| # enable activity alerts | |
| #START:activity | |
| setw -g monitor-activity on | |
| set -g visual-activity on | |
| #END:activity | |
| # set the status line's colors | |
| # START:statuscolor | |
| set -g status-fg white | |
| set -g status-bg black | |
| # END:statuscolor | |
| # set the color of the window list | |
| # START:windowstatuscolor | |
| # setw -g window-status-fg cyan | |
| # setw -g window-status-bg default | |
| # setw -g window-status-attr dim | |
| # END:windowstatuscolor | |
| # set colors for the active window | |
| # START:activewindowstatuscolor | |
| # setw -g window-status-current-fg white | |
| # setw -g window-status-current-bg red | |
| # setw -g window-status-current-attr bright | |
| # END:activewindowstatuscolor | |
| # pane colors | |
| # START:panecolors | |
| # set -g pane-border-fg green | |
| # set -g pane-border-bg black | |
| # set -g pane-active-border-fg white | |
| # set -g pane-active-border-bg yellow | |
| # END:panecolors | |
| # Command / message line | |
| # START:cmdlinecolors | |
| # set -g message-fg white | |
| # set -g message-bg black | |
| # set -g message-attr bright | |
| # END:cmdlinecolors | |
| # Status line left side | |
| # START:statusleft | |
| set -g status-left-length 40 | |
| set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P" | |
| # END:statusleft | |
| #START:utf8 | |
| set -g status-utf8 on | |
| #END:utf8 | |
| # Status line right side | |
| # 15% | 28 Nov 18:15 | |
| # START: statusright | |
| set -g status-right "#(~/battery Discharging) | #[fg=cyan]%d %b %R" | |
| # END:statusright | |
| # Update the status bar every sixty seconds | |
| # START:updateinterval | |
| set -g status-interval 60 | |
| # END:updateinterval | |
| # Center the window list | |
| # START:centerwindowlist | |
| set -g status-justify centre | |
| # END:centerwindowlist | |
| # enable vi keys. | |
| # START:vikeys | |
| setw -g mode-keys vi | |
| # END:vikeys | |
| # Open panes in the same directory using the tmux-panes script | |
| # START:tmuxpanes | |
| unbind v | |
| unbind n | |
| bind v send-keys " ~/tmux-panes -h" C-m | |
| bind n send-keys " ~/tmux-panes -v" C-m | |
| # END:tmuxpanes | |
| # Maximize and restore a pane | |
| # START:max | |
| unbind Up | |
| bind Up new-window -d -n tmp \; swap-pane -s tmp.1 \; select-window -t tmp | |
| # END:max | |
| # START:restore | |
| unbind Down | |
| bind Down last-window \; swap-pane -s tmp.1 \; kill-window -t tmp | |
| # END:restore | |
| # Log output to a text file on demand | |
| # START:pipe-pane | |
| bind P pipe-pane -o "cat >>~/#W.log" \; display "Toggled logging to ~/#W.log" | |
| # END:pipe-pane | |
| # List of plugins | |
| set -g @plugin 'tmux-plugins/tpm' | |
| set -g @plugin 'tmux-plugins/tmux-sensible' | |
| set -g @plugin 'tmux-plugins/tmux-resurrect' | |
| set -g @plugin 'tmux-plugins/tmux-yank' | |
| # Other examples: | |
| # set -g @plugin 'github_username/plugin_name' | |
| # set -g @plugin 'git@github.com/user/plugin' | |
| # set -g @plugin 'git@bitbucket.com/user/plugin' | |
| # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
| run '~/.tmux/plugins/tpm/tpm' | |
| # RGB capability | |
| set-option -sa terminal-overrides ',xterm-256color:RGB' | |
| set-option -ga terminal-overrides ',xterm-256color:Tc' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment