tmux: add copy/paste hooks
This commit is contained in:
@@ -98,6 +98,12 @@ set -g @plugin 'seebi/tmux-colors-solarized'
|
|||||||
set -g @resurrect-strategy-vim 'session'
|
set -g @resurrect-strategy-vim 'session'
|
||||||
set -g @continuum-restore 'on'
|
set -g @continuum-restore 'on'
|
||||||
|
|
||||||
|
# Load OS-specific settings
|
||||||
|
if-shell "uname | grep -q Linux" "source-file ~/.tmux.linux.conf"
|
||||||
|
if-shell "uname | grep -q Darwin" "source-file ~/.tmux.mac.conf"
|
||||||
|
|
||||||
|
# Load any system-specific/private settings
|
||||||
|
if-shell "[ -f ~/.tmux.private]" "source ~/.tmux.private"
|
||||||
|
|
||||||
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
||||||
run -b '~/.tmux/plugins/tpm/tpm'
|
run -b '~/.tmux/plugins/tpm/tpm'
|
||||||
|
|
||||||
|
|||||||
14
tmux.linux.conf
Normal file
14
tmux.linux.conf
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
# Detect the display server protocol and set clipboard commands
|
||||||
|
if-shell '[ "$XDG_SESSION_TYPE" = "wayland" ]' \
|
||||||
|
'set -g copy-command "wl-copy"; set -g paste-command "wl-paste -n"' \
|
||||||
|
'set -g copy-command "xclip -sel clip -i"; set -g paste-command "xclip -sel clip -o"'
|
||||||
|
|
||||||
|
# Take the buffer and send it to the system clipboard
|
||||||
|
bind C-c run "tmux save-buffer - | $copy_command"
|
||||||
|
|
||||||
|
# y in copy mode takes selection and sends it to system clipboard
|
||||||
|
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "$copy_command"
|
||||||
|
|
||||||
|
# And the reverse - Prefix Ctrl-v fills tmux buffer from system clipboard, then
|
||||||
|
# pastes from buffer into tmux window
|
||||||
|
bind C-v run-shell '$paste_command | tmux load-buffer - \; paste-buffer'
|
||||||
9
tmux.mac.conf
Normal file
9
tmux.mac.conf
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# Prefix Ctrl-C takes what's in the buffer and sends it to system clipboard via pbcopy
|
||||||
|
bind C-c run "tmux save-buffer - | pbcopy"
|
||||||
|
|
||||||
|
# y in copy mode takes selection and sends it to system clipboard via pbcopy
|
||||||
|
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "pbcopy"
|
||||||
|
|
||||||
|
# Prefix Ctrl-v fills tmux buffer from system clipboard via pbpaste, then
|
||||||
|
# pastes from buffer into tmux window
|
||||||
|
bind C-v run "tmux set-buffer \" $(pbpaste)\"; tmux paste-buffer"
|
||||||
Reference in New Issue
Block a user