[ipxe-devel] minor issues with the full-screen UI
Ivan Shmakov
oneingray at gmail.com
Tue Aug 21 18:32:48 UTC 2012
>>>>> Michael Brown writes:
>>>>> On Tuesday 21 Aug 2012 18:40:58 Ivan Shmakov wrote:
>> While testing the latest menu patch, I've also noticed that while
>> KEY_PPAGE, KEY_NPAGE work for CONSOLE_SERIAL (for a GNU Screen
>> window under a Linux VT), KEY_HOME & KEY_END do not. Indeed,
>> there's no standard for encoding functional keys like those (which
>> is the whole point of having terminfo(5), BTW.)
> They should work provided that your terminal type is set to ANSI (or
> sufficiently close to ANSI, given that we use only a few control
> keys).
Apparently, iPXE expects ^[[H and ^[[F for KEY_HOME and KEY_END,
respectively (as I've just checked with sending these sequences
with Screen.) However, Linux sends them as ^[[1~ and ^[[4~,
while for XTerm these are ^[OH and ^[OF. (And I'm yet to check
PuTTY.) Honestly, I don't know what ANSI says on this matter.
Yes, of these two, at least the Linux VT's keymap can be altered
quite easily, but won't that make its new behavior inconsistent
with its terminfo(5) entry? Once again, given that the
Ctrl+Alpha sequences are unlikely to differ between terminal
emulators, my preference would be to allow for these to be used
on CONSOLE_SERIAL either in addition (like it's already done in
editstring.c) or instead of the current keys.
PS. Scanning through keys.h I've noticed that BACKSPACE is defined as
CTRL_H, while the GNU/Linux convention for as long as I can
remember is 0177 = ASCII DEL. Somewhat surprisingly, both ^H
and ^? appear to just work.
--
FSF associate member #7257 http://sf-day.org/
More information about the ipxe-devel
mailing list