从 shell 脚本执行 Vim 命令
Executing Vim commands from a shell script
我正在编写一个 Bash 脚本,应该打开 ls
手册页然后展开页面。
我做了什么:
bash$vim +Man\ ls -c Wo
我希望发生的事情是 bash 打开 ls 联机帮助页然后执行 keybind <C-w>o
以展开
这部分 -c Wo
是错误的
是否有实用的方法从 shell 脚本执行 Vim 命令?
-c
和 +
期望命令行模式命令(也称为“Ex 命令”,以 :
开头的命令),但 <C-w>o
是正常的mode命令所以不能直接使用,这里
解决此问题的一种方法是使用 :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
。
我正在编写一个 Bash 脚本,应该打开 ls
手册页然后展开页面。
我做了什么:
bash$vim +Man\ ls -c Wo
我希望发生的事情是 bash 打开 ls 联机帮助页然后执行 keybind <C-w>o
以展开
这部分 -c Wo
是错误的
是否有实用的方法从 shell 脚本执行 Vim 命令?
-c
和 +
期望命令行模式命令(也称为“Ex 命令”,以 :
开头的命令),但 <C-w>o
是正常的mode命令所以不能直接使用,这里
解决此问题的一种方法是使用 :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
。