我希望能够打开Vim并在正常模式下自动发出一些命令(在这种情况下,打开两个缓冲区,在一行中将一个标记放在一行中,折叠另一行,然后转到文件的底部) 。我发现最接近的是使用-c或+命令行开关,但这些命令在Ex模式下执行。
例如,我希望能够写出这样的内容:
vim -some ":e a<CR>:e b<CR>23Gma55GzfG"
执行所有命令。
答案 0 :(得分:4)
你为什么不喜欢normal
命令?它无法执行ex模式命令,但能够使用所有其他模式:
vim -c 'e a' -c 'e b' -c 'normal! 23Gma55GzfG'
如果你想确保它不会使用任何映射,那么在命令结束时需要使用Bang。
答案 1 :(得分:-1)
在_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"