zsh 中的可视 (Vim) 模式下的 Yank 不会复制到剪贴板以便在其他应用程序中使用 Ctrl + d 进行粘贴

ecj*_*cjb 2 macos vim zsh copy-paste key-bindings

我最近从 转到bashzshzsh.

当我在 Visual 中突出显示一个字符串并用 拉出它时y,我可以毫无问题地将其粘贴到 zsh 中。但是,当我尝试将相同的字符串粘贴到外部zsh(使用命令Ctrl+ d)时,它不起作用。相反,最后复制的带有Ctrl+的项目c将被复制到那里。

是否有额外的命令要写入.zshrc

小智 6

默认情况下,zsh 猛拉到它自己的内部寄存器。幸运的是,就像在 Vim 中一样,拉入系统剪贴板相当简单。

# vi mode
bindkey -v

# Yank to the system clipboard
function vi-yank-xclip {
    zle vi-yank
   echo "$CUTBUFFER" | pbcopy -i
}

zle -N vi-yank-xclip
bindkey -M vicmd 'y' vi-yank-xclip

Run Code Online (Sandbox Code Playgroud)

替换pbcopy为您系统的方法,例如,xclip如果您使用的是 Linux。

进一步阅读和几个替代方案:

(这个问题是重复的。)