81 lines
2.4 KiB
Plaintext
81 lines
2.4 KiB
Plaintext
unbind C-b
|
|
set -g prefix C-s
|
|
bind-key s send-prefix
|
|
|
|
bind-key v split-window -h
|
|
bind-key b split-window
|
|
bind-key T source-file "$HOME/.tmux.conf" \; display-message "Reloaded $HOME/.tmux.conf"
|
|
bind-key O display-message "#(tmux-save-buffer '#S')"
|
|
bind-key H set -s status
|
|
bind-key -n C-l select-pane -R
|
|
bind-key -n C-k select-pane -U
|
|
bind-key -n C-j select-pane -D
|
|
bind-key -n C-h select-pane -L
|
|
bind-key -n C-t new-window
|
|
bind-key Tab next-window
|
|
bind-key -n C-Tab next-window
|
|
bind-key -n C-S-Tab previous-window
|
|
bind s run "tmux split-window -l 12 'tmuxswitcher'"
|
|
|
|
bind M-l source-file "$XDG_CONFIG_HOME/tmux/layouts/dev.tmux"
|
|
|
|
set -g default-terminal "kitty"
|
|
set -g mouse on
|
|
set -g escape-time 0
|
|
set -g monitor-activity on
|
|
set -g visual-bell on
|
|
set -g bell-action other
|
|
set -g mode-keys vi
|
|
set -g history-limit 102400000
|
|
set -g status on
|
|
set -g status-position bottom
|
|
set -g status-bg colour0
|
|
set -g status-fg colour8
|
|
set -g status-interval 5
|
|
set -g status-left-length 50
|
|
set -g window-status-style "fg=colour8 bg=colour0"
|
|
set -g window-status-current-style "fg=colour8 bg=colour0"
|
|
set -g window-status-format " #W"
|
|
set -g window-status-separator ""
|
|
set -g window-status-current-format " #W"
|
|
set -g status-left "#h:#S #W"
|
|
set -g status-right-length 280
|
|
set -g status-right "#(kubeline && printf ' ')#{pane_current_path} #(cd '#{pane_current_path}' && git rev-parse --abbrev-ref --sq HEAD | tr -d \"'\")#{pane_current_command}"
|
|
set -g message-style "fg=colour7 bg=colour18"
|
|
set -g pane-active-border-style bg=black,fg=blue
|
|
set -g pane-border-style bg=black,fg=colour18
|
|
set -g clock-mode-colour colour8
|
|
set -g base-index 1
|
|
set -g pane-base-index 1
|
|
|
|
set -g window-status-current-format ""
|
|
|
|
# present a menu of urls to open from the visible pane
|
|
# TODO: fzf-ify this
|
|
bind-key u capture-pane \;\
|
|
save-buffer /tmp/tmux-buffer \;\
|
|
split-window -l 10 "urlscan /tmp/tmux-buffer"
|
|
|
|
bind-key -T copy-mode-vi "y" send-keys -X copy-pipe-and-cancel 'wl-copy'
|
|
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel 'wl-copy'; \
|
|
|
|
bind-key K kill-pane
|
|
bind-key C-S-k kill-window
|
|
|
|
# TODO: handle tmux nesting by being able to toggle the prefix (and indicate in status bar?)
|
|
|
|
# bind -T root F12 \
|
|
# set prefix None \;\
|
|
# set key-table off \;\
|
|
# set status off \
|
|
# if -F "#{pane_in_mode}" "send-keys -X cancel" \;\
|
|
# refresh-client -S \;\
|
|
|
|
# bind -T off F12 \
|
|
# set -u prefix \;\
|
|
# set -u key-table \;\
|
|
# set status on \;\
|
|
# refresh-client -S
|
|
|
|
source-file "$ENV_PATH/*/tmux.d.conf"
|