+ for tmux 2.9 and higher style options up
This commit is contained in:
		
							
								
								
									
										150
									
								
								.tmux.2.9+.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										150
									
								
								.tmux.2.9+.conf
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,150 @@
 | 
				
			|||||||
 | 
					## Prefix like in screen
 | 
				
			||||||
 | 
					set -g prefix 'C-a'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Use xterm keys (makes eg. Ctrl+Arrow navigate words)
 | 
				
			||||||
 | 
					set-window-option -g xterm-keys on
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## List of plugins
 | 
				
			||||||
 | 
					# For this to work you need to install https://github.com/tmux-plugins/tpm
 | 
				
			||||||
 | 
					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-continuum'
 | 
				
			||||||
 | 
					set -g @plugin 'tmux-plugins/tmux-pain-control'
 | 
				
			||||||
 | 
					set -g @plugin 'tmux-plugins/tmux-yank'
 | 
				
			||||||
 | 
					set -g @plugin 'tmux-plugins/tmux-sessionist'
 | 
				
			||||||
 | 
					set -g @plugin 'knakayama/tmux-man'
 | 
				
			||||||
 | 
					set -g @plugin 'knakayama/tmux-newline-detector'
 | 
				
			||||||
 | 
					set -g @plugin 'anghootys/tmux-ip-address'
 | 
				
			||||||
 | 
					set -g @plugin 'tmux-plugins/tmux-prefix-highlight'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# List of disabled plugins on some reasons
 | 
				
			||||||
 | 
					#set -g @plugin 'thewtex/tmux-mem-cpu-load'
 | 
				
			||||||
 | 
					#set -g @plugin 'b0o/tmux-autoreload'
 | 
				
			||||||
 | 
					#set -g @plugin 'ofirgall/tmux-window-name'
 | 
				
			||||||
 | 
					#set -g @plugin 'tmux-plugins/tmux-sidebar'
 | 
				
			||||||
 | 
					#set -g @treemux-tree-nvim-init-file '~/.tmux/plugins/treemux/configs/treemux_init.lua'
 | 
				
			||||||
 | 
					#set -g @plugin 'kiyoon/treemux'
 | 
				
			||||||
 | 
					#set -g @plugin 'leighmcculloch/tmux-colours-superhero'
 | 
				
			||||||
 | 
					#run-shell "powerline-daemon -q"
 | 
				
			||||||
 | 
					#source "/usr/share/powerline/bindings/tmux/powerline.conf"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Plugin configuration
 | 
				
			||||||
 | 
					set -g @continuum-restore 'on'
 | 
				
			||||||
 | 
					set -g @continuum-save-interval '5'
 | 
				
			||||||
 | 
					set -g @resurrect-capture-pane-contents 'on'
 | 
				
			||||||
 | 
					set -g @yank_selection 'primary'
 | 
				
			||||||
 | 
					set -g @man-size '40%'
 | 
				
			||||||
 | 
					set -g @man-orientation 'h'
 | 
				
			||||||
 | 
					set -g @man-shell-interactive 'off'
 | 
				
			||||||
 | 
					#set-option -g @tmux-autoreload-entrypoints '~/.tmux.conf'
 | 
				
			||||||
 | 
					#set -g @tmux-autoreload-quiet 1
 | 
				
			||||||
 | 
					#set -g @sidebar-tree-position 'right'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# True colors (via: https://jdhao.github.io/2018/10/19/tmux_nvim_true_color/ )
 | 
				
			||||||
 | 
					set -g default-terminal "screen-256color"
 | 
				
			||||||
 | 
					# tell Tmux that outside terminal supports true color
 | 
				
			||||||
 | 
					set -ag terminal-overrides ",alacritty:RGB"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# --- START colours superhero ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# not suppoerted option
 | 
				
			||||||
 | 
					#setw -g utf8 on
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Update Interval
 | 
				
			||||||
 | 
					set -g status-interval 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Status bar
 | 
				
			||||||
 | 
					# not suppoerted option
 | 
				
			||||||
 | 
					#set -g status-utf8 on
 | 
				
			||||||
 | 
					set -g status-bg default
 | 
				
			||||||
 | 
					set -g status-fg white
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Status bar - left side
 | 
				
			||||||
 | 
					set -g status-left ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Status bar - right side
 | 
				
			||||||
 | 
					set -g status-right-length 100
 | 
				
			||||||
 | 
					set -g status-right-style fg=black,bold
 | 
				
			||||||
 | 
					set -g status-right '#{prefix_highlight} #{?window_zoomed_flag,#[fg=colour178]ZOOMED #[fg=colour238]• ,}#[fg=colour178]#h #[fg=colour238]• #[fg=colour178]#{ip_address} #[fg=colour238]• #[fg=colour178]%a %b %d #[fg=colour178]%I:%M%P '
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Window status - not the current window
 | 
				
			||||||
 | 
					set -g window-status-style bg=default,fg=white,none
 | 
				
			||||||
 | 
					set -g window-status-format '#[fg=colour214,bg=colour235] #I #[fg=white,bg=colour236] #(pwd="#{pane_current_path}"; echo ${pwd####*/}) #W #[default]'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Window status - current window
 | 
				
			||||||
 | 
					set -g window-status-current-style none
 | 
				
			||||||
 | 
					set -g window-status-current-format '#[fg=black,bg=colour214] #I #[fg=brightwhite,bg=colour238] #(pwd="#{pane_current_path}"; echo ${pwd####*/}) #W #[default]'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Pane borders
 | 
				
			||||||
 | 
					set -g pane-border-style bg=default,fg=colour235
 | 
				
			||||||
 | 
					set -g pane-active-border-style bg=default,fg=colour214
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Pane number display
 | 
				
			||||||
 | 
					set-option -g display-panes-active-colour colour214
 | 
				
			||||||
 | 
					set-option -g display-panes-colour colour240
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# --- END colours superhero ---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Windows style
 | 
				
			||||||
 | 
					#set-option -g status-style fg=yellow,bg=default
 | 
				
			||||||
 | 
					#set-window-option -g pane-active-border-style ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## A bit more space in right status bar
 | 
				
			||||||
 | 
					#set -g status-right-length 50
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Windows status style
 | 
				
			||||||
 | 
					#set -g status-style "bg=#4c566a,fg=#eceff4"
 | 
				
			||||||
 | 
					#set -g status-left "#[fg=#bf616a,bg=#ebcb8b,bold] #S "
 | 
				
			||||||
 | 
					#set -g status-right "#{prefix_highlight} #[bg=#a3be8c,fg=black,bold] #U #[bg=#ebcb8b,fg=#bf616a,bold] #h "
 | 
				
			||||||
 | 
					#setw -g window-status-format "#[fg=#81a1c1,bg=#4c566a] #I:#W "
 | 
				
			||||||
 | 
					#setw -g window-status-current-format "#[fg=#2e3440,bg=#81a1c1,bold] #I:#W "
 | 
				
			||||||
 | 
					#setw -g window-status-separator ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Rename windows to fit current application
 | 
				
			||||||
 | 
					#setw -g automatic-rename on
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Use zsh regardless of default settings
 | 
				
			||||||
 | 
					if-shell 'test -x /usr/bin/zsh' 'set-option -g default-shell /usr/bin/zsh'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# switch panes using Alt-arrow without prefix
 | 
				
			||||||
 | 
					bind -n M-Left select-pane -L
 | 
				
			||||||
 | 
					bind -n M-Right select-pane -R
 | 
				
			||||||
 | 
					bind -n M-Up select-pane -U
 | 
				
			||||||
 | 
					bind -n M-Down select-pane -D
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Mouse On by default
 | 
				
			||||||
 | 
					set -g mouse on
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# PageUp/PageDown works for scrolling
 | 
				
			||||||
 | 
					bind-key -T root PPage if-shell -F "#{alternate_on}" "send-keys PPage" "copy-mode -e; send-keys PPage"
 | 
				
			||||||
 | 
					bind-key -T copy-mode-vi PPage send-keys -X page-up
 | 
				
			||||||
 | 
					bind-key -T copy-mode-vi NPage send-keys -X page-down
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Same for the mouse scroll button
 | 
				
			||||||
 | 
					bind-key -T root WheelUpPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; copy-mode -e; send-keys -M"
 | 
				
			||||||
 | 
					bind-key -T root WheelDownPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; send-keys -M"
 | 
				
			||||||
 | 
					bind-key -T copy-mode-vi WheelUpPane send-keys -X halfpage-up
 | 
				
			||||||
 | 
					bind-key -T copy-mode-vi WheelDownPane send-keys -X halfpage-down
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Tmux config reload
 | 
				
			||||||
 | 
					bind r source-file ~/.tmux.conf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Toggle prefix on/off with F12 (for nested remote sessions)
 | 
				
			||||||
 | 
					bind -T root F12  \
 | 
				
			||||||
 | 
					  set prefix None \;\
 | 
				
			||||||
 | 
					  set key-table off \;\
 | 
				
			||||||
 | 
					  if -F '#{pane_in_mode}' 'send-keys -X cancel' \;\
 | 
				
			||||||
 | 
					  refresh-client -S \;\
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bind -T off F12 \
 | 
				
			||||||
 | 
					  set -u prefix \;\
 | 
				
			||||||
 | 
					  set -u key-table \;\
 | 
				
			||||||
 | 
					  refresh-client -S
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
 | 
				
			||||||
 | 
					if "test ! -d ~/.tmux/plugins/tpm" \
 | 
				
			||||||
 | 
					   "run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && ~/.tmux/plugins/tpm/bin/install_plugins'"
 | 
				
			||||||
 | 
					run '~/.tmux/plugins/tpm/tpm'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# vim: se ft=tmux :
 | 
				
			||||||
		Reference in New Issue
	
	Block a user