Last active
April 12, 2016 16:06
-
-
Save saamalik/5691197 to your computer and use it in GitHub Desktop.
My Tmux configuration
This file contains 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
# Setting the prefix from C-b to C-a | |
set -g prefix C-a | |
# Free the original Ctrl-b prefix keybinding | |
unbind C-b | |
#setting the delay between prefix and command | |
set -s escape-time 4 | |
# Rest the cursor back to input mode | |
set -g terminal-overrides "xterm*:Ms=\\E]52;%p1%s;%p2%s\\007:Ss=\\E[%p1%d q:Se=\\E[0 q" | |
# set history limit | |
set -g history-limit 5 | |
# Ensure that we can send Ctrl-A to other apps | |
bind a send-prefix | |
# Set the base index for windows to 1 instead of 0 | |
set -g base-index 1 | |
# Set the base index for panes to 1 instead of 0 | |
setw -g pane-base-index 1 | |
# Reload the file with Prefix r | |
bind r source-file ~/.tmux.conf \; display "Reloaded!" | |
# splitting panes | |
bind | split-window -h | |
bind - split-window -v | |
# moving between panes | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# Quick pane selection | |
bind -r C-h select-window -t :- | |
bind -r C-l select-window -t :+ | |
# Pane resizing | |
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 | |
# mouse support - set to on if you want to use the mouse | |
setw -g mode-mouse on | |
set -g mouse-select-pane on | |
set -g mouse-resize-pane on | |
set -g mouse-select-window off | |
# Set the default terminal mode to 256color mode | |
set -g default-terminal "screen-256color" | |
# enable activity alerts | |
setw -g monitor-activity on | |
set -g visual-activity on | |
# Constrain smaller viewport ONLY if both clients actiely looking | |
setw -g aggressive-resize on | |
# set the status line's colors | |
set -g status-fg white | |
set -g status-bg black | |
# set the color of the window list | |
setw -g window-status-fg cyan | |
setw -g window-status-bg default | |
setw -g window-status-attr dim | |
# set colors for the active window | |
setw -g window-status-current-fg white | |
setw -g window-status-current-bg red | |
setw -g window-status-current-attr bright | |
# pane colors | |
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 | |
# Command / message line | |
set -g message-fg white | |
set -g message-bg black | |
set -g message-attr bright | |
# Status line left side | |
set -g status-left-length 40 | |
set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P" | |
# Enable UTF-8 status | |
set -g status-utf8 on | |
# Status line right side | |
# 15% | 28 Nov 18:15 | |
set -g status-right "#(~/battery Discharging) | #[fg=cyan]%b %d %R" | |
# Update the status bar every sixty seconds | |
set -g status-interval 60 | |
# Center the window list | |
set -g status-justify centre | |
# enable vi keys. | |
setw -g mode-keys vi | |
unbind [ | |
bind Escape copy-mode | |
unbind p | |
bind p paste-buffer | |
bind -t vi-copy v begin-selection | |
bind -t vi-copy y copy-selection | |
# shortcut for synchronize-panes toggle | |
bind C-s set-window-option synchronize-panes | |
# Log output to a text file on demand | |
bind P pipe-pane -o "cat >>~/#W.log" \; display "Toggled logging to ~/#W.log" |
Hello there, thanks for your great settings file 👍
Could you fix the terminal-overrides option for the last mintty/msys2 version ?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The terminal-overrides option is fixed for mintty. The cursor changes back to a vertical line.