Terminal 在终端的正常模式下打开Vim并使用一些命令?

Terminal 在终端的正常模式下打开Vim并使用一些命令?,terminal,vim,Terminal,Vim,我希望能够在正常模式下打开Vim并自动发出一些命令(在这种情况下,打开两个缓冲区,在一行的一行中放置一个标记,折叠另一行,然后转到文件的底部)。我发现的最接近的方法是使用-c或+命令行开关,但是这些开关在Ex模式下执行命令 例如,我希望能够写出如下内容: vim -some ":e a<CR>:e b<CR>23Gma55GzfG" vim-some:ea:eb23gma55gzfg” 执行所有命令。在您的\u vimrc文件中定义此命令(您可以将其命名为Onstar

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

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

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

执行所有命令。

在您的
\u vimrc
文件中定义此命令(您可以将其命名为Onstart以外的名称,但必须以大写字母开头)


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

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

如果您想确保它不会使用任何映射,则需要在命令末尾发出砰的一声。

当然我喜欢普通命令,我只是不知道它。谢谢这将抛出
E172
(«只允许一个文件名»错误)。如果没有ex-mode
normal
命令,这将永远不会让您执行正常模式命令。真的是两次否决票吗?出于尴尬,我很想删除它,但我认为我的最终答案优于公认的答案。管道在我看来确实不错。我会编辑文章中“错误”的部分。
gvim c:\file.txt -c "Onstart e a<CR>:e b<CR>23Gma55GzfG"
vim -c "e a | e b | normal!23Gma55GzfG"
vim -c 'e a' -c 'e b' -c 'normal! 23Gma55GzfG'