我尝试将文本从 Vim 窗口复制到某个地方,但没成功。我在 Google 上找到的方法也无济于事。例如,使用寄存器“* 和 “+”。
命令vim版本是(Ubuntu 12.04.Vim 7.3):
vim --version | grep clipboard
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
-xterm_clipboard -xterm_save
你能帮我解决这个问题吗?我应该使用其他版本的 vim 吗?或者有什么方法可以将文本从 Vim 复制到其他地方?
答案1
您可能正在使用vim-tiny
。
做
$ vim --version | grep version
并汇报结果。
如果您正在使用“tiny”,您应该安装适当的版本。
尝试
$ sudo apt-get install vim-nox
和/或
$ sudo apt-get install vim-gnome
答案2
如果您只安装完整版 vim,并编译所有必需的内容,效果会更好。但是,如果您出于某种原因无法执行此操作,那么您至少有两个选择:在其他程序(如 gedit)中打开文件并从那里复制,或者使用xclip
或xsel
将所需文本放入剪贴板。示例用法:
:'<,'>w !xclip -i
将视觉选择的行范围发送到剪贴板(默认情况下:*
在 vim 中称为主/鼠标缓冲区,使用-sel clip
附加参数将其更改为称为剪贴板的缓冲区+
)和
:call system('xclip -i', @")
将默认("
)寄存器内容发送到剪贴板。