2010-12-30 17:05:25 +0000 2010-12-30 17:05:25 +0000
205
205

如何在Vi/Vim中选择所有的文本?

如何在Vi/Vim中选择一个文件中的所有文本(1000行左右),复制后粘贴到Google Docs中?

答案 (12)

169
169
169
2012-03-26 21:30:22 +0000

最简单、最快的方法是使用: : % y +,然后到Google Docs(或其他地方)粘贴。解释:

  • % 引用下一个命令来处理所有的行
  • y 将这些行
  • + 复制到系统剪贴板上 另一种方法是g g “ + y G,但你很可能会承认上面的方法更快更方便。
106
106
106
2014-05-29 15:09:52 +0000

我用gggVG来实现这个目的(需要在正常模式下运行)。

我甚至为此目的重映射了Ctrl+A,因为我真的不需要用快捷键(默认的Ctrl+A映射)来增量整数。

41
41
41
2010-12-30 17:21:23 +0000

你可以使用cat file,然后选择输出,如果你需要将其粘贴到浏览器中,你可以使用

,对于vi来说,你可以这样选择所有的文本并将其写入一个新文件:

shift v -- visual mode
shift g -- jump to eof
"*y -- yank select text
:e my_new_file -- create a new file
"*p -- paste into a new file

理论上,这应该在Linux和Windows上都可以工作–我在Mac上试过,但没有成功。

17
17
17
2014-12-29 12:47:54 +0000

使用 ggVG,在测试的顶部输入 “gg",然后输入 VG。

9
9
9
2017-07-17 04:07:33 +0000

我在CentOS-7环境下使用Vim 7.4。

:%y

&001

p 在下一个文件中,我选择了所有的文本,然后在下一个文件中选择一个完整的副本。

7
7
7
2010-12-30 19:19:29 +0000

根据系统剪贴板是+还是是系统剪贴板。(在很多unix系统中,+是中间鼠标点击时的鼠标选择缓冲区,而是系统剪贴板)。

3
3
3
2015-01-08 19:05:10 +0000

对于 Mac,使用 pbcopy(粘贴板复制):

cat file.txt | pbcopy

现在,file.txt 的内容就在剪贴板上,可以粘贴到另一个应用程序(如浏览器)。

1
1
1
2010-12-30 17:28:07 +0000

如果你使用的是linux桌面,你可以用xclip或xsel加载到剪贴板中。对于这种大小的东西,你可能只是想使用google docs中的上传功能。

1
1
1
2013-07-12 14:20:22 +0000

另一种方法是:

你按键盘上的v键,将VIM转为VISUAL

然后通过向下滚动

^+ INSERT复制

SHIFT +INSERT来选择所有的文字,然后在Google Docs上粘贴到你想要的地方。

0
0
0
2010-12-30 17:34:56 +0000

不使用vi,你可以使用他们的API和cURL上传文本到google docs

0
0
0
2010-12-30 17:38:44 +0000

参见http://vim.wikia.com/wiki/Accessing_the\system\clipboard 关于如何做到这一点的选项。(如果编译成 “*应该是指系统剪贴板)。那里也有关于如何用vim使用xsel的说明。

0
0
0
2014-08-19 07:27:45 +0000
cat <your file name>
cat bobis.txt
```会回传文件内容。现在选择、滚动、复制、粘贴。 
Game Over 


Ex.