Files
dotfiles/tmux/tmux.conf
T
2023-12-06 12:00:27 +01:00

71 lines
2.0 KiB
Bash

# Open in current director# Rebind Ctrl-b to Ctrl-a
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# VI-mode
set-window-option -g mode-keys vi
set-window-option -g status-keys vi
# Enable Vi copy commands
bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-pipe-and-cancel 'xclip -selection clipboard'
# Vim keybinding for resizing panes
bind -r C-h resize-pane -L # Control-a Control-h
bind -r C-j resize-pane -D # Control-a Control-j
bind -r C-k resize-pane -U # Control-a Control-k
bind -r C-l resize-pane -R # Control-a Control-l
# Vim keybinding for switching between panes
bind h select-pane -l # Control-a h
bind j select-pane -D # Control-a j
bind k select-pane -U # Control-a k
bind l select-pane -R # Control-a l
# Bind Control-a + X to kill a session
bind X kill-session
# Bind Control-a + C to create a new session
bind C new-session
# split panes using | and - and use the current working directory
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
# Create new window with current path
bind c new-window -c "#{pane_current_path}"
# Unbinding the old keybind for splitting the pane vertically
unbind '"'
# Unbinding the old keybind for splitting the pane horizontally
unbind %
# Disable completely the mouse
set -g mouse off
# Set the default terminal
set -s default-terminal 'kitty'
# Longer workspace names
set -g status-left-length 20
# Reduce the escape time for Neovim
set-option -sg escape-time 10
# Enable focus event for Neovim
set-option -g focus-events on
# Terminal feature specific to Neovim
set-option -sa terminal-overrides ',kitty:Tc'
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
# Tmux plugins
set -g @plugin "janoamaral/tokyo-night-tmux"
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sessionist'
run '~/.tmux/plugins/tpm/tpm'