Vim 如何找到与普通模式命令等效的命令模式?

Vim 如何找到与普通模式命令等效的命令模式?,vim,Vim,我经常想知道普通模式命令的命令模式版本是什么,通常在g///表达式中使用它。例如,“J”的等价物是“join”,而“dd”的等价物是“d”(或者至少看起来是这样)。有没有一个通用的方法来解决这个问题——我缺少的帮助功能,或者只是一个列表 (现在我正在寻找一种与gq相当的命令模式,但这种情况经常发生,因此一般的解决方案会更好。)没有针对所有命令的函数(大多数命令非常简单,有些甚至涉及到切换到其他模式) :join命令实际上是一个例外。要使用普通模式命令,只需使用 :normal J 如果要编写脚

我经常想知道普通模式命令的命令模式版本是什么,通常在g///表达式中使用它。例如,“J”的等价物是“join”,而“dd”的等价物是“d”(或者至少看起来是这样)。有没有一个通用的方法来解决这个问题——我缺少的帮助功能,或者只是一个列表


(现在我正在寻找一种与gq相当的命令模式,但这种情况经常发生,因此一般的解决方案会更好。)

没有针对所有命令的函数(大多数命令非常简单,有些甚至涉及到切换到其他模式)

:join
命令实际上是一个例外。要使用普通模式命令,只需使用

:normal J

如果要编写脚本,请使用
:normal,因为您不应该信任vimrc。

vim中最好的帮助页面之一是index.txt,可通过
:help index
访问。它非常有用,我将它绑定到
。它有显示每种模式下可用的所有命令和击键的部分。你可以打开它,尽情地搜索,当然这一切都是相互关联的


如果您想查看所有可以连接行的方法,请打开它并执行
/join
以查找所有出现的情况。

我没有答案,但一个懒惰的解决方案是只需使用
:normal
,例如
:g/^.\+$/normal gqap
来格式化所有段落。@glts我不知道
:normal
,谢谢!这解决了我的大部分问题。谢谢!我不知道
:normal
——这显然是我试图以错误的方式解决的根本问题。