From ee1971cca1eb079043501a1015370fce68e1858b Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 1 Nov 2026 09:50:10 +0800 Subject: mac: vimrc and tmux.conf work in progress --- mac/tmux.conf | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'mac/tmux.conf') diff --git a/mac/tmux.conf b/mac/tmux.conf index fc4b931..5afc0b5 100644 --- a/mac/tmux.conf +++ b/mac/tmux.conf @@ -4,8 +4,30 @@ setw -g mode-keys vi # Mouse selection set -g mouse on +# Persistent pane index labels (top-left of each pane's border) +set -g pane-border-status top +set -g pane-border-format "#P" + +# Explicitly swap current pane with a pane index you type in +bind-key P command-prompt -p "swap with pane #:" "swap-pane -d -t '%%'" +# Manual: :swap-pane -s -t + +# Vim-style pane resizing (prefix + H/J/K/L), magnitude 1 +bind -r H resize-pane -L 1 +bind -r J resize-pane -D 1 +bind -r K resize-pane -U 1 +bind -r L resize-pane -R 1 + # v to start selection, y to yank (like vim) bind-key -T copy-mode-vi v send-keys -X begin-selection -bind-key -T copy-mode-vi y send-keys -X copy-pipe-no-clear "pbcopy" -bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-no-clear "pbcopy" -bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-no-clear "pbcopy" +# macOS: pbcopy. Linux: wl-copy/xclip when usable, else just drain (tmux's own +# buffer + set-clipboard/OSC 52 still apply). Netcat send is the same on both. +if-shell 'uname | grep -q Darwin' { + bind-key -T copy-mode-vi y send-keys -X copy-pipe-no-clear "bash -c 'tee >(pbcopy) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" + bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-no-clear "bash -c 'tee >(pbcopy) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" + bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-no-clear "bash -c 'tee >(pbcopy) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" +} { + bind-key -T copy-mode-vi y send-keys -X copy-pipe-no-clear "bash -c 'tee >(wl-copy 2>/dev/null || xclip -selection clipboard 2>/dev/null || cat >/dev/null) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" + bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-no-clear "bash -c 'tee >(wl-copy 2>/dev/null || xclip -selection clipboard 2>/dev/null || cat >/dev/null) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" + bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-no-clear "bash -c 'tee >(wl-copy 2>/dev/null || xclip -selection clipboard 2>/dev/null || cat >/dev/null) | openssl enc -aes-256-cbc -pbkdf2 -pass pass:YourPassword | nc -w 1 p.noml.ch 5023 >/dev/null 2>&1'" +} -- cgit