繁体   English   中英

从终端打开Vim并以正常模式使用某些命令?

[英]Opening Vim and using some command in normal mode from the Terminal?

我希望能够在正常模式下打开Vim并自动执行一些命令(在这种情况下,打开两个缓冲区会在一行的一行中放置一个标记,折叠另一行,然后转到文件底部)。 我发现最接近的东西是使用-c或+命令行开关,但是它们在Ex模式下执行命令。

例如,我希望能够编写如下内容:

vim -some ":e a<CR>:e b<CR>23Gma55GzfG"

执行所有命令。

为什么不喜欢normal命令? 它不能执行ex模式命令,但可以使用所有其他模式:

vim -c 'e a' -c 'e b' -c 'normal! 23Gma55GzfG'

如果您要确保它不会使用任何映射,则必须在命令末尾添加Bang。

_vimrc文件中定义此命令(您可以使用Onstart以外的名称命名,但必须以大写字母开头)

:command -nargs=1 Onstart <args>

从命令行,您应该可以调用此命令:

gvim c:\file.txt -c "Onstart e a<CR>:e b<CR>23Gma55GzfG"

更正

不,我误会了。 您只需要管道命令:

vim -c "e a | e b | normal!23Gma55GzfG"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM