Compare commits

..

8 commits

View file

@ -6,19 +6,21 @@ set -g prefix C-space
bind C-space send-prefix bind C-space send-prefix
bind R source-file "$XDG_CONFIG_HOME/tmux/tmux.conf"\; display "RELOADED" bind R source-file "$XDG_CONFIG_HOME/tmux/tmux.conf"\; display "RELOADED"
bind v copy-mode bind v copy-mode
bind p paste-buffer bind P choose-buffer "paste-buffer -b '%%' -s ''"
bind p paste-buffer -s ''
bind C command-prompt -p 'Save pane history:' \ bind C command-prompt -p 'Save pane history:' \
-I '~/tmux.history' \ -I '~/tmux.history' \
'capture-pane -S -32768 ; save-buffer %1 ; delete-buffer' 'capture-pane -S -32768 ; save-buffer %1 ; delete-buffer'
# Window/pane management (new windows/panes use the path in current pane) # Window/pane management (new windows/panes use the path in current pane)
bind c new-window -c '#{pane_current_path}' bind c new-window -c '#{pane_current_path}'
bind | split-window -h -c '#{pane_current_path}' bind C-v split-window -h -c '#{pane_current_path}'
bind \\ split-window -h -c '#{pane_current_path}' -f bind M-v split-window -h -c '#{pane_current_path}' -f
bind - split-window -v -c '#{pane_current_path}' bind C-s split-window -v -c '#{pane_current_path}'
bind _ split-window -v -c '#{pane_current_path}' -f bind M-s split-window -v -c '#{pane_current_path}' -f
bind x kill-pane bind x kill-pane
bind X kill-window bind X kill-window
bind w choose-tree -Z
bind W command-prompt 'rename-window %%' bind W command-prompt 'rename-window %%'
bind S command-prompt 'rename-session %%' bind S command-prompt 'rename-session %%'
bind s set synchronize-panes bind s set synchronize-panes
@ -31,31 +33,37 @@ bind h select-pane -L
bind j select-pane -D bind j select-pane -D
bind k select-pane -U bind k select-pane -U
bind l select-pane -R bind l select-pane -R
bind -r C-h select-pane -L
bind -r C-j select-pane -D
bind -r C-k select-pane -U
bind -r C-l select-pane -R
# Resize panes # Resize panes
bind -r C-h resize-pane -L 2 bind -r Left resize-pane -L 1
bind -r C-j resize-pane -D 2 bind -r Down resize-pane -D 1
bind -r C-k resize-pane -U 2 bind -r Up resize-pane -U 1
bind -r C-l resize-pane -R 2 bind -r Right resize-pane -R 1
bind -r S-Left resize-pane -L 10
bind -r S-Down resize-pane -D 10
bind -r S-Up resize-pane -U 10
bind -r S-Right resize-pane -R 10
# Arrangement of panes & windows # Arrangement of panes & windows
bind b break-pane \; select-pane -m \; last-window bind b break-pane -d
bind H join-pane -h -b bind B break-pane
bind J join-pane -v bind H join-pane -h -b \; select-pane -M
bind K join-pane -v -b bind J join-pane -v \; select-pane -M
bind L join-pane -h bind K join-pane -v -b \; select-pane -M
bind L join-pane -h \; select-pane -M
bind C-p swap-pane \; select-pane -M
bind -r > swap-window -d -t :+ bind -r > swap-window -d -t :+
bind -r < swap-window -d -t :- bind -r < swap-window -d -t :-
# Choosing layouts # Choosing layouts
bind -r C-y set main-pane-width 50% \; set main-pane-height 50% \; next-layout
bind -r C-o rotate-window -D bind -r C-o rotate-window -D
bind -r C-i rotate-window -U bind -r C-i rotate-window -U
bind -r space next-layout
bind C-m set main-pane-width 50% \; select-layout main-vertical
bind C-e select-layout even-horizontal
bind C-t select-layout tiled
# Copy mode # Copy mode
bind -T copy-mode-vi v send-keys -X begin-selection bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-selection bind -T copy-mode-vi y send-keys -X copy-selection
@ -94,32 +102,42 @@ set-environment -gu SHLVL
# #
# Style (status list, colors, ...) # Style (status list, colors, ...)
# #
set -g status-left ' ' # 󰄴 󰣕 󰬫 󰻃 󰪥 󰬪    󰡖 󰄱 background="#1d2021"
set -g status-right '\ highlight="#b57614"
#[fg=brightblack] \ current_badge="#076678"
#{?client_prefix,#[fg=brightyellow],#[fg=brightblack]}#{pane_id}\ current_bg="#003848"
#[fg=brightblack]  \ current_fg="#83a598"
#{?client_prefix,#[fg=brightyellow],#[fg=brightblack]}#{session_name}\ window_badge="#504945"
#[fg=brightblack]  \ window_fg="#7c6f64"
#{?client_prefix,#[fg=brightyellow],#[fg=brightblack]}#{pid} @ #{host_short} '
setw -g window-status-current-format '\
#{?client_prefix,#[fg=brightyellow],#[fg=brightcyan]}#{window_index} \
#[bold]#[fg=blue]#{window_name}#[nobold] \
#{?client_prefix,#[fg=brightyellow],#[fg=brightcyan]}\
#{?pane_synchronized,󰵉 ,}#{?window_marked_flag,󰄵 ,}#{?window_zoomed_flag, ,}\
#[fg=brightblack]'
setw -g window-status-format '\
#{?client_prefix,#[fg=brightyellow],#{?window_last_flag,#[fg=cyan],#[fg=brightblack]}}\
#{window_index} \
#[fg=brightblack]#{window_name} \
#{?pane_synchronized,󰵉 ,}#{?window_marked_flag,󰄵 ,}#{?window_zoomed_flag, ,}\
#[fg=brightblack]'
set -g status-justify left
set -g status-style fg=white,bg=black
set -g pane-border-style fg=black set -g pane-border-style fg=black
set -g pane-active-border-style fg=brightblue set -g pane-active-border-style fg=brightblue
set -g message-style fg=brightwhite,bg=black set -g message-style fg=brightwhite,bg=black
set -g message-command-style fg=yellow,bg=black set -g message-command-style fg=yellow,bg=black
set -g status-style bg=${background}
set -g status-justify left
set -g status-left ""
flags="#{?pane_synchronized,󰵉 ,}#{?window_marked_flag,󰄵 ,}#{?window_zoomed_flag, ,}"
setw -g window-status-format "\
#[fg=${background} bg=#{?client_prefix,${highlight},${window_badge}} bold] #{window_index} \
#[fg=#{?window_last_flag,${current_fg},${window_fg}} bg=${background} nobold] #{window_name} ${flags}\
#[default] "
setw -g window-status-current-format "\
#[fg=${background} bg=#{?client_prefix,${highlight},${current_badge}} bold] #{window_index} \
#[fg=${current_fg} bg=${current_bg} nobold] #{window_name} ${flags}\
#[default] "
box_begin="#[fg=${background} bg=#{?client_prefix,${highlight},${window_badge}} bold] "
box_mid="#[fg=${window_fg} bg=${background} nobold]"
box_end="#[default]"
set -g status-right-length 64
set -g status-right "\
${box_begin}󰈷 ${box_mid} #{pane_id} ${box_end} \
${box_begin} ${box_mid} #{session_name} ${box_end} \
${box_begin} ${box_mid} #{pid} ${box_end} \
${box_begin}󱡶 ${box_mid} #{host_short} ${box_end}"