从事各种基础的Readline-GNU CLI和这将极大地加快了我,如果有办法有括号和引号自动关闭,当你键入。
因此键入'
或(
在击(或其他的CLI)实际上将追加闭引号或托架''
或()
并将光标其间进行写入。
我环顾四周相当长的一段时间,试图找出相关的(比如什么~/.inputrc
设置),但没有发现任何东西,我不知道这是在所有实现的。 任何意见,将不胜感激。
从事各种基础的Readline-GNU CLI和这将极大地加快了我,如果有办法有括号和引号自动关闭,当你键入。
因此键入'
或(
在击(或其他的CLI)实际上将追加闭引号或托架''
或()
并将光标其间进行写入。
我环顾四周相当长的一段时间,试图找出相关的(比如什么~/.inputrc
设置),但没有发现任何东西,我不知道这是在所有实现的。 任何意见,将不胜感激。
这是一个有点棘手,但可行的。 作为bash
命令:
bind '"(" "\C-v()\e[D"'
bind '"\"" "\C-v\"\C-v\"\e[D"'
作为设置.inputrc
(因此使用任何程序readline
获取行为):
"(": "\C-v()\e[D"
"\"": "\C-v\"\C-v\"\e[D"
您可以前缀使用Control-V的每个关键类型为“普通”引号和左括号不触发自动关闭行为。
上述假定的Emacs键绑定。 对于六个绑定,使用
bind '"(": "\C-v()\ei"'
bind '"\"" "\C-v\"\C-v\"\ei"'
要么
"(": "\C-v()\ei"
"\"": "\C-v\"\C-v\"\ei"
本质上,只需更换[D
与i
; 而不是发送转义序列向左移动光标,只需发送\e
回落到命令模式将括号/报价后,再重新进入插入模式,应该将光标定位在输入的字母里面。
正是这样做你想要什么是不可能的,但有一个变通。 把这个在inputrc文件:
"\C-x\"": "\"\"C-b"
跑:
info readline "comm" "readline init" "sample"
整个样品。