X-Git-Url: https://git.sthu.org/?a=blobdiff_plain;f=dotfiles%2Ftmux%2F.tmux.conf;h=69d58a3f57ae6d9f699e82069a0ea38b97b851de;hb=HEAD;hp=eacc15f3489495c4aa49ada178fd488d07d9052d;hpb=02240f5a7bc58314cd722f45cff0a0ad9f58a0b4;p=shutils.git diff --git a/dotfiles/tmux/.tmux.conf b/dotfiles/tmux/.tmux.conf index eacc15f..69be6d4 100644 --- a/dotfiles/tmux/.tmux.conf +++ b/dotfiles/tmux/.tmux.conf @@ -1,40 +1,60 @@ -set -g default-terminal "tmux-256color" +# Prefer xterm-256color as vim (neovim) within mutt switches to monochrome with +# screen-256color. +set -g default-terminal "xterm-256color" 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 -## COLORSCHEME: gruvbox dark +## COLORSCHEME: gruvbox dark (medium) set-option -g status "on" -# default statusbar colors -set-option -g status-bg colour237 #bg1 -set-option -g status-fg colour223 #fg1 +# default statusbar color +set-option -g status-style bg=colour237,fg=colour223 # bg=bg1, fg=fg1 # default window title colors -set-window-option -g window-status-bg colour214 #yellow -set-window-option -g window-status-fg colour237 #bg1 +set-window-option -g window-status-style bg=colour214,fg=colour237 # bg=yellow, fg=bg1 -set-window-option -g window-status-activity-bg colour237 #bg1 -set-window-option -g window-status-activity-fg colour248 #fg3 +# default window with an activity alert +set-window-option -g window-status-activity-style bg=colour237,fg=colour248 # bg=bg1, fg=fg3 # active window title colors -set-window-option -g window-status-current-bg default -set-window-option -g window-status-current-fg colour237 #bg1 +set-window-option -g window-status-current-style bg=red,fg=colour237 # fg=bg1 # pane border -set-option -g pane-active-border-fg colour250 #fg2 -set-option -g pane-border-fg colour237 #bg1 +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-bg colour239 #bg2 -set-option -g message-fg colour223 #fg1 +set-option -g message-style bg=colour239,fg=colour223 # bg=bg2, fg=fg1 -# writting commands inactive -set-option -g message-command-bg colour239 #fg3 -set-option -g message-command-fg colour223 #bg1 +# writing commands inactive +set-option -g message-command-style bg=colour239,fg=colour223 # bg=fg3, fg=bg1 # pane number display set-option -g display-panes-active-colour colour250 #fg2 @@ -44,22 +64,19 @@ set-option -g display-panes-colour colour237 #bg1 set-window-option -g clock-mode-colour colour109 #blue # bell -set-window-option -g window-status-bell-style fg=colour235,bg=colour167 #bg, red - +set-window-option -g window-status-bell-style bg=colour167,fg=colour235 # bg=red, fg=bg ## Theme settings mixed with colors (unfortunately, but there is no cleaner way) -set-option -g status-attr "none" set-option -g status-justify "left" -set-option -g status-left-attr "none" +set-option -g status-left-style none set-option -g status-left-length "80" -set-option -g status-right-attr "none" +set-option -g status-right-style none set-option -g status-right-length "80" -set-window-option -g window-status-activity-attr "none" -set-window-option -g window-status-attr "none" 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 "#[bg=colour241,fg=colour248] #S #[bg=colour237,fg=colour241,nobold,noitalics,nounderscore]" +set-option -g status-right "#[bg=colour237,fg=colour239 nobold, nounderscore, noitalics]#[bg=colour239,fg=colour246] %Y-%m-%d  %H:%M #[bg=colour239,fg=colour248,nobold,noitalics,nounderscore]#[bg=colour248,fg=colour237] #h " + +set-window-option -g window-status-current-format "#[bg=colour214,fg=colour237,nobold,noitalics,nounderscore]#[bg=colour214,fg=colour239] #I #[bg=colour214,fg=colour239,bold] #W#{?window_zoomed_flag,*Z,} #[bg=colour237,fg=colour214,nobold,noitalics,nounderscore]" +set-window-option -g window-status-format "#[bg=colour239,fg=colour237,noitalics]#[bg=colour239,fg=colour223] #I #[bg=colour239,fg=colour223] #W #[bg=colour237,fg=colour239,noitalics]" -set-window-option -g window-status-current-format "#[fg=colour239, bg=colour248, :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]"