在bash
with 中set -o vi
,我使用
bind '"\C-]":"\C-[A\C-u cb <<"EOF"\n\C-y\nEOF\n"'
^]
在插入模式下将cat
当前行添加到剪贴板包装器 ( cb
)。
我如何在zsh
(with set -o vi
) 中模拟这一点?
答案1
这些对我有用:
copy-to-xclip() {
zle kill-buffer
print -rn -- $CUTBUFFER | cb
}; zle -N copy-to-xclip
bindkey -M viins "^]" copy-to-xclip
paste-xclip() {
killring=("$CUTBUFFER" "${(@)killring[1,-2]}")
CUTBUFFER=$(xclip -selection clipboard -o)
zle yank
}; zle -N paste-xclip
bindkey -M vicmd "p" paste-xclip