在zsh
in 中vim mode
,我写了一些东西
foo foo bar bar
然后我点击Esc进入正常模式并输入 :
foo foo bar bar
execute: _
然后,我认为我可以做到这一点,我想搜索并替换bar
为baz
foo foo bar bar
execute: s/bar/baz/g_
然后我尝试按 Enter 键,但这不起作用。我只能从execute
使用Ctrl+返回c。
我怎样才能执行命令?
我用正常的方式尝试了这个.zshrc
,根本没有任何东西.zshrc
。
答案1
模式vicmd
尽管有这个名字,但它是 Vi 的正常模式命令。启动的提示符:
不是 Vi 的 ex-mode 命令,而是运行ZLE(Zsh 的行编辑器)命令:
$ echo foo
execute: e_
edit-command-line emacs-forward-word end-of-history end-of-line-hist exchange-point-and-mark execute-named-cmd expand-history expand-or-complete-prefix
emacs-backward-word end-of-buffer-or-history end-of-line end-of-list execute-last-named-cmd expand-cmd-path expand-or-complete expand-word
Enter当输入唯一前缀时,按将起作用(即,假设您键入ed
,它与 匹配edit-command-line
,然后Enter将起作用)。您可以Tab按 查看匹配的命令。