Bash 5 readline vim 模式前缀未显示

Bash 5 readline vim mode prefixes not showing

.inputrc 命令 vi-cmd-mode-stringvi-ins-mode-string 无效。 bash 提示符的开头不显示任何前缀。但是输入模式确实是vim(我可以在命令/插入模式之间切换)。

我使用的是 macOS Catalina 10.15.1。我已经安装了 bashbrew install bash(还测试了 brew install --HEAD 在本地编译)。

我的 bash 版本是 5.0.11。对于自 bash 4.4 ()

以来可用的 vi-ins|cmd-mode-string 应该足够了
bash --version
GNU bash, version 5.0.11(1)-release (x86_64-apple-darwin19.0.0)
Copyright (C) 2019 Free Software Foundation, Inc.

我还通过 brew 安装了 readline,但这没有任何改变。

我的 .inputrc :

$if Bash
    set editing-mode vi
$endif

$if mode=vi
    set show-mode-in-prompt on
    set vi-cmd-mode-string bbbbb
    set vi-ins-mode-string aaaaa
$endif

我在这里错过了什么?对于这个 bash 版本,我希望 bbbbaaaa 显示为 bash 提示符前缀。

好的。刚刚发现这不是自制软件 bash 版本的问题。

我的 macOS 用户配置仍然使用默认的 bash 版本 /bin/bash (bash 3) 而不是自制版本 /usr/local/bin/bash。 您可以使用 https://www.howtogeek.com/444596/how-to-change-the-default-shell-to-bash-in-macos-catalina/.

更改您的

由于 bash --version 测试,我花了一些时间才明白这一点。此测试可在您的 $PATH 中访问的第一个 bash 的版本。不是用于打开 shell 的 bash。