Configuration Information [Automatically generated, do not change]: Machine: x86_64 OS: linux-gnu Compiler: gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I../. -I.././include -I.././lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/bash-N2nMjo/bash-4.4.18=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-parentheses -Wno-format-security uname output: Linux uncleman.localhost 4.15.0-101-generic #102-Ubuntu SMP Mon May 11 10:07:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux Machine Type: x86_64-pc-linux-gnu
Bash Version: 4.4 Patch Level: 20 Release Status: release Description: Setting/unsetting posix mode interferes with keybindings. This is a problem e.g. with completion functions that use process substitution; they need to control the posixness state in order to not run into syntax errors when they happen to be invoked in posix mode shells. This is not limited to the above bash version, it has been reported to happen with much newer ones as well. More info and background at https://github.com/scop/bash-completion/issues/190 Repeat-By: Add these lines to ~/.inputrc: set editing-mode vi Tab: menu-complete Then, in a new shell: $ bind -q menu-complete menu-complete can be invoked via "\C-i", "\C-n". $ shopt -uo posix # or -so, or set [+-]o $ bind -q menu-complete menu-complete can be invoked via "\C-n". Notice how \C-i was lost. It does not matter whether setting posix actually changed its state, happens also e.g. when unsetting when already unset.