return、向上箭头等的单独键绑定?
Seperate keybindings for return, arrow-up, etc.?
我不明白为什么 return 在使用 readline 时没有自己的密钥 bash.
使用control+m与使用return是一样的。
如何创建两个单独的键绑定,一个用于 control+m,另一个用于 return?
arrow-up/-down等同理。打印它们引用表明它们不是一个单独的键,而是一个键序列,所以我不能将该序列用于另一个功能。
如果你改变它,你会发现使用任何终端应用程序都很麻烦,因为 all 的 POSIX-like 系统使用 "newline"结束线。 ASCII carriage return ^M
通常被翻译成 newline (恰好被编码为 ASCII 换行符 ^J
)。如果您 运行 stty -a
在您的终端上,您可能会注意到这样的事情:
~ (4) stty -a
speed 38400 baud; 40 rows; 80 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff -ixany -imaxbel -iutf8
-ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
stop = ^S; susp = ^Z; time = 0; werase = ^W;
icrnl
表示 carriage-return 映射到换行符。所以...如果你打破你的return
键,你可以输入control/M或control/J你想要一个换行符的时间。为此,大多数人更喜欢只按一个键。
我不明白为什么 return 在使用 readline 时没有自己的密钥 bash.
使用control+m与使用return是一样的。
如何创建两个单独的键绑定,一个用于 control+m,另一个用于 return?
arrow-up/-down等同理。打印它们引用表明它们不是一个单独的键,而是一个键序列,所以我不能将该序列用于另一个功能。
如果你改变它,你会发现使用任何终端应用程序都很麻烦,因为 all 的 POSIX-like 系统使用 "newline"结束线。 ASCII carriage return ^M
通常被翻译成 newline (恰好被编码为 ASCII 换行符 ^J
)。如果您 运行 stty -a
在您的终端上,您可能会注意到这样的事情:
~ (4) stty -a
speed 38400 baud; 40 rows; 80 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff -ixany -imaxbel -iutf8
-ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
stop = ^S; susp = ^Z; time = 0; werase = ^W;
icrnl
表示 carriage-return 映射到换行符。所以...如果你打破你的return
键,你可以输入control/M或control/J你想要一个换行符的时间。为此,大多数人更喜欢只按一个键。