M-x for Bash/Readline?

Readline 提供了很多命令,如:

  • beginning-of-line (C-a)
  • start-kbd-macro (C-x ()
  • call-last-kbd-macro (C-x e)
  • previous-history (C-p)

它们必须要绑定按键后才能用,不能像 Emacs 或者 ZSH 那样利用 M-x 输入名称也可以调用。而且自行实现一个 M-x 似乎也不可能,比较遗憾。

表示竟然不知道 zsh 有这功能。

我也不知道zsh有输入命令名称就调用的功能。

默认不是按 Alt-x 触发,而是用 ESC x。

1 个赞

没太明白。

这是要给 minibuffer 再实现一个 minibuffer?

如果把命令行的编辑区域当中正常的 Emacs Buffer 的话,Bash / Readline 是缺少一个 MiniBuffer,看下 ZSH 的应该就容易明白些:

C-aM-x beginning-of-line 的效果一样,都是移动光标至行首。

很遗憾,bash似乎没有这功能。 https://unix.stackexchange.com/questions/52578/execute-a-readline-function-without-keybinding