热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:如何在vim中将选定的行复制到剪贴板

篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何在vim中将选定的行复制到剪贴板相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何在vim中将选定的行复制到剪贴板相关的知识,希望对你有一定的参考价值。



如何在vim中将选定的行复制到剪贴板。我知道如何为all text files做这件事,但我想为选定的线做。谢谢!


答案

SHIFTV让您进入选择线模式。然后“* y将当前选定的行拉到*寄存器(剪贴板)。有不同用途的quite a few寄存器。有关selection and drop registers*寄存器在Windows和Linux上的差异的详细信息,请参阅+部分。


另一答案

如果您使用的是Linux并且使用的是VI.7版本7.3.74或更高版本(从Ubuntu 11.10开始安装的版本满足此要求),您可以执行此操作

set clipboard=unnamedplus

这会将被拉动的文本放入全局剪贴板,并允许您从全局剪贴板粘贴,而无需使用任何特殊寄存器。与ldigas的解决方案不同,这也适用于非gui版本的VIm。


另一答案

set guioptions+=a

呃,简而言之,无论何时你选择/抽出一些把它放在剪贴板中的东西(不是Vim,而是窗口系统的全局键盘)。这样你就不必考虑将东西放入特殊的寄存器中。


另一答案

对于GVIM,点击v进入视觉模式;选择文本并点击Ctrl+Insert将选择复制到全局剪贴板。

从菜单中你可以看到快捷键是"+y,即按住Shift键,然后按",然后按+然后释放Shift并按y(与Shift + Insert相比很麻烦)。


另一答案

如果您在MAC OSX中使用vim,不幸的是它附带旧版本,并且不符合剪贴板选项。幸运的是,自制软件可以轻松解决这个问题。

安装vim:

brew install vim --with-lua --with-override-system-vim

安装gui版的vim:

brew install macvim --with-lua --with-override-system-vim

重启终端才能生效。

将以下行追加到〜/ .vimrc

set clipboard=unnamed

现在你可以使用yy复制vim中的行并在系统范围内粘贴它。


另一答案

如果你没有安装“xclip”......

sudo apt-get install xclip

Xclip将数据放入“选择/突出显示”剪贴板,您可以在其中间单击以粘贴,而不是“ctrl + v”

在vim中使用ex命令:

7w !xclip

要么

1,7w !xclip

要么

%w !xclip

然后只需中键单击即可粘贴到任何其他应用程序中......


另一答案

如果vim是使用剪贴板支持编译的,那么你可以使用"*y含义:yank视觉选择文本到寄存器*('*'用于剪贴板)

如果没有剪贴板支持,我认为只有其他方法是在视觉上选择vim中的文本后使用Ctrl+Insert


另一答案

将以下代码添加到.vimrc中:

if has('clipboard')
if has('unnamedplus') " When possible use + register for copy-paste
set clipboard=unnamed,unnamedplus
else " On mac and Windows, use * register for copy-paste
set clipboard=unnamed
endif
endif

另一答案

我已将以下行添加到我的.vimrc

vnoremap "+y

这允许您通过按F5将所选文本复制到剪贴板。您必须处于可视模式才能工作。



推荐阅读
author-avatar
想挽回的-谎言
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有