从 shell 脚本执行 Vim 命令

时间:2021-02-17 06:05:39

标签: bash vim

我正在编写一个 Bash 脚本,它应该打开 ls 手册页然后展开页面。

我做了什么:
bash$ vim +Man\ ls -c Wo
我希望 bash 打开 ls 联机帮助页然后执行 keybind <C-w>o 来展开
这部分-c Wo错了

有没有实用的方法可以从 shell 脚本执行 Vim 命令?

1 个答案:

答案 0 :(得分:3)

-c+ 需要命令行模式命令(又名“Ex 命令”,以 : 开头的命令)但 <C-w>o 是普通模式命令所以这里不能直接使用。

解决此问题的一种方法是使用 :help :normal 和您的 shell 通过 <C-v> 插入控制字符的能力:

$ vim +Man\ ls +normal\ ^Wo

其中 ^W 是通过按 <C-w> 后跟 <C-v> 获得的文字 <C-w> 字符。

但是使用等效于 <C-w>o 的命令行模式似乎是一个更好的主意:

$ vim +Man\ ls +wincmd\ o

:help :wincmd

相关问题