如何从 v-imode 拉入系统寄存器? [英] How do I yank into the system register from v-imode?

查看:21
本文介绍了如何从 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆