谁能帮我这个:
我试图弄清楚如何在不同终端上的 2 个不同的 vim 实例之间复制和粘贴文本(使用 iterm2 或 mac 终端)。如果我执行“:set mouse=a”,我可以使用鼠标执行此操作,但我希望能够使用键盘执行此操作。
我用谷歌搜索了一下,它说你可以使用“*”或“+”寄存器来复制/粘贴到/从系统剪贴板,但是当我在 vim 中输入 * 或 + 时,mac 会发出当你发出的声音之一不能做某事。我也做过 ":set clipboard=unnamed"但这也没有用。
我正在使用 Mac OSX 10.7 (Lion) 和 iTerm2 或 Mac 终端。
谢谢您的帮助
最佳答案
您能否添加 :version
的输出? ?
我可以用 yy
拉动或 y
在 Terminal.app 窗口 A 中运行的一个 Vim 实例中并放入 p
或 P
在 Terminal.app 窗口 B 中运行的另一个 Vim 实例中,我的 ~/.vimrc
中有这一行:
set clipboard+=unnamed
不使用特定的剪贴板寄存器(
*
或 +
)。为什么你有两个 Vim 实例在不同的终端上运行? SSH/本地?如果一个在 SSH session 中,则拉/放将不起作用,因为两台机器(本地/远程)不共享相同的剪贴板。
编辑
我怀疑 Vim 没有使用正确的标志编译。显然是这样的。
由于您使用的是 Mac OS X 的默认 Vim,我认为您不需要重新编译它甚至编译任何东西,因为它通常会导致更多的问题而不是它的值(value)。
相反,下载最新的 MacVim 构建并使用 MacVim 包中的 (CLI) Vim 可执行文件:它具有与 MacVim 相同的所有功能(当然,在 CLI 的约束范围内)。
将此行添加到您的
~/.bashrc
或 ~/.profile
或用于放置别名和自定义 bash 函数的任何地方:alias vim='/path/to/MacVim.app/Contents/MacOS/Vim'
关于macos - 在不同的mac终端之间通过键盘复制和粘贴vim?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8134647/