diff --git a/input-keys.c b/input-keys.c index cc7e8f8f..19a42198 100644 --- a/input-keys.c +++ b/input-keys.c @@ -1,4 +1,4 @@ -/* $Id: input-keys.c,v 1.16 2009-01-07 22:52:33 nicm Exp $ */ +/* $Id: input-keys.c,v 1.17 2009-01-08 22:28:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -31,6 +31,7 @@ struct { const char *data; int flags; } input_keys[] = { + /* Function keys. */ { KEYC_F1, "\033OP", 0 }, { KEYC_F2, "\033OQ", 0 }, { KEYC_F3, "\033OR", 0 }, @@ -43,12 +44,12 @@ struct { { KEYC_F10, "\033[21~", 0 }, { KEYC_F11, "\033[23~", 0 }, { KEYC_F12, "\033[24~", 0 }, - { KEYC_DC, "\033[3~", 0 }, { KEYC_IC, "\033[2~", 0 }, - { KEYC_NPAGE, "\033[6~", 0 }, - { KEYC_PPAGE, "\033[5~", 0 }, + { KEYC_DC, "\033[3~", 0 }, { KEYC_HOME, "\033[1~", 0 }, { KEYC_END, "\033[4~", 0 }, + { KEYC_NPAGE, "\033[6~", 0 }, + { KEYC_PPAGE, "\033[5~", 0 }, /* Arrow keys. Cursor versions must come first. */ { KEYC_UP, "\033OA", INPUTKEY_CURSOR }, diff --git a/key-string.c b/key-string.c index 981ba21d..7b4b330c 100644 --- a/key-string.c +++ b/key-string.c @@ -1,4 +1,4 @@ -/* $Id: key-string.c,v 1.9 2009-01-07 22:52:33 nicm Exp $ */ +/* $Id: key-string.c,v 1.10 2009-01-08 22:28:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -26,154 +26,31 @@ struct { const char *string; int key; } key_string_table[] = { -/* { "A1", KEYC_A1 }, */ -/* { "A3", KEYC_A3 }, */ -/* { "B2", KEYC_B2 }, */ - { "BEG", KEYC_BEG }, - { "BTAB", KEYC_BTAB }, -/* { "C1", KEYC_C1 }, */ -/* { "C3", KEYC_C3 }, */ - { "CANCEL", KEYC_CANCEL }, - { "CATAB", KEYC_CATAB }, - { "CLEAR", KEYC_CLEAR }, - { "CLOSE", KEYC_CLOSE }, - { "COMMAND", KEYC_COMMAND }, - { "COPY", KEYC_COPY }, - { "CREATE", KEYC_CREATE }, - { "CTAB", KEYC_CTAB }, - { "DC", KEYC_DC }, - { "DL", KEYC_DL }, - { "DOWN", KEYC_DOWN}, - { "EIC", KEYC_EIC }, - { "END", KEYC_END }, -/* { "ENTER", KEYC_ENTER }, */ - { "EOL", KEYC_EOL }, - { "EOS", KEYC_EOS }, - { "EXIT", KEYC_EXIT }, - { "F0", KEYC_F0 }, + /* Function keys. */ { "F1", KEYC_F1 }, - { "F10", KEYC_F10 }, - { "F11", KEYC_F11 }, - { "F12", KEYC_F12 }, - { "F13", KEYC_F13 }, - { "F14", KEYC_F14 }, - { "F15", KEYC_F15 }, - { "F16", KEYC_F16 }, - { "F17", KEYC_F17 }, - { "F18", KEYC_F18 }, - { "F19", KEYC_F19 }, { "F2", KEYC_F2 }, - { "F20", KEYC_F20 }, - { "F21", KEYC_F21 }, - { "F22", KEYC_F22 }, - { "F23", KEYC_F23 }, - { "F24", KEYC_F24 }, - { "F25", KEYC_F25 }, - { "F26", KEYC_F26 }, - { "F27", KEYC_F27 }, - { "F28", KEYC_F28 }, - { "F29", KEYC_F29 }, { "F3", KEYC_F3 }, - { "F30", KEYC_F30 }, - { "F31", KEYC_F31 }, - { "F32", KEYC_F32 }, - { "F33", KEYC_F33 }, - { "F34", KEYC_F34 }, - { "F35", KEYC_F35 }, - { "F36", KEYC_F36 }, - { "F37", KEYC_F37 }, - { "F38", KEYC_F38 }, - { "F39", KEYC_F39 }, { "F4", KEYC_F4 }, - { "F40", KEYC_F40 }, - { "F41", KEYC_F41 }, - { "F42", KEYC_F42 }, - { "F43", KEYC_F43 }, - { "F44", KEYC_F44 }, - { "F45", KEYC_F45 }, - { "F46", KEYC_F46 }, - { "F47", KEYC_F47 }, - { "F48", KEYC_F48 }, - { "F49", KEYC_F49 }, { "F5", KEYC_F5 }, - { "F50", KEYC_F50 }, - { "F51", KEYC_F51 }, - { "F52", KEYC_F52 }, - { "F53", KEYC_F53 }, - { "F54", KEYC_F54 }, - { "F55", KEYC_F55 }, - { "F56", KEYC_F56 }, - { "F57", KEYC_F57 }, - { "F58", KEYC_F58 }, - { "F59", KEYC_F59 }, { "F6", KEYC_F6 }, - { "F60", KEYC_F60 }, - { "F61", KEYC_F61 }, - { "F62", KEYC_F62 }, - { "F63", KEYC_F63 }, { "F7", KEYC_F7 }, { "F8", KEYC_F8 }, { "F9", KEYC_F9 }, - { "FIND", KEYC_FIND }, - { "HELP", KEYC_HELP }, - { "HOME", KEYC_HOME }, + { "F10", KEYC_F10 }, + { "F11", KEYC_F11 }, + { "F12", KEYC_F12 }, { "IC", KEYC_IC }, - { "IL", KEYC_IL }, - { "LEFT", KEYC_LEFT }, - { "LL", KEYC_LL }, - { "MARK", KEYC_MARK }, - { "MESSAGE", KEYC_MESSAGE }, - { "MOVE", KEYC_MOVE }, - { "NEXT", KEYC_NEXT }, + { "DC", KEYC_DC }, + { "HOME", KEYC_HOME }, + { "END", KEYC_END }, { "NPAGE", KEYC_NPAGE }, - { "OPEN", KEYC_OPEN }, - { "OPTIONS", KEYC_OPTIONS }, { "PPAGE", KEYC_PPAGE }, - { "PREVIOUS", KEYC_PREVIOUS }, - { "PRINT", KEYC_PRINT }, - { "REDO", KEYC_REDO }, - { "REFERENCE", KEYC_REFERENCE }, - { "REFRESH", KEYC_REFRESH }, - { "REPLACE", KEYC_REPLACE }, - { "RESTART", KEYC_RESTART }, - { "RESUME", KEYC_RESUME }, - { "RIGHT", KEYC_RIGHT }, - { "SAVE", KEYC_SAVE }, - { "SBEG", KEYC_SBEG }, - { "SCANCEL", KEYC_SCANCEL }, - { "SCOMMAND", KEYC_SCOMMAND }, - { "SCOPY", KEYC_SCOPY }, - { "SCREATE", KEYC_SCREATE }, - { "SDC", KEYC_SDC }, - { "SDL", KEYC_SDL }, - { "SELECT", KEYC_SELECT }, - { "SEND", KEYC_SEND }, - { "SEOL", KEYC_SEOL }, - { "SEXIT", KEYC_SEXIT }, - { "SF", KEYC_SF }, - { "SFIND", KEYC_SFIND }, - { "SHELP", KEYC_SHELP }, - { "SHOME", KEYC_SHOME }, - { "SIC", KEYC_SIC }, - { "SLEFT", KEYC_SLEFT }, - { "SMESSAGE", KEYC_SMESSAGE }, - { "SMOVE", KEYC_SMOVE }, - { "SNEXT", KEYC_SNEXT }, - { "SOPTIONS", KEYC_SOPTIONS }, - { "SPREVIOUS", KEYC_SPREVIOUS }, - { "SPRINT", KEYC_SPRINT }, - { "SR", KEYC_SR }, - { "SREDO", KEYC_SREDO }, - { "SREPLACE", KEYC_SREPLACE }, - { "SRIGHT", KEYC_SRIGHT }, - { "SRSUME", KEYC_SRSUME }, - { "SSAVE", KEYC_SSAVE }, - { "SSUSPEND", KEYC_SSUSPEND }, - { "STAB", KEYC_STAB }, - { "SUNDO", KEYC_SUNDO }, - { "SUSPEND", KEYC_SUSPEND }, - { "UNDO", KEYC_UNDO }, + + /* Arrow keys. */ { "UP", KEYC_UP }, + { "DOWN", KEYC_DOWN }, + { "LEFT", KEYC_LEFT }, + { "RIGHT", KEYC_RIGHT }, /* Numeric keypad. */ { "KP/", KEYC_KP0_1 }, diff --git a/status.c b/status.c index 675e284a..9b9e1801 100644 --- a/status.c +++ b/status.c @@ -1,4 +1,4 @@ -/* $Id: status.c,v 1.56 2009-01-07 22:29:33 nicm Exp $ */ +/* $Id: status.c,v 1.57 2009-01-08 22:28:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -522,7 +522,8 @@ status_prompt_key(struct client *c, int key) last--; if (*last != '\0') last++; - if (last <= first || last - first > (sizeof word) - 1) + if (last <= first || + ((size_t) (last - first)) > (sizeof word) - 1) break; memcpy(word, first, last - first); word[last - first] = '\0'; diff --git a/tmux.h b/tmux.h index 7adf228c..a60d8ecb 100644 --- a/tmux.h +++ b/tmux.h @@ -1,4 +1,4 @@ -/* $Id: tmux.h,v 1.209 2009-01-07 22:52:33 nicm Exp $ */ +/* $Id: tmux.h,v 1.210 2009-01-08 22:28:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -167,156 +167,31 @@ struct buffer { #define KEYC_REMOVEESCAPE(k) ((k) & ~KEYC_ESCAPE) #define KEYC_ISESCAPE(k) ((k) != KEYC_NONE && ((k) & KEYC_ESCAPE)) -/* #define KEYC_A1 (KEYC_OFFSET + 0x1) */ -/* #define KEYC_A3 (KEYC_OFFSET + 0x2) */ -/* #define KEYC_B2 (KEYC_OFFSET + 0x3) */ -/* #define KEYC_BACKSPACE (KEYC_OFFSET + 0x4) */ -#define KEYC_BEG (KEYC_OFFSET + 0x5) -#define KEYC_BTAB (KEYC_OFFSET + 0x6) -/* #define KEYC_C1 (KEYC_OFFSET + 0x7) */ -/* #define KEYC_C3 (KEYC_OFFSET + 0x8) */ -#define KEYC_CANCEL (KEYC_OFFSET + 0x9) -#define KEYC_CATAB (KEYC_OFFSET + 0xa) -#define KEYC_CLEAR (KEYC_OFFSET + 0xb) -#define KEYC_CLOSE (KEYC_OFFSET + 0xc) -#define KEYC_COMMAND (KEYC_OFFSET + 0xd) -#define KEYC_COPY (KEYC_OFFSET + 0xe) -#define KEYC_CREATE (KEYC_OFFSET + 0xf) -#define KEYC_CTAB (KEYC_OFFSET + 0x10) -#define KEYC_DC (KEYC_OFFSET + 0x11) -#define KEYC_DL (KEYC_OFFSET + 0x12) -#define KEYC_DOWN (KEYC_OFFSET + 0x13) -#define KEYC_EIC (KEYC_OFFSET + 0x14) -#define KEYC_END (KEYC_OFFSET + 0x15) -/* #define KEYC_ENTER (KEYC_OFFSET + 0x16) */ -#define KEYC_EOL (KEYC_OFFSET + 0x17) -#define KEYC_EOS (KEYC_OFFSET + 0x18) -#define KEYC_EXIT (KEYC_OFFSET + 0x19) -#define KEYC_F0 (KEYC_OFFSET + 0x1a) -#define KEYC_F1 (KEYC_OFFSET + 0x1b) -#define KEYC_F10 (KEYC_OFFSET + 0x1c) -#define KEYC_F11 (KEYC_OFFSET + 0x1d) -#define KEYC_F12 (KEYC_OFFSET + 0x1e) -#define KEYC_F13 (KEYC_OFFSET + 0x1f) -#define KEYC_F14 (KEYC_OFFSET + 0x20) -#define KEYC_F15 (KEYC_OFFSET + 0x21) -#define KEYC_F16 (KEYC_OFFSET + 0x22) -#define KEYC_F17 (KEYC_OFFSET + 0x23) -#define KEYC_F18 (KEYC_OFFSET + 0x24) -#define KEYC_F19 (KEYC_OFFSET + 0x25) -#define KEYC_F2 (KEYC_OFFSET + 0x26) -#define KEYC_F20 (KEYC_OFFSET + 0x27) -#define KEYC_F21 (KEYC_OFFSET + 0x28) -#define KEYC_F22 (KEYC_OFFSET + 0x29) -#define KEYC_F23 (KEYC_OFFSET + 0x2a) -#define KEYC_F24 (KEYC_OFFSET + 0x2b) -#define KEYC_F25 (KEYC_OFFSET + 0x2c) -#define KEYC_F26 (KEYC_OFFSET + 0x2d) -#define KEYC_F27 (KEYC_OFFSET + 0x2e) -#define KEYC_F28 (KEYC_OFFSET + 0x2f) -#define KEYC_F29 (KEYC_OFFSET + 0x30) -#define KEYC_F3 (KEYC_OFFSET + 0x31) -#define KEYC_F30 (KEYC_OFFSET + 0x32) -#define KEYC_F31 (KEYC_OFFSET + 0x33) -#define KEYC_F32 (KEYC_OFFSET + 0x34) -#define KEYC_F33 (KEYC_OFFSET + 0x35) -#define KEYC_F34 (KEYC_OFFSET + 0x36) -#define KEYC_F35 (KEYC_OFFSET + 0x37) -#define KEYC_F36 (KEYC_OFFSET + 0x38) -#define KEYC_F37 (KEYC_OFFSET + 0x39) -#define KEYC_F38 (KEYC_OFFSET + 0x3a) -#define KEYC_F39 (KEYC_OFFSET + 0x3b) -#define KEYC_F4 (KEYC_OFFSET + 0x3c) -#define KEYC_F40 (KEYC_OFFSET + 0x3d) -#define KEYC_F41 (KEYC_OFFSET + 0x3e) -#define KEYC_F42 (KEYC_OFFSET + 0x3f) -#define KEYC_F43 (KEYC_OFFSET + 0x40) -#define KEYC_F44 (KEYC_OFFSET + 0x41) -#define KEYC_F45 (KEYC_OFFSET + 0x42) -#define KEYC_F46 (KEYC_OFFSET + 0x43) -#define KEYC_F47 (KEYC_OFFSET + 0x44) -#define KEYC_F48 (KEYC_OFFSET + 0x45) -#define KEYC_F49 (KEYC_OFFSET + 0x46) -#define KEYC_F5 (KEYC_OFFSET + 0x47) -#define KEYC_F50 (KEYC_OFFSET + 0x48) -#define KEYC_F51 (KEYC_OFFSET + 0x49) -#define KEYC_F52 (KEYC_OFFSET + 0x4a) -#define KEYC_F53 (KEYC_OFFSET + 0x4b) -#define KEYC_F54 (KEYC_OFFSET + 0x4c) -#define KEYC_F55 (KEYC_OFFSET + 0x4d) -#define KEYC_F56 (KEYC_OFFSET + 0x4e) -#define KEYC_F57 (KEYC_OFFSET + 0x4f) -#define KEYC_F58 (KEYC_OFFSET + 0x50) -#define KEYC_F59 (KEYC_OFFSET + 0x51) -#define KEYC_F6 (KEYC_OFFSET + 0x52) -#define KEYC_F60 (KEYC_OFFSET + 0x53) -#define KEYC_F61 (KEYC_OFFSET + 0x54) -#define KEYC_F62 (KEYC_OFFSET + 0x55) -#define KEYC_F63 (KEYC_OFFSET + 0x56) -#define KEYC_F7 (KEYC_OFFSET + 0x57) -#define KEYC_F8 (KEYC_OFFSET + 0x58) -#define KEYC_F9 (KEYC_OFFSET + 0x59) -#define KEYC_FIND (KEYC_OFFSET + 0x5a) -#define KEYC_HELP (KEYC_OFFSET + 0x5b) -#define KEYC_HOME (KEYC_OFFSET + 0x5c) -#define KEYC_IC (KEYC_OFFSET + 0x5d) -#define KEYC_IL (KEYC_OFFSET + 0x5e) -#define KEYC_LEFT (KEYC_OFFSET + 0x5f) -#define KEYC_LL (KEYC_OFFSET + 0x60) -#define KEYC_MARK (KEYC_OFFSET + 0x61) -#define KEYC_MESSAGE (KEYC_OFFSET + 0x62) -#define KEYC_MOVE (KEYC_OFFSET + 0x63) -#define KEYC_NEXT (KEYC_OFFSET + 0x64) -#define KEYC_NPAGE (KEYC_OFFSET + 0x65) -#define KEYC_OPEN (KEYC_OFFSET + 0x66) -#define KEYC_OPTIONS (KEYC_OFFSET + 0x67) -#define KEYC_PPAGE (KEYC_OFFSET + 0x68) -#define KEYC_PREVIOUS (KEYC_OFFSET + 0x69) -#define KEYC_PRINT (KEYC_OFFSET + 0x6a) -#define KEYC_REDO (KEYC_OFFSET + 0x6b) -#define KEYC_REFERENCE (KEYC_OFFSET + 0x6c) -#define KEYC_REFRESH (KEYC_OFFSET + 0x6d) -#define KEYC_REPLACE (KEYC_OFFSET + 0x6e) -#define KEYC_RESTART (KEYC_OFFSET + 0x6f) -#define KEYC_RESUME (KEYC_OFFSET + 0x70) -#define KEYC_RIGHT (KEYC_OFFSET + 0x71) -#define KEYC_SAVE (KEYC_OFFSET + 0x72) -#define KEYC_SBEG (KEYC_OFFSET + 0x73) -#define KEYC_SCANCEL (KEYC_OFFSET + 0x74) -#define KEYC_SCOMMAND (KEYC_OFFSET + 0x75) -#define KEYC_SCOPY (KEYC_OFFSET + 0x76) -#define KEYC_SCREATE (KEYC_OFFSET + 0x77) -#define KEYC_SDC (KEYC_OFFSET + 0x78) -#define KEYC_SDL (KEYC_OFFSET + 0x79) -#define KEYC_SELECT (KEYC_OFFSET + 0x7a) -#define KEYC_SEND (KEYC_OFFSET + 0x7b) -#define KEYC_SEOL (KEYC_OFFSET + 0x7c) -#define KEYC_SEXIT (KEYC_OFFSET + 0x7d) -#define KEYC_SF (KEYC_OFFSET + 0x7e) -#define KEYC_SFIND (KEYC_OFFSET + 0x7f) -#define KEYC_SHELP (KEYC_OFFSET + 0x80) -#define KEYC_SHOME (KEYC_OFFSET + 0x81) -#define KEYC_SIC (KEYC_OFFSET + 0x82) -#define KEYC_SLEFT (KEYC_OFFSET + 0x83) -#define KEYC_SMESSAGE (KEYC_OFFSET + 0x84) -#define KEYC_SMOVE (KEYC_OFFSET + 0x85) -#define KEYC_SNEXT (KEYC_OFFSET + 0x86) -#define KEYC_SOPTIONS (KEYC_OFFSET + 0x87) -#define KEYC_SPREVIOUS (KEYC_OFFSET + 0x88) -#define KEYC_SPRINT (KEYC_OFFSET + 0x89) -#define KEYC_SR (KEYC_OFFSET + 0x8a) -#define KEYC_SREDO (KEYC_OFFSET + 0x8b) -#define KEYC_SREPLACE (KEYC_OFFSET + 0x8c) -#define KEYC_SRIGHT (KEYC_OFFSET + 0x8d) -#define KEYC_SRSUME (KEYC_OFFSET + 0x8e) -#define KEYC_SSAVE (KEYC_OFFSET + 0x8f) -#define KEYC_SSUSPEND (KEYC_OFFSET + 0x90) -#define KEYC_STAB (KEYC_OFFSET + 0x91) -#define KEYC_SUNDO (KEYC_OFFSET + 0x92) -#define KEYC_SUSPEND (KEYC_OFFSET + 0x93) -#define KEYC_UNDO (KEYC_OFFSET + 0x94) -#define KEYC_UP (KEYC_OFFSET + 0x95) -#define KEYC_MOUSE (KEYC_OFFSET + 0x96) +/* Function keys. */ +#define KEYC_F1 (KEYC_OFFSET + 0x01) +#define KEYC_F2 (KEYC_OFFSET + 0x02) +#define KEYC_F3 (KEYC_OFFSET + 0x03) +#define KEYC_F4 (KEYC_OFFSET + 0x04) +#define KEYC_F5 (KEYC_OFFSET + 0x05) +#define KEYC_F6 (KEYC_OFFSET + 0x06) +#define KEYC_F7 (KEYC_OFFSET + 0x07) +#define KEYC_F8 (KEYC_OFFSET + 0x08) +#define KEYC_F9 (KEYC_OFFSET + 0x09) +#define KEYC_F10 (KEYC_OFFSET + 0x10) +#define KEYC_F11 (KEYC_OFFSET + 0x11) +#define KEYC_F12 (KEYC_OFFSET + 0x12) +#define KEYC_IC (KEYC_OFFSET + 0x13) +#define KEYC_DC (KEYC_OFFSET + 0x14) +#define KEYC_HOME (KEYC_OFFSET + 0x15) +#define KEYC_END (KEYC_OFFSET + 0x16) +#define KEYC_NPAGE (KEYC_OFFSET + 0x17) +#define KEYC_PPAGE (KEYC_OFFSET + 0x18) + +/* Arrow keys. */ +#define KEYC_UP (KEYC_OFFSET + 0x50) +#define KEYC_DOWN (KEYC_OFFSET + 0x51) +#define KEYC_LEFT (KEYC_OFFSET + 0x52) +#define KEYC_RIGHT (KEYC_OFFSET + 0x53) /* Numeric keypad. Numbered from top-left, KPY_X. */ #define KEYC_KP0_1 (KEYC_OFFSET + 0x100) diff --git a/tty-keys.c b/tty-keys.c index ca96300d..29b0d9d2 100644 --- a/tty-keys.c +++ b/tty-keys.c @@ -1,4 +1,4 @@ -/* $Id: tty-keys.c,v 1.12 2009-01-07 22:52:33 nicm Exp $ */ +/* $Id: tty-keys.c,v 1.13 2009-01-08 22:28:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -27,156 +27,31 @@ struct { const char *name; int code; } tty_keys[] = { -/* { "ka1", KEYC_A1 }, */ -/* { "ka3", KEYC_A3 }, */ -/* { "kb2", KEYC_B2 }, */ -/* { "kb", KEYC_BACKSPACE }, */ - { "kBEG", KEYC_SBEG }, -/* { "kc1", KEYC_C1 }, */ -/* { "kc3", KEYC_C3 }, */ - { "kCAN", KEYC_SCANCEL }, - { "kCMD", KEYC_SCOMMAND }, - { "kCPY", KEYC_SCOPY }, - { "kCRT", KEYC_SCREATE }, - { "kDC", KEYC_SDC }, - { "kDL", KEYC_SDL }, - { "kEND", KEYC_SEND }, - { "kEOL", KEYC_SEOL }, - { "kEXT", KEYC_SEXIT }, - { "kFND", KEYC_SFIND }, - { "kHLP", KEYC_SHELP }, - { "kHOM", KEYC_SHOME }, - { "kIC", KEYC_SIC }, - { "kLFT", KEYC_SLEFT }, - { "kMOV", KEYC_SMOVE }, - { "kMSG", KEYC_SMESSAGE }, - { "kNXT", KEYC_SNEXT }, - { "kOPT", KEYC_SOPTIONS }, - { "kPRT", KEYC_SPRINT }, - { "kPRV", KEYC_SPREVIOUS }, - { "kRDO", KEYC_SREDO }, - { "kRES", KEYC_SRSUME }, - { "kRIT", KEYC_SRIGHT }, - { "kRPL", KEYC_SREPLACE }, - { "kSAV", KEYC_SSAVE }, - { "kSPD", KEYC_SSUSPEND }, - { "kUND", KEYC_SUNDO }, - { "kbeg", KEYC_BEG }, - { "kcan", KEYC_CANCEL }, - { "kcbt", KEYC_BTAB }, - { "kclo", KEYC_CLOSE }, - { "kclr", KEYC_CLEAR }, - { "kcmd", KEYC_COMMAND }, - { "kcpy", KEYC_COPY }, - { "kcrt", KEYC_CREATE }, - { "kctab", KEYC_CTAB }, - { "kcub1", KEYC_LEFT }, - { "kcud1", KEYC_DOWN }, - { "kcuf1", KEYC_RIGHT }, - { "kcuu1", KEYC_UP }, - { "kdch1", KEYC_DC }, - { "kdl1", KEYC_DL }, - { "ked", KEYC_EOS }, - { "kel", KEYC_EOL }, - { "kend", KEYC_END }, -/* { "kent", KEYC_ENTER }, */ - { "kext", KEYC_EXIT }, - { "kf0", KEYC_F0 }, + /* Function keys. */ { "kf1", KEYC_F1 }, - { "kf10", KEYC_F10 }, - { "kf11", KEYC_F11 }, - { "kf12", KEYC_F12 }, - { "kf13", KEYC_F13 }, - { "kf14", KEYC_F14 }, - { "kf15", KEYC_F15 }, - { "kf16", KEYC_F16 }, - { "kf17", KEYC_F17 }, - { "kf18", KEYC_F18 }, - { "kf19", KEYC_F19 }, { "kf2", KEYC_F2 }, - { "kf20", KEYC_F20 }, - { "kf21", KEYC_F21 }, - { "kf22", KEYC_F22 }, - { "kf23", KEYC_F23 }, - { "kf24", KEYC_F24 }, - { "kf25", KEYC_F25 }, - { "kf26", KEYC_F26 }, - { "kf27", KEYC_F27 }, - { "kf28", KEYC_F28 }, - { "kf29", KEYC_F29 }, { "kf3", KEYC_F3 }, - { "kf30", KEYC_F30 }, - { "kf31", KEYC_F31 }, - { "kf32", KEYC_F32 }, - { "kf33", KEYC_F33 }, - { "kf34", KEYC_F34 }, - { "kf35", KEYC_F35 }, - { "kf36", KEYC_F36 }, - { "kf37", KEYC_F37 }, - { "kf38", KEYC_F38 }, - { "kf39", KEYC_F39 }, { "kf4", KEYC_F4 }, - { "kf40", KEYC_F40 }, - { "kf41", KEYC_F41 }, - { "kf42", KEYC_F42 }, - { "kf43", KEYC_F43 }, - { "kf44", KEYC_F44 }, - { "kf45", KEYC_F45 }, - { "kf46", KEYC_F46 }, - { "kf47", KEYC_F47 }, - { "kf48", KEYC_F48 }, - { "kf49", KEYC_F49 }, { "kf5", KEYC_F5 }, - { "kf50", KEYC_F50 }, - { "kf51", KEYC_F51 }, - { "kf52", KEYC_F52 }, - { "kf53", KEYC_F53 }, - { "kf54", KEYC_F54 }, - { "kf55", KEYC_F55 }, - { "kf56", KEYC_F56 }, - { "kf57", KEYC_F57 }, - { "kf58", KEYC_F58 }, - { "kf59", KEYC_F59 }, { "kf6", KEYC_F6 }, - { "kf60", KEYC_F60 }, - { "kf61", KEYC_F61 }, - { "kf62", KEYC_F62 }, - { "kf63", KEYC_F63 }, { "kf7", KEYC_F7 }, { "kf8", KEYC_F8 }, { "kf9", KEYC_F9 }, - { "kfnd", KEYC_FIND }, - { "khlp", KEYC_HELP }, - { "khome", KEYC_HOME }, - { "khts", KEYC_STAB }, + { "kf10", KEYC_F10 }, + { "kf11", KEYC_F11 }, + { "kf12", KEYC_F12 }, { "kich1", KEYC_IC }, - { "kil1", KEYC_IL }, - { "kind", KEYC_SF }, - { "kll", KEYC_LL }, - { "kmov", KEYC_MOVE }, - { "kmrk", KEYC_MARK }, - { "kmsg", KEYC_MESSAGE }, + { "kdch1", KEYC_DC }, + { "khome", KEYC_HOME }, + { "kend", KEYC_END }, { "knp", KEYC_NPAGE }, - { "knxt", KEYC_NEXT }, - { "kopn", KEYC_OPEN }, - { "kopt", KEYC_OPTIONS }, { "kpp", KEYC_PPAGE }, - { "kprt", KEYC_PRINT }, - { "kprv", KEYC_PREVIOUS }, - { "krdo", KEYC_REDO }, - { "kref", KEYC_REFERENCE }, - { "kres", KEYC_RESUME }, - { "krfr", KEYC_REFRESH }, - { "kri", KEYC_SR }, - { "krmir", KEYC_EIC }, - { "krpl", KEYC_REPLACE }, - { "krst", KEYC_RESTART }, - { "ksav", KEYC_SAVE }, - { "kslt", KEYC_SELECT }, - { "kspd", KEYC_SUSPEND }, - { "ktbc", KEYC_CATAB }, - { "kund", KEYC_UNDO }, - { "pmous", KEYC_MOUSE }, + + /* Arrow keys. */ + { "kcuu1", KEYC_UP }, + { "kcud1", KEYC_DOWN }, + { "kcub1", KEYC_LEFT }, + { "kcuf1", KEYC_RIGHT }, /* * Numeric keypad. termcap and terminfo are totally confusing for this. @@ -185,7 +60,7 @@ struct { * for the keypad keys in application mode (which is different from * what it says in the termcap file). So, we just hardcode the vt100 * escape sequences here and always put the terminal into keypad_xmit - * mode. Translation of numbers mode/applications mode is done in + * mode. Translation of numbers mode/applications mode is done in * input-keys.c. */ { "-\033Oo", KEYC_KP0_1 },