1238730Sdelphij/* 2369759Sgit2svn * Copyright (C) 1984-2021 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 11330570Sdelphij#define MAX_USERCMD 1000 12330570Sdelphij#define MAX_CMDLEN 16 1360786Sps 14330570Sdelphij#define A_B_LINE 2 15330570Sdelphij#define A_B_SCREEN 3 16330570Sdelphij#define A_B_SCROLL 4 17330570Sdelphij#define A_B_SEARCH 5 18330570Sdelphij#define A_DIGIT 6 19330570Sdelphij#define A_DISP_OPTION 7 20330570Sdelphij#define A_DEBUG 8 21330570Sdelphij#define A_EXAMINE 9 22330570Sdelphij#define A_FIRSTCMD 10 23330570Sdelphij#define A_FREPAINT 11 24330570Sdelphij#define A_F_LINE 12 25330570Sdelphij#define A_F_SCREEN 13 26330570Sdelphij#define A_F_SCROLL 14 27330570Sdelphij#define A_F_SEARCH 15 28330570Sdelphij#define A_GOEND 16 29330570Sdelphij#define A_GOLINE 17 30330570Sdelphij#define A_GOMARK 18 31330570Sdelphij#define A_HELP 19 32330570Sdelphij#define A_NEXT_FILE 20 33330570Sdelphij#define A_PERCENT 21 34330570Sdelphij#define A_PREV_FILE 23 35330570Sdelphij#define A_QUIT 24 36330570Sdelphij#define A_REPAINT 25 37330570Sdelphij#define A_SETMARK 26 38330570Sdelphij#define A_SHELL 27 39330570Sdelphij#define A_STAT 28 40330570Sdelphij#define A_FF_LINE 29 41330570Sdelphij#define A_BF_LINE 30 42330570Sdelphij#define A_VERSION 31 43330570Sdelphij#define A_VISUAL 32 44330570Sdelphij#define A_F_WINDOW 33 45330570Sdelphij#define A_B_WINDOW 34 46330570Sdelphij#define A_F_BRACKET 35 47330570Sdelphij#define A_B_BRACKET 36 48330570Sdelphij#define A_PIPE 37 49330570Sdelphij#define A_INDEX_FILE 38 50330570Sdelphij#define A_UNDO_SEARCH 39 51330570Sdelphij#define A_FF_SCREEN 40 52330570Sdelphij#define A_LSHIFT 41 53330570Sdelphij#define A_RSHIFT 42 54330570Sdelphij#define A_AGAIN_SEARCH 43 55330570Sdelphij#define A_T_AGAIN_SEARCH 44 56330570Sdelphij#define A_REVERSE_SEARCH 45 57330570Sdelphij#define A_T_REVERSE_SEARCH 46 58330570Sdelphij#define A_OPT_TOGGLE 47 59330570Sdelphij#define A_OPT_SET 48 60330570Sdelphij#define A_OPT_UNSET 49 61330570Sdelphij#define A_F_FOREVER 50 62330570Sdelphij#define A_GOPOS 51 63330570Sdelphij#define A_REMOVE_FILE 52 64330570Sdelphij#define A_NEXT_TAG 53 65330570Sdelphij#define A_PREV_TAG 54 66330570Sdelphij#define A_FILTER 55 67330570Sdelphij#define A_F_UNTIL_HILITE 56 68330570Sdelphij#define A_GOEND_BUF 57 69330570Sdelphij#define A_LLSHIFT 58 70330570Sdelphij#define A_RRSHIFT 59 71330570Sdelphij#define A_CLRMARK 62 72330570Sdelphij#define A_SETMARKBOT 63 73355504Sdelphij#define A_X11MOUSE_IN 64 74355504Sdelphij#define A_F_MOUSE 66 75355504Sdelphij#define A_B_MOUSE 67 76355504Sdelphij/* Note "X116" refers to extended (1006) X11 mouse reporting. */ 77355504Sdelphij#define A_X116MOUSE_IN 68 78369759Sgit2svn#define A_CLR_SEARCH 70 7960786Sps 80369759Sgit2svn/* These values must not conflict with any A_* or EC_* value. */ 81330570Sdelphij#define A_INVALID 100 82330570Sdelphij#define A_NOACTION 101 83330570Sdelphij#define A_UINVALID 102 84330570Sdelphij#define A_END_LIST 103 85330570Sdelphij#define A_SPECIAL_KEY 104 86369759Sgit2svn#define A_PREFIX 105 87330570Sdelphij#define A_SKIP 127 8860786Sps 89330570Sdelphij#define A_EXTRA 0200 9060786Sps 9160786Sps 92237613Sdelphij/* Line editing characters */ 9360786Sps 94330570Sdelphij#define EC_BACKSPACE 1 95330570Sdelphij#define EC_LINEKILL 2 96330570Sdelphij#define EC_RIGHT 3 97330570Sdelphij#define EC_LEFT 4 98330570Sdelphij#define EC_W_LEFT 5 99330570Sdelphij#define EC_W_RIGHT 6 100330570Sdelphij#define EC_INSERT 7 101330570Sdelphij#define EC_DELETE 8 102330570Sdelphij#define EC_HOME 9 103330570Sdelphij#define EC_END 10 104330570Sdelphij#define EC_W_BACKSPACE 11 105330570Sdelphij#define EC_W_DELETE 12 106330570Sdelphij#define EC_UP 13 107330570Sdelphij#define EC_DOWN 14 108330570Sdelphij#define EC_EXPAND 15 109330570Sdelphij#define EC_F_COMPLETE 17 110330570Sdelphij#define EC_B_COMPLETE 18 111330570Sdelphij#define EC_LITERAL 19 112330570Sdelphij#define EC_ABORT 20 113369759Sgit2svn#define EC_X11MOUSE 21 114369759Sgit2svn#define EC_X116MOUSE 22 11560786Sps 116330570Sdelphij#define EC_UINVALID 102 11760786Sps 11860786Sps/* Flags for editchar() */ 119369759Sgit2svn#define ECF_PEEK 01 120369759Sgit2svn#define ECF_NOHISTORY 02 121369759Sgit2svn#define ECF_NOCOMPLETE 04 122369759Sgit2svn#define ECF_NORIGHTLEFT 010 12360786Sps 12460786Sps/* Environment variable stuff */ 125330570Sdelphij#define EV_OK 01 12660786Sps 12760786Sps/* Special keys (keys which output different strings on different terminals) */ 128330570Sdelphij#define SK_SPECIAL_KEY CONTROL('K') 129330570Sdelphij#define SK_RIGHT_ARROW 1 130330570Sdelphij#define SK_LEFT_ARROW 2 131330570Sdelphij#define SK_UP_ARROW 3 132330570Sdelphij#define SK_DOWN_ARROW 4 133330570Sdelphij#define SK_PAGE_UP 5 134330570Sdelphij#define SK_PAGE_DOWN 6 135330570Sdelphij#define SK_HOME 7 136330570Sdelphij#define SK_END 8 137330570Sdelphij#define SK_DELETE 9 138330570Sdelphij#define SK_INSERT 10 139330570Sdelphij#define SK_CTL_LEFT_ARROW 11 140330570Sdelphij#define SK_CTL_RIGHT_ARROW 12 141330570Sdelphij#define SK_CTL_DELETE 13 142330570Sdelphij#define SK_F1 14 143330570Sdelphij#define SK_BACKTAB 15 144330570Sdelphij#define SK_CTL_BACKSPACE 16 145330570Sdelphij#define SK_CONTROL_K 40 146