1238730Sdelphij/* 2330571Sdelphij * Copyright (C) 1984-2017 Mark Nudelman 3238730Sdelphij * 4238730Sdelphij * You may distribute under the terms of either the GNU General Public 5238730Sdelphij * License or the Less License, as specified in the README file. 6238730Sdelphij * 7238730Sdelphij * For more information, see the README file. 8238730Sdelphij */ 960786Sps 1060786Sps 11330571Sdelphij#define MAX_USERCMD 1000 12330571Sdelphij#define MAX_CMDLEN 16 1360786Sps 14330571Sdelphij#define A_B_LINE 2 15330571Sdelphij#define A_B_SCREEN 3 16330571Sdelphij#define A_B_SCROLL 4 17330571Sdelphij#define A_B_SEARCH 5 18330571Sdelphij#define A_DIGIT 6 19330571Sdelphij#define A_DISP_OPTION 7 20330571Sdelphij#define A_DEBUG 8 21330571Sdelphij#define A_EXAMINE 9 22330571Sdelphij#define A_FIRSTCMD 10 23330571Sdelphij#define A_FREPAINT 11 24330571Sdelphij#define A_F_LINE 12 25330571Sdelphij#define A_F_SCREEN 13 26330571Sdelphij#define A_F_SCROLL 14 27330571Sdelphij#define A_F_SEARCH 15 28330571Sdelphij#define A_GOEND 16 29330571Sdelphij#define A_GOLINE 17 30330571Sdelphij#define A_GOMARK 18 31330571Sdelphij#define A_HELP 19 32330571Sdelphij#define A_NEXT_FILE 20 33330571Sdelphij#define A_PERCENT 21 34330571Sdelphij#define A_PREFIX 22 35330571Sdelphij#define A_PREV_FILE 23 36330571Sdelphij#define A_QUIT 24 37330571Sdelphij#define A_REPAINT 25 38330571Sdelphij#define A_SETMARK 26 39330571Sdelphij#define A_SHELL 27 40330571Sdelphij#define A_STAT 28 41330571Sdelphij#define A_FF_LINE 29 42330571Sdelphij#define A_BF_LINE 30 43330571Sdelphij#define A_VERSION 31 44330571Sdelphij#define A_VISUAL 32 45330571Sdelphij#define A_F_WINDOW 33 46330571Sdelphij#define A_B_WINDOW 34 47330571Sdelphij#define A_F_BRACKET 35 48330571Sdelphij#define A_B_BRACKET 36 49330571Sdelphij#define A_PIPE 37 50330571Sdelphij#define A_INDEX_FILE 38 51330571Sdelphij#define A_UNDO_SEARCH 39 52330571Sdelphij#define A_FF_SCREEN 40 53330571Sdelphij#define A_LSHIFT 41 54330571Sdelphij#define A_RSHIFT 42 55330571Sdelphij#define A_AGAIN_SEARCH 43 56330571Sdelphij#define A_T_AGAIN_SEARCH 44 57330571Sdelphij#define A_REVERSE_SEARCH 45 58330571Sdelphij#define A_T_REVERSE_SEARCH 46 59330571Sdelphij#define A_OPT_TOGGLE 47 60330571Sdelphij#define A_OPT_SET 48 61330571Sdelphij#define A_OPT_UNSET 49 62330571Sdelphij#define A_F_FOREVER 50 63330571Sdelphij#define A_GOPOS 51 64330571Sdelphij#define A_REMOVE_FILE 52 65330571Sdelphij#define A_NEXT_TAG 53 66330571Sdelphij#define A_PREV_TAG 54 67330571Sdelphij#define A_FILTER 55 68330571Sdelphij#define A_F_UNTIL_HILITE 56 69330571Sdelphij#define A_GOEND_BUF 57 70330571Sdelphij#define A_LLSHIFT 58 71330571Sdelphij#define A_RRSHIFT 59 72330571Sdelphij#define A_CLRMARK 62 73330571Sdelphij#define A_SETMARKBOT 63 7460786Sps 75330571Sdelphij#define A_INVALID 100 76330571Sdelphij#define A_NOACTION 101 77330571Sdelphij#define A_UINVALID 102 78330571Sdelphij#define A_END_LIST 103 79330571Sdelphij#define A_SPECIAL_KEY 104 8060786Sps 81330571Sdelphij#define A_SKIP 127 8260786Sps 83330571Sdelphij#define A_EXTRA 0200 8460786Sps 8560786Sps 86237613Sdelphij/* Line editing characters */ 8760786Sps 88330571Sdelphij#define EC_BACKSPACE 1 89330571Sdelphij#define EC_LINEKILL 2 90330571Sdelphij#define EC_RIGHT 3 91330571Sdelphij#define EC_LEFT 4 92330571Sdelphij#define EC_W_LEFT 5 93330571Sdelphij#define EC_W_RIGHT 6 94330571Sdelphij#define EC_INSERT 7 95330571Sdelphij#define EC_DELETE 8 96330571Sdelphij#define EC_HOME 9 97330571Sdelphij#define EC_END 10 98330571Sdelphij#define EC_W_BACKSPACE 11 99330571Sdelphij#define EC_W_DELETE 12 100330571Sdelphij#define EC_UP 13 101330571Sdelphij#define EC_DOWN 14 102330571Sdelphij#define EC_EXPAND 15 103330571Sdelphij#define EC_F_COMPLETE 17 104330571Sdelphij#define EC_B_COMPLETE 18 105330571Sdelphij#define EC_LITERAL 19 106330571Sdelphij#define EC_ABORT 20 10760786Sps 108330571Sdelphij#define EC_NOACTION 101 109330571Sdelphij#define EC_UINVALID 102 11060786Sps 11160786Sps/* Flags for editchar() */ 112330571Sdelphij#define EC_PEEK 01 113330571Sdelphij#define EC_NOHISTORY 02 114330571Sdelphij#define EC_NOCOMPLETE 04 115330571Sdelphij#define EC_NORIGHTLEFT 010 11660786Sps 11760786Sps/* Environment variable stuff */ 118330571Sdelphij#define EV_OK 01 11960786Sps 12060786Sps/* Special keys (keys which output different strings on different terminals) */ 121330571Sdelphij#define SK_SPECIAL_KEY CONTROL('K') 122330571Sdelphij#define SK_RIGHT_ARROW 1 123330571Sdelphij#define SK_LEFT_ARROW 2 124330571Sdelphij#define SK_UP_ARROW 3 125330571Sdelphij#define SK_DOWN_ARROW 4 126330571Sdelphij#define SK_PAGE_UP 5 127330571Sdelphij#define SK_PAGE_DOWN 6 128330571Sdelphij#define SK_HOME 7 129330571Sdelphij#define SK_END 8 130330571Sdelphij#define SK_DELETE 9 131330571Sdelphij#define SK_INSERT 10 132330571Sdelphij#define SK_CTL_LEFT_ARROW 11 133330571Sdelphij#define SK_CTL_RIGHT_ARROW 12 134330571Sdelphij#define SK_CTL_DELETE 13 135330571Sdelphij#define SK_F1 14 136330571Sdelphij#define SK_BACKTAB 15 137330571Sdelphij#define SK_CTL_BACKSPACE 16 138330571Sdelphij#define SK_CONTROL_K 40 139