bash使用vi或emacs

Rec*_*ion 6 bash libreadline

从编程的角度来看,当您将bash shell设置为使用vi或emacs时

set -o vi
Run Code Online (Sandbox Code Playgroud)

要么

set -o emacs
Run Code Online (Sandbox Code Playgroud)

这里到底发生了什么?我一直在读一本书,声称bash shell使用这些编辑器中的任何一个来输入shell本身,但我认为它可能使用了readline.

小智 6

Bash仍在使用readline.Readline使用emacs或vi模式,并在各种编辑器模式之间设置模式切换.您可以检查基本源代码中的lib/readline文件夹以查看各种键绑定.