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
|