在Vim的命令模式下导航

我很长一段时间学习Vim的emacs用户。 Emacs允许我使用与任何其他缓冲区相同的导航键盘快捷方式在迷你缓冲区(我在其中发出类似Cx Cs的命令)中导航。 例如,我可以使用Cf向前导航一个字符,即使在迷你缓冲区中也是如此。 我也可以使用箭头键,但它们太遥远了。

是否有任何键盘快捷键在Vim的命令模式(:)下导航,而不使用箭头键 – 相当于emacs Cf,Cb? 谢谢。

添加到Greg Hewgill的回答中,您可以使用q:打开命令行窗口,您可以在其中任何Vim编辑权限。

有些来自Vim的帮助:

 CTRL-B or <Home> cursor to beginning of command-line CTRL-E or <End> cursor to end of command-line CTRL-H <BS> Delete the character in front of the cursor (see |:fixdel| if your <BS> key does not do what you want). <Del> Delete the character under the cursor (at end of line: character before the cursor). CTRL-W Delete the |word| before the cursor. This depends on the 'iskeyword' option. CTRL-U Remove all characters between the cursor position and the beginning of the line. 

我有这些在我的.vimrc

 cnoremap <Ca> <Home> cnoremap <Ce> <End> cnoremap <Cp> <Up> cnoremap <Cn> <Down> cnoremap <Cb> <Left> cnoremap <Cf> <Right> cnoremap <Mb> <S-Left> cnoremap <Mf> <S-Right> 

使用默认的键绑定,vim不提供命令行编辑的非箭头键导航。 但是,有关如何使用:cnoremap命令设置备用密钥绑定的示例,请参阅:help cmdline-editing