我可以用例如
的标记来做:'a,'b w! /tmp/myFile
但是使用拉线的合成文件是什么?
由于
答案 0 :(得分:5)
您可以使用:redir
(使用注册r
):
:redir! > /tmp/myFile | silent echon @r | redir END
如果你想追加,你可以使用redir >> /tmp/myFile
(注意:此处没有!
,因为“如果存在则覆盖”是没有意义的。)
答案 1 :(得分:2)
您可以在命令模式下调用vim函数
下面的命令会将被排除的行写入/tmp/myFile
。
:call writefile(split(getreg('"'), '\n'), '/tmp/myFile')
注意:抽出的线条位于未命名的注册表中(""
,请输入:help registers
表示帮助)。
为什么不在视觉上做。每个人都可以理解的3个基本命令:
:tabe
- 打开新标签p
- 粘贴到缓冲区:w /tmp/myFile.txt
- 保存文件答案 2 :(得分:2)
其他答案使用:redir
或writefile()
等特殊命令写入新文件。最直接的方法是打开文件的缓冲区。这样,您就可以使用普通p
/ :put
。作为奖励,文件保留在缓冲区列表中,因此以后可以轻松调用/编辑。
:split /tmp/myFile | put! | write | bdelete
或缩短:
:sp /tmp/myFile|pu!|w|bd