这是在 bash 中,在set editing-mode vi
我的~/.inputrc
.
假设我的命令行看起来像这样
$ echo I am Enrico
并且我的光标位于m
.
如果我点击Shift+ F6,命令行就会变成
$ echo I aM eNRICo
为什么会这样呢?
在 Vim 内部,如果我进入插入模式并输入Ctrl+ v,然后输入Shift+ F6,我会得到^[[29~
第一个字符表示为 的位置,并且它是我可以通过+和 then^[
获得的转义字符。CtrlvEscape
现在,我知道~
是为了切换字母的大小写,但在^[[29~
最后~
,所以在它之前的任何动作都会在它之前完成,~
可以做任何事情,对吧?
此外,在 中:h ~
,我看到~
除非设置,否则不会采取行动'tildeop'
,我不知道这对于 bash 命令行 vi 编辑模式意味着什么......但无论如何,即使出于某种原因我设置了该选项,~
也会采取{motion}
之后,而不是之前,所以我仍然不明白怎么^[[29~
可能是~{motion}
。