aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorToby Vincent <tobyv@tobyvin.dev>2024-08-17 17:35:56 -0500
committerToby Vincent <tobyv@tobyvin.dev>2024-08-17 17:35:56 -0500
commit2084500d363abc0fa4728053fad8577247b5aeab (patch)
treed5e64468dc2140082c7c17700fc0b7c680e8dda4
parentfe779d555010ef587d530aad29131569467bafcc (diff)
fix(zsh,tmux): use OSC52 for system clipboard
-rw-r--r--tmux/.config/tmux/tmux.conf1
-rw-r--r--zsh/.config/zsh/.zshrc.d/20-zsh_vi_mode.zsh37
2 files changed, 9 insertions, 29 deletions
diff --git a/tmux/.config/tmux/tmux.conf b/tmux/.config/tmux/tmux.conf
index 0c99662..6ea9962 100644
--- a/tmux/.config/tmux/tmux.conf
+++ b/tmux/.config/tmux/tmux.conf
@@ -16,6 +16,7 @@ set -g prefix C-a
set -g base-index 1
set -g pane-base-index 1
set -g detach-on-destroy off
+set -g set-clipboard on
set -g status-keys vi
set -g history-limit 10000
diff --git a/zsh/.config/zsh/.zshrc.d/20-zsh_vi_mode.zsh b/zsh/.config/zsh/.zshrc.d/20-zsh_vi_mode.zsh
index 85d6f91..577ab93 100644
--- a/zsh/.config/zsh/.zshrc.d/20-zsh_vi_mode.zsh
+++ b/zsh/.config/zsh/.zshrc.d/20-zsh_vi_mode.zsh
@@ -6,56 +6,35 @@ zvm_config() {
}
function zvm_after_init() {
+ zvm_set_cb() {
+ printf "\e]52;c;%s\a" "$(printf '%b' $1 | openssl base64 -A)"
+ }
+
functions -c zvm_vi_yank _zvm_vi_yank
unfunction zvm_vi_yank
zvm_vi_yank() {
_zvm_vi_yank
- echo -en "${CUTBUFFER}" | wl-copy
+ zvm_set_cb "${CUTBUFFER}"
}
functions -c zvm_vi_delete _zvm_vi_delete
unfunction zvm_vi_delete
zvm_vi_delete() {
_zvm_vi_delete
- echo -en "${CUTBUFFER}" | wl-copy
+ zvm_set_cb "${CUTBUFFER}"
}
functions -c zvm_vi_change _zvm_vi_change
unfunction zvm_vi_change
zvm_vi_change() {
_zvm_vi_change
- echo -en "${CUTBUFFER}" | wl-copy
+ zvm_set_cb "${CUTBUFFER}"
}
functions -c zvm_vi_change_eol _zvm_vi_change_eol
unfunction zvm_vi_change_eol
zvm_vi_change_eol() {
_zvm_vi_change_eol
- echo -en "${CUTBUFFER}" | wl-copy
- }
-
- functions -c zvm_vi_put_after _zvm_vi_put_after
- unfunction zvm_vi_put_after
- zvm_vi_put_after() {
- CUTBUFFER=$(wl-paste)
- _zvm_vi_put_after
- zvm_highlight clear # fix weird highlighting
- }
-
- functions -c zvm_vi_put_before _zvm_vi_put_before
- unfunction zvm_vi_put_before
- zvm_vi_put_before() {
- CUTBUFFER=$(wl-paste)
- _zvm_vi_put_before
- zvm_highlight clear # fix weird highlighting
- }
-
- functions -c zvm_vi_replace_selection _zvm_vi_replace_selection
- unfunction zvm_vi_replace_selection
- zvm_vi_replace_selection() {
- CUTBUFFER=$(wl-paste)
- _zvm_vi_replace_selection
- zvm_highlight clear # fix weird highlighting
- echo -en "${CUTBUFFER}" | wl_copy
+ zvm_set_cb "${CUTBUFFER}"
}
}