我可以设置less
程序通过按键退出吗ESC
?
答案1
要将Esc+绑定Esc到quit
with lesskey
,请执行以下操作:
~/.lesskey
使用以下行创建一个文件:
\e\e 退出
跑步
lesskey
。这将创建一个~/.less
由less
.less
像平常一样使用。 Esc+Esc将执行一个quit
.
如果您不再需要绑定,可以删除该~/.less
文件。
更多详细信息请参见man lesskey
或包源码lesskey.nro
中less
。
Debian -- wheezy 中源码包的详细信息较少
SYNOPSIS
lesskey [-o output] [--] [input]
The input file is a text file which describes the key bindings.
If the input file is "-", standard input is read.
If no input file is specified, a standard filename is used
as the name of the input file, which depends on the system being used:
On Unix systems, $HOME/.lesskey is used;
on MS-DOS systems, $HOME/_lesskey is used;
and on OS/2 systems $HOME/lesskey.ini is used,
or $INIT/lesskey.ini if $HOME is undefined.
答案2
并不真地。
less
ESC有许多与其他东西绑定的功能。请参阅联机帮助页:ESCv、ESCn、ESCF、以及许多其他内容。您将无法less
在仅收到 时键入任何退出ESC。
可以想象,您可以将所有这些功能重新绑定到其他击键,或者忍受无法键入它们的情况,然后重新绑定ESC到退出,但这仍然不是一个好主意。
这不是一个好的选择。在 VT100(现在基本上到处都使用的终端仿真)中,所有终端控制序列都以 ASCIIESC
字符开头。这意味着每次您按下箭头键之类的东西时,您的终端都会发送ESC
其他内容。当您按下该ESC键时,您的终端也会发送ESC
,但后面没有任何内容。软件在收到 ASCII 字符后如何区分ESC
?它被迫等待一段时间,看看是否有任何事情发生ESC
。因此,单独的事情ESC总是会产生延迟,即软件响应之前的时间滞后。