Add neovim config, migrate tmux to vim-style bindings
- Add kickstart-based neovim config with catppuccin, telescope, LSP, treesitter, DAP, vimtex, harpoon, and lazygit integration - Remap tmux pane navigation and splits to hjkl / s / v Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,36 +1,32 @@
|
||||
# tmux.conf — keybindings mirror emacs window/windmove conventions
|
||||
# tmux.conf — vim-style keybindings
|
||||
|
||||
# Emacs-style splits (mirrors C-x 2 / C-x 3)
|
||||
# Splits
|
||||
unbind '"'
|
||||
unbind %
|
||||
bind 2 split-window -v -c "#{pane_current_path}" # horizontal split (below)
|
||||
bind 3 split-window -h -c "#{pane_current_path}" # vertical split (right)
|
||||
bind s split-window -v -c "#{pane_current_path}"
|
||||
bind v split-window -h -c "#{pane_current_path}"
|
||||
|
||||
# Emacs-style close (mirrors C-x 0 / C-x 1)
|
||||
bind 0 kill-pane
|
||||
bind 1 kill-pane -a
|
||||
# Close
|
||||
bind x kill-pane
|
||||
|
||||
# Emacs-style cycle (mirrors C-x o)
|
||||
bind o select-pane -t :.+
|
||||
# Pane navigation: prefix+hjkl and M-hjkl without prefix
|
||||
bind h select-pane -L
|
||||
bind j select-pane -D
|
||||
bind k select-pane -U
|
||||
bind l select-pane -R
|
||||
|
||||
# Pane navigation: prefix+Arrow everywhere, M-S-Arrow without prefix
|
||||
bind Left select-pane -L
|
||||
bind Right select-pane -R
|
||||
bind Up select-pane -U
|
||||
bind Down select-pane -D
|
||||
bind -n M-h select-pane -L
|
||||
bind -n M-j select-pane -D
|
||||
bind -n M-k select-pane -U
|
||||
bind -n M-l select-pane -R
|
||||
|
||||
bind -n M-S-Left select-pane -L
|
||||
bind -n M-S-Right select-pane -R
|
||||
bind -n M-S-Up select-pane -U
|
||||
bind -n M-S-Down select-pane -D
|
||||
|
||||
# Copy mode with emacs keys
|
||||
set-window-option -g mode-keys emacs
|
||||
# Copy mode with vi keys
|
||||
set-window-option -g mode-keys vi
|
||||
|
||||
# General
|
||||
set -g mouse on
|
||||
set -g history-limit 10000
|
||||
set -sg escape-time 0 # no delay for escape — important for emacs
|
||||
set -sg escape-time 0 # no delay for escape — important for vim
|
||||
set -g focus-events on
|
||||
set -g default-terminal "tmux-256color"
|
||||
set -as terminal-overrides ',*:Tc' # true color passthrough
|
||||
|
||||
Reference in New Issue
Block a user