如何将Shift-Tab键盘快捷键绑定到 Bash 中的操作?
我试图Shift-Tab通过以下方式发现组合的关键代码
# sed -n l
^[[Z
\033[Z$
^C
和
# read a ; echo $a | hexdump -cC
^[[Z
0000000 033 [ Z \n
00000000 1b 5b 5a 0a |.[Z.|
00000004
基于此,我假设关键代码是\e[Z
.所以bind "\e[Z":menu-complete-backward
应该这样做。然而,它将操作绑定到\。
$ bind -p > bind.before
$ bind "\e[Z":menu-complete-backward
$ bind -p > bind.after
$ diff -y --suppress-common-lines bind.before bind.after
# menu-complete-backward (not bound) | "\\": menu-complete-backward
"\\": self-insert <
答案1
尝试单引号参数:
bind '"\e[Z":menu-complete-backward'