如何从 v-imode 拉入系统寄存器? [英] How do I yank into the system register from v-imode?
问题描述
我想在 vi 模式下使用 y
从 zsh 命令中提取文本并将其粘贴到我的网络浏览器/文本编辑器等中.
I'd like to yank text from a zsh command while in vi-mode with y
and paste it into my web-browser/text-editor, etc.
目前似乎在 vi 模式下猛拉文本只允许粘贴回 zsh-有没有人成功地将文本猛拉到系统剪贴板中?
Currently it seems that yanking text while in vi-mode only allows pasting back into zsh- has anyone had success yanking into the system clipboard?
推荐答案
创建一个小部件,执行内部 vi-yank
小部件并将 zle 剪贴板(kill ring 中的当前位置)复制到 X11剪贴板使用 xclip(1)
:
Create a widget that executes the internal vi-yank
widget and copies the zle clipboard (current position in kill ring) to the X11 clipboard using xclip(1)
:
function vi-yank-xclip {
zle vi-yank
echo "$CUTBUFFER" | xclip -i
}
.如果运行 Mac OSX,请将 xclip -i
替换为 pbcoby
.
.Replace xclip -i
with pbcoby
if running Mac OSX.
让 zle 知道该小部件并将其绑定到 y
:
Make that widget known to zle and bind it to y
:
zle -N vi-yank-xclip
bindkey -M vicmd 'y' vi-yank-xclip
这篇关于如何从 v-imode 拉入系统寄存器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!