142 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			142 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | set -g default-terminal "screen-256color" | |||
|  | set -ga terminal-overrides ",xterm-256color*:Tc" | |||
|  | #set -g default-terminal "tmux-256color" | |||
|  | #set -ga terminal-overrides ",*256col*:Tc" | |||
|  | set -g prefix2 C-a												# Secondary prefix | |||
|  | 
 | |||
|  | unbind-key C-b														# free the original bind-key key | |||
|  | set-option -g prefix C-a									# setting the prefix from C-b to C-a | |||
|  | bind-key C-a send-prefix | |||
|  | 
 | |||
|  | set-option -g base-index 1								# window index will start with 1 | |||
|  | set-window-option -g pane-base-index 1 		# pane index will start with 1 | |||
|  | set-option -g renumber-windows on | |||
|  | 
 | |||
|  | bind-key | split-window -h -c "#{pane_current_path}" # allows you to open new pane with current path | |||
|  | bind-key _ split-window -v -c "#{pane_current_path}" | |||
|  | 
 | |||
|  | # nvim like movement | |||
|  | bind-key -r h select-pane -L              # go left | |||
|  | bind-key -r j select-pane -D              # go down | |||
|  | bind-key -r l select-pane -R              # go right | |||
|  | bind-key -r k select-pane -U              # go up | |||
|  | 
 | |||
|  | # kill pane without asking me to kill it! | |||
|  | unbind-key x               								# unbind-key “x” from it’s current job of “ask and then close” | |||
|  | bind-key x kill-pane       								# rebind-key it to just “close” | |||
|  | bind-key X kill-session                   # key combo for killing the entire session - <prefix> + shift + x | |||
|  | 
 | |||
|  | # Window: Movements | |||
|  | bind-key L last-window | |||
|  | bind-key -r C-h select-window -t :-       # cycle through the windows for quick window selection | |||
|  | bind-key -r C-l select-window -t :+ | |||
|  | 
 | |||
|  | # The default key binding are Ctr+ Up/Down/Left/Right for one row movements , Alt + Up/Down/Left/Right for five row movements. | |||
|  | # Let's add one more to the set (Vim way) | |||
|  | # Vim Style | |||
|  | bind-key -r H resize-pane -L 2            # resize a pane two rows at a time. | |||
|  | bind-key -r J resize-pane -D 2 | |||
|  | bind-key -r K resize-pane -U 2 | |||
|  | bind-key -r L resize-pane -R 2 | |||
|  | 
 | |||
|  | # these settings are added for testing porpuses they were taken from the github-nvim-theme | |||
|  | # Undercurl | |||
|  | set -g default-terminal "${TERM}" | |||
|  | set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm'  # undercurl support | |||
|  | set -as terminal-overrides ',*:Setulc=\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m'  # underscore colours - needs tmux-3.0 | |||
|  | 
 | |||
|  | # toggle mouse | |||
|  | set -g mouse on | |||
|  | 
 | |||
|  | # tpm plugins | |||
|  | #set -g @plugin 'egel/tmux-gruvbox' | |||
|  | #set -g @tmux-gruvbox 'dark' # or 'light' | |||
|  | set -g @plugin 'tmux-plugins/tmux-yank' | |||
|  | set -g @plugin 'tmux-plugins/tmux-resurrect' | |||
|  | set -g @plugin 'wfxr/tmux-fzf-url' | |||
|  | #set -g @plugin "arcticicestudio/nord-tmux" | |||
|  | #set -g @plugin 'odedlaz/tmux-onedark-theme' | |||
|  | #set -g @plugin 'jimeh/tmux-themepack' | |||
|  | #set -g @plugin 'srcery-colors/srcery-tmux' | |||
|  | # Official catppuccino theme | |||
|  | # ...alongside | |||
|  | set -g @plugin 'tmux-plugins/tpm' | |||
|  | 
 | |||
|  | #set -g @catppuccin_flavour 'macchiato' #'latte' # or frappe, macchiato, mocha | |||
|  | 
 | |||
|  | # this plugin is pretty cool but it does not work without Powerline fonts | |||
|  | #set -g @plugin 'Determinant/tmux-colortag' | |||
|  | #TMUX_COLORTAG_USE_POWERLINE=yes | |||
|  | 
 | |||
|  | # sets specific tmux theme | |||
|  | #set -g @themepack 'powerline/default/green' | |||
|  | 
 | |||
|  | set -g @plugin 'tmux-plugins/tmux-prefix-highlight' | |||
|  | set -g @plugin 'tmux-plugins/tmux-net-speed' | |||
|  | #set -g @plugin 'samoshkin/tmux-plugin-sysstat' # `sysstat_ntemp` and `sysstat_itemp` are temperatures of nvidia card and intel card, these scripts are available in my fork: https://github.com/sainnhe/tmux-plugin-sysstat | |||
|  | 
 | |||
|  | #source ~/.config/tmux/themes/Catppuccin.conf | |||
|  | #source ~/.config/tmux/themes/sonokai-shusia.tmux.conf | |||
|  | #source ~/.config/tmux/themes/nightfox.conf | |||
|  | 
 | |||
|  | 
 | |||
|  | # Initialize TMUX plugin manager (keep this line at the very bottom of the tmux.conf" | |||
|  | run '~/.tmux/plugins/tpm/tpm' | |||
|  | # Color key: | |||
|  | #   #2d2d2d Background | |||
|  | #   #393939 Current Line | |||
|  | #   #515151 Selection | |||
|  | #   #cccccc Foreground | |||
|  | #   #999999 Comment | |||
|  | #   #f2777a Red | |||
|  | #   #f99157 Orange | |||
|  | #   #ffcc66 Yellow | |||
|  | #   #99cc99 Green | |||
|  | #   #66cccc Aqua | |||
|  | #   #6699cc Blue | |||
|  | #   #cc99cc Purple | |||
|  | 
 | |||
|  | ############################ | |||
|  | ## Status Bar | |||
|  | ############################ | |||
|  | 
 | |||
|  | # enable UTF-8 support in status bar | |||
|  | set -gq status-utf8 on | |||
|  | 
 | |||
|  | # set refresh interval for status bar | |||
|  | set -g status-interval 30 | |||
|  | 
 | |||
|  | # center the status bar | |||
|  | set -g status-justify centre | |||
|  | 
 | |||
|  | # show session, window, pane in left status bar | |||
|  | set -g status-left-length 40 | |||
|  | set -g status-left '#[fg=green] #S #[fg=yellow]#I/#[fg=cyan]#P ' | |||
|  | 
 | |||
|  | # show hostname, date, tim 100 | |||
|  | set -g status-right '#(battery -t) #[fg=cyan] %d %b %R ' | |||
|  | 
 | |||
|  | # update status bar info | |||
|  | set -g status-interval 60 | |||
|  | 
 | |||
|  | ########################### | |||
|  | # Colors | |||
|  | ########################### | |||
|  | 
 | |||
|  | # color status bar | |||
|  | set -g status-style fg=white,bg=colour235 | |||
|  | # color of message bar | |||
|  | set -g message-style fg=white,bold,bg=green | |||
|  | 
 | |||
|  | # highlight current window | |||
|  | setw -g window-status-style fg=cyan,bg=colour235 | |||
|  | setw -g window-status-current-style fg=white,bold,bg=red | |||
|  | 
 | |||
|  | # set color of active pane | |||
|  | set -g pane-border-style fg=colour240,bg=black | |||
|  | set -g pane-active-border-style fg=green,bg=black | |||
|  | 
 | |||
|  | # dim non active panes (don't like it much) | |||
|  | # setw -g window-style fg=colour240,bg=colour235 | |||
|  | # setw -g window-active-style fg=white,bg=black |