如何选择全部并在vim插入模式下复制?还有另一种方法可以在正常模式下进行吗?
我尝试过视觉模式和gg并使用shift + gg来选择所有然后然后猛拉,但是这并没有将它传输到剪贴板,以便能够将其粘贴到另一个应用程序中,如skype或chrome浏览器。
我确信这是一项常见的任务,而且我的智能手机比我更多,请随时与我分享。
答案 0 :(得分:27)
在正常模式下:
克 克 “ + ý
在ex模式中:
:%y+
答案 1 :(得分:13)
您的问题中缺少一些重要信息:
$ vim --version
的输出?如果您的Vim是使用剪贴板支持构建的,那么您应该在正常模式下使用这样的剪贴板寄存器:
gg"+yG
如果您的Vim没有剪贴板支持,您可以设法通过其他程序将文本从Vim复制到您的操作系统剪贴板。这很大程度上取决于你的操作系统,但你没有说它是什么所以我们无法提供帮助。
但是,如果您的Vim瘫痪,最好的办法是安装一个带剪贴板支持的正确版本,但我无法告诉您是怎么回事,因为我不知道您使用的操作系统。
修改强> 的
在基于debian的系统上,以下命令将使用clipboard,ruby,python ... support安装一个合适的Vim。
$ sudo apt-get install vim-gnome
答案 2 :(得分:5)
@swpd's回答改进了
我使用 ,
作为领导者密钥,而 ,a
快捷方式可以解决问题
如果您更喜欢 ,a
快捷方式
map <Leader>a :%y+<CR>
我使用 Ctrl y
快捷方式复制
vmap <C-y> y:call system("xclip -i -selection clipboard", getreg("\""))<CR>:call system("xclip -i", getreg("\""))<CR>
,v
以粘贴
nmap <Leader>v :call setreg("\"",system("xclip -o -selection clipboard"))<CR>p
在使用之前,您必须安装 xclip
$ sudo apt-get install xclip
修改:当您使用:%y+
时,它只能粘贴到Vim vim Ctrl+Insert
快捷方式。
和
map <C-a> :%y+<Esc>
与我的Vimrc中的任何设置都没有冲突。
答案 3 :(得分:0)
ggVG
将从头到尾选择