我shift-tab
必须shell-expand-line
在我的.inputrc
.但是,我还想shift-tab
在执行完后插入一个空格字符shell-expand-line
。我怎样才能做到这一点?
这就是我.inputrc
目前的样子:
"^[[Z": shell-expand-line
这^[[Z
就是shift-tab
看起来的样子。我尝试了以下可能性,但它们不起作用:
"^[[Z": "shell-expand-line "
"^[[Z": shell-expand-line " "
"^[[Z": shell-expand-line" "
答案1
绑定必须指定内置命令或文本宏(将插入的字符串),而不是两者的组合。但宏可以包含另一个绑定键序列做指定命令以及要插入的任何字符。由于shell-expand-line
已经在 bash 中绑定到 CMe,所以您需要做的就是
"\e[Z": "\e\C-e "
如果您想使用尚未具有此类绑定的命令,则可以创建一个中间绑定,例如
"\C-\xff": shell-expand-line
"\e[Z": "\C-\xff "