tmux: Update config
[shutils.git] / dotfiles / tmux / .tmux.conf
index 67ebcb7b878dd1865d11fa93fa4eaf10135b0113..c4ab6ac1c6a0390b765b7203c0baed9adc97a65a 100644 (file)
@@ -5,6 +5,28 @@ set -g mouse on
 
 set-window-option -g xterm-keys on
 
+# Pass escape immediately to vim
+set -sg escape-time 0
+
+# Copy to X11 clipboard
+bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -in -selection clipboard'
+
+bind-key m set-option -g mouse on \; display 'Mouse: ON'
+bind-key M set-option -g mouse off \; display 'Mouse: OFF'
+
+# Let split et alii use the pane's current path as current path of the new pane
+bind '"' split-window -c "#{pane_current_path}"
+bind % split-window -h -c "#{pane_current_path}"
+bind c new-window -c "#{pane_current_path}"
+
+# Pass home and end keys
+bind-key -n Home send Escape "OH"
+bind-key -n End send Escape "OF"
+
+# Pass titles to terminal
+set-option -g set-titles on
+set-option -g set-titles-string "[#S : #W : #T]"
+
 
 # {{{{ Gruvbox color scheme
 # https://github.com/egel/tmux-gruvbox/blob/master/tmux-gruvbox-dark.conf
@@ -12,6 +34,12 @@ set-window-option -g xterm-keys on
 ## COLORSCHEME: gruvbox dark
 set-option -g status "on"
 
+# pane style
+set-option -g window-active-style bg=colour234
+set-option -g pane-active-border-style fg=colour250 #fg2
+set-option -g window-style bg=colour235
+set-option -g pane-border-style fg=colour237 #bg1
+
 # default statusbar color
 set-option -g status-style bg=colour237,fg=colour223 # bg=bg1, fg=fg1
 
@@ -24,10 +52,6 @@ set-window-option -g window-status-activity-style bg=colour237,fg=colour248 # bg
 # active window title colors
 set-window-option -g window-status-current-style bg=red,fg=colour237 # fg=bg1
 
-# pane border
-set-option -g pane-active-border-style fg=colour250 #fg2
-set-option -g pane-border-style fg=colour237 #bg1
-
 # message infos
 set-option -g message-style bg=colour239,fg=colour223 # bg=bg2, fg=fg1
 
@@ -52,8 +76,8 @@ set-option -g status-right-style none
 set-option -g status-right-length "80"
 set-window-option -g window-status-separator ""
 
-set-option -g status-left "#[fg=colour248, bg=colour241] #S #[fg=colour241, bg=colour237, nobold, noitalics, nounderscore]"
-set-option -g status-right "#[fg=colour239, bg=colour237, nobold, nounderscore, noitalics]#[fg=colour246,bg=colour239] %Y-%m-%d  %H:%M #[fg=colour248, bg=colour239, nobold, noitalics, nounderscore]#[fg=colour237, bg=colour248] #h "
+set-option -g status-left "#[fg=colour248, bg=colour241] #S: #T #[fg=colour241, bg=colour237, nobold, noitalics, nounderscore]"
+set-option -g status-right "#[fg=colour239, bg=colour237, nobold, nounderscore, noitalics]#[fg=colour246,bg=colour239] %%d  %H:%M #[fg=colour248, bg=colour239, nobold, noitalics, nounderscore]#[fg=colour237, bg=colour248] #h "
 
 set-window-option -g window-status-current-format "#[fg=colour237, bg=colour214, nobold, noitalics, nounderscore]#[fg=colour239, bg=colour214] #I #[fg=colour239, bg=colour214, bold] #W #[fg=colour214, bg=colour237, nobold, noitalics, nounderscore]"
 set-window-option -g window-status-format "#[fg=colour237,bg=colour239,noitalics]#[fg=colour223,bg=colour239] #I #[fg=colour223, bg=colour239] #W #[fg=colour239, bg=colour237, noitalics]"