|
|
@@ -47,7 +47,7 @@ namespace System {
|
|
|
static int terminal_size;
|
|
|
|
|
|
//static uint flag = 0xdeadbeef;
|
|
|
- static string [] locations = { "/etc/terminfo", "/usr/share/terminfo", "/usr/lib/terminfo" };
|
|
|
+ readonly static string [] locations = { "/etc/terminfo", "/usr/share/terminfo", "/usr/lib/terminfo" };
|
|
|
|
|
|
TermInfoReader reader;
|
|
|
int cursorLeft;
|
|
|
@@ -1325,74 +1325,6 @@ namespace System {
|
|
|
keymap [TermInfoStrings.KeyIc] = new ConsoleKeyInfo ('\0', ConsoleKey.Insert, false, false, false);
|
|
|
}
|
|
|
|
|
|
- //
|
|
|
- // The keys that we know about and use
|
|
|
- //
|
|
|
- static TermInfoStrings [] UsedKeys = {
|
|
|
- TermInfoStrings.KeyBackspace,
|
|
|
- TermInfoStrings.KeyClear,
|
|
|
- TermInfoStrings.KeyDown,
|
|
|
- TermInfoStrings.KeyF1,
|
|
|
- TermInfoStrings.KeyF10,
|
|
|
- TermInfoStrings.KeyF2,
|
|
|
- TermInfoStrings.KeyF3,
|
|
|
- TermInfoStrings.KeyF4,
|
|
|
- TermInfoStrings.KeyF5,
|
|
|
- TermInfoStrings.KeyF6,
|
|
|
- TermInfoStrings.KeyF7,
|
|
|
- TermInfoStrings.KeyF8,
|
|
|
- TermInfoStrings.KeyF9,
|
|
|
- TermInfoStrings.KeyHome,
|
|
|
- TermInfoStrings.KeyLeft,
|
|
|
- TermInfoStrings.KeyLl,
|
|
|
- TermInfoStrings.KeyNpage,
|
|
|
- TermInfoStrings.KeyPpage,
|
|
|
- TermInfoStrings.KeyRight,
|
|
|
- TermInfoStrings.KeySf,
|
|
|
- TermInfoStrings.KeySr,
|
|
|
- TermInfoStrings.KeyUp,
|
|
|
- TermInfoStrings.KeyA1,
|
|
|
- TermInfoStrings.KeyA3,
|
|
|
- TermInfoStrings.KeyB2,
|
|
|
- TermInfoStrings.KeyC1,
|
|
|
- TermInfoStrings.KeyC3,
|
|
|
- TermInfoStrings.KeyBtab,
|
|
|
- TermInfoStrings.KeyBeg,
|
|
|
- TermInfoStrings.KeyCopy,
|
|
|
- TermInfoStrings.KeyEnd,
|
|
|
- TermInfoStrings.KeyEnter,
|
|
|
- TermInfoStrings.KeyHelp,
|
|
|
- TermInfoStrings.KeyPrint,
|
|
|
- TermInfoStrings.KeyUndo,
|
|
|
- TermInfoStrings.KeySbeg,
|
|
|
- TermInfoStrings.KeyScopy,
|
|
|
- TermInfoStrings.KeySdc,
|
|
|
- TermInfoStrings.KeyShelp,
|
|
|
- TermInfoStrings.KeyShome,
|
|
|
- TermInfoStrings.KeySleft,
|
|
|
- TermInfoStrings.KeySprint,
|
|
|
- TermInfoStrings.KeySright,
|
|
|
- TermInfoStrings.KeySundo,
|
|
|
- TermInfoStrings.KeyF11,
|
|
|
- TermInfoStrings.KeyF12,
|
|
|
- TermInfoStrings.KeyF13,
|
|
|
- TermInfoStrings.KeyF14,
|
|
|
- TermInfoStrings.KeyF15,
|
|
|
- TermInfoStrings.KeyF16,
|
|
|
- TermInfoStrings.KeyF17,
|
|
|
- TermInfoStrings.KeyF18,
|
|
|
- TermInfoStrings.KeyF19,
|
|
|
- TermInfoStrings.KeyF20,
|
|
|
- TermInfoStrings.KeyF21,
|
|
|
- TermInfoStrings.KeyF22,
|
|
|
- TermInfoStrings.KeyF23,
|
|
|
- TermInfoStrings.KeyF24,
|
|
|
-
|
|
|
- // These were missing
|
|
|
- TermInfoStrings.KeyDc,
|
|
|
- TermInfoStrings.KeyIc
|
|
|
- };
|
|
|
-
|
|
|
void InitKeys ()
|
|
|
{
|
|
|
if (initKeys)
|
|
|
@@ -1401,6 +1333,74 @@ namespace System {
|
|
|
CreateKeyMap ();
|
|
|
rootmap = new ByteMatcher ();
|
|
|
|
|
|
+ //
|
|
|
+ // The keys that we know about and use
|
|
|
+ //
|
|
|
+ var UsedKeys = new [] {
|
|
|
+ TermInfoStrings.KeyBackspace,
|
|
|
+ TermInfoStrings.KeyClear,
|
|
|
+ TermInfoStrings.KeyDown,
|
|
|
+ TermInfoStrings.KeyF1,
|
|
|
+ TermInfoStrings.KeyF10,
|
|
|
+ TermInfoStrings.KeyF2,
|
|
|
+ TermInfoStrings.KeyF3,
|
|
|
+ TermInfoStrings.KeyF4,
|
|
|
+ TermInfoStrings.KeyF5,
|
|
|
+ TermInfoStrings.KeyF6,
|
|
|
+ TermInfoStrings.KeyF7,
|
|
|
+ TermInfoStrings.KeyF8,
|
|
|
+ TermInfoStrings.KeyF9,
|
|
|
+ TermInfoStrings.KeyHome,
|
|
|
+ TermInfoStrings.KeyLeft,
|
|
|
+ TermInfoStrings.KeyLl,
|
|
|
+ TermInfoStrings.KeyNpage,
|
|
|
+ TermInfoStrings.KeyPpage,
|
|
|
+ TermInfoStrings.KeyRight,
|
|
|
+ TermInfoStrings.KeySf,
|
|
|
+ TermInfoStrings.KeySr,
|
|
|
+ TermInfoStrings.KeyUp,
|
|
|
+ TermInfoStrings.KeyA1,
|
|
|
+ TermInfoStrings.KeyA3,
|
|
|
+ TermInfoStrings.KeyB2,
|
|
|
+ TermInfoStrings.KeyC1,
|
|
|
+ TermInfoStrings.KeyC3,
|
|
|
+ TermInfoStrings.KeyBtab,
|
|
|
+ TermInfoStrings.KeyBeg,
|
|
|
+ TermInfoStrings.KeyCopy,
|
|
|
+ TermInfoStrings.KeyEnd,
|
|
|
+ TermInfoStrings.KeyEnter,
|
|
|
+ TermInfoStrings.KeyHelp,
|
|
|
+ TermInfoStrings.KeyPrint,
|
|
|
+ TermInfoStrings.KeyUndo,
|
|
|
+ TermInfoStrings.KeySbeg,
|
|
|
+ TermInfoStrings.KeyScopy,
|
|
|
+ TermInfoStrings.KeySdc,
|
|
|
+ TermInfoStrings.KeyShelp,
|
|
|
+ TermInfoStrings.KeyShome,
|
|
|
+ TermInfoStrings.KeySleft,
|
|
|
+ TermInfoStrings.KeySprint,
|
|
|
+ TermInfoStrings.KeySright,
|
|
|
+ TermInfoStrings.KeySundo,
|
|
|
+ TermInfoStrings.KeyF11,
|
|
|
+ TermInfoStrings.KeyF12,
|
|
|
+ TermInfoStrings.KeyF13,
|
|
|
+ TermInfoStrings.KeyF14,
|
|
|
+ TermInfoStrings.KeyF15,
|
|
|
+ TermInfoStrings.KeyF16,
|
|
|
+ TermInfoStrings.KeyF17,
|
|
|
+ TermInfoStrings.KeyF18,
|
|
|
+ TermInfoStrings.KeyF19,
|
|
|
+ TermInfoStrings.KeyF20,
|
|
|
+ TermInfoStrings.KeyF21,
|
|
|
+ TermInfoStrings.KeyF22,
|
|
|
+ TermInfoStrings.KeyF23,
|
|
|
+ TermInfoStrings.KeyF24,
|
|
|
+
|
|
|
+ // These were missing
|
|
|
+ TermInfoStrings.KeyDc,
|
|
|
+ TermInfoStrings.KeyIc
|
|
|
+ };
|
|
|
+
|
|
|
foreach (TermInfoStrings tis in UsedKeys)
|
|
|
AddStringMapping (tis);
|
|
|
|