1*838f5788Ssimonb /* $NetBSD: cmd.h,v 1.4 2023/10/06 05:49:49 simonb Exp $ */ 220006a0bStron 320006a0bStron /* 4*838f5788Ssimonb * Copyright (C) 1984-2023 Mark Nudelman 520006a0bStron * 620006a0bStron * You may distribute under the terms of either the GNU General Public 720006a0bStron * License or the Less License, as specified in the README file. 820006a0bStron * 9ec18bca0Stron * For more information, see the README file. 1020006a0bStron */ 1120006a0bStron 1220006a0bStron 13ec18bca0Stron #define MAX_USERCMD 1000 1420006a0bStron #define MAX_CMDLEN 16 1520006a0bStron 1620006a0bStron #define A_B_LINE 2 1720006a0bStron #define A_B_SCREEN 3 1820006a0bStron #define A_B_SCROLL 4 1920006a0bStron #define A_B_SEARCH 5 2020006a0bStron #define A_DIGIT 6 2120006a0bStron #define A_DISP_OPTION 7 2220006a0bStron #define A_DEBUG 8 2320006a0bStron #define A_EXAMINE 9 2420006a0bStron #define A_FIRSTCMD 10 2520006a0bStron #define A_FREPAINT 11 2620006a0bStron #define A_F_LINE 12 2720006a0bStron #define A_F_SCREEN 13 2820006a0bStron #define A_F_SCROLL 14 2920006a0bStron #define A_F_SEARCH 15 3020006a0bStron #define A_GOEND 16 3120006a0bStron #define A_GOLINE 17 3220006a0bStron #define A_GOMARK 18 3320006a0bStron #define A_HELP 19 3420006a0bStron #define A_NEXT_FILE 20 3520006a0bStron #define A_PERCENT 21 3620006a0bStron #define A_PREV_FILE 23 3720006a0bStron #define A_QUIT 24 3820006a0bStron #define A_REPAINT 25 3920006a0bStron #define A_SETMARK 26 4020006a0bStron #define A_SHELL 27 4120006a0bStron #define A_STAT 28 4220006a0bStron #define A_FF_LINE 29 4320006a0bStron #define A_BF_LINE 30 4420006a0bStron #define A_VERSION 31 4520006a0bStron #define A_VISUAL 32 4620006a0bStron #define A_F_WINDOW 33 4720006a0bStron #define A_B_WINDOW 34 4820006a0bStron #define A_F_BRACKET 35 4920006a0bStron #define A_B_BRACKET 36 5020006a0bStron #define A_PIPE 37 5120006a0bStron #define A_INDEX_FILE 38 5220006a0bStron #define A_UNDO_SEARCH 39 5320006a0bStron #define A_FF_SCREEN 40 5420006a0bStron #define A_LSHIFT 41 5520006a0bStron #define A_RSHIFT 42 5620006a0bStron #define A_AGAIN_SEARCH 43 5720006a0bStron #define A_T_AGAIN_SEARCH 44 5820006a0bStron #define A_REVERSE_SEARCH 45 5920006a0bStron #define A_T_REVERSE_SEARCH 46 6020006a0bStron #define A_OPT_TOGGLE 47 6120006a0bStron #define A_OPT_SET 48 6220006a0bStron #define A_OPT_UNSET 49 6320006a0bStron #define A_F_FOREVER 50 6420006a0bStron #define A_GOPOS 51 6520006a0bStron #define A_REMOVE_FILE 52 6620006a0bStron #define A_NEXT_TAG 53 6720006a0bStron #define A_PREV_TAG 54 6820006a0bStron #define A_FILTER 55 69ec18bca0Stron #define A_F_UNTIL_HILITE 56 70*838f5788Ssimonb #define A_GOEND_BUF 57 71*838f5788Ssimonb #define A_LLSHIFT 58 72*838f5788Ssimonb #define A_RRSHIFT 59 73*838f5788Ssimonb #define A_CLRMARK 62 74*838f5788Ssimonb #define A_SETMARKBOT 63 75*838f5788Ssimonb #define A_X11MOUSE_IN 64 76*838f5788Ssimonb #define A_F_MOUSE 66 77*838f5788Ssimonb #define A_B_MOUSE 67 78*838f5788Ssimonb /* Note "X116" refers to extended (1006) X11 mouse reporting. */ 79*838f5788Ssimonb #define A_X116MOUSE_IN 68 80*838f5788Ssimonb #define A_PSHELL 69 81*838f5788Ssimonb #define A_CLR_SEARCH 70 8220006a0bStron 83*838f5788Ssimonb /* These values must not conflict with any A_* or EC_* value. */ 8420006a0bStron #define A_INVALID 100 8520006a0bStron #define A_NOACTION 101 8620006a0bStron #define A_UINVALID 102 8720006a0bStron #define A_END_LIST 103 8820006a0bStron #define A_SPECIAL_KEY 104 89*838f5788Ssimonb #define A_PREFIX 105 9020006a0bStron #define A_SKIP 127 9120006a0bStron 9220006a0bStron #define A_EXTRA 0200 9320006a0bStron 9420006a0bStron 95ec18bca0Stron /* Line editing characters */ 9620006a0bStron 9720006a0bStron #define EC_BACKSPACE 1 9820006a0bStron #define EC_LINEKILL 2 9920006a0bStron #define EC_RIGHT 3 10020006a0bStron #define EC_LEFT 4 10120006a0bStron #define EC_W_LEFT 5 10220006a0bStron #define EC_W_RIGHT 6 10320006a0bStron #define EC_INSERT 7 10420006a0bStron #define EC_DELETE 8 10520006a0bStron #define EC_HOME 9 10620006a0bStron #define EC_END 10 10720006a0bStron #define EC_W_BACKSPACE 11 10820006a0bStron #define EC_W_DELETE 12 10920006a0bStron #define EC_UP 13 11020006a0bStron #define EC_DOWN 14 11120006a0bStron #define EC_EXPAND 15 11220006a0bStron #define EC_F_COMPLETE 17 11320006a0bStron #define EC_B_COMPLETE 18 11420006a0bStron #define EC_LITERAL 19 11520006a0bStron #define EC_ABORT 20 116*838f5788Ssimonb #define EC_X11MOUSE 21 117*838f5788Ssimonb #define EC_X116MOUSE 22 11820006a0bStron 11920006a0bStron #define EC_UINVALID 102 12020006a0bStron 12120006a0bStron /* Flags for editchar() */ 122*838f5788Ssimonb #define ECF_PEEK 01 123*838f5788Ssimonb #define ECF_NOHISTORY 02 124*838f5788Ssimonb #define ECF_NOCOMPLETE 04 125*838f5788Ssimonb #define ECF_NORIGHTLEFT 010 12620006a0bStron 12720006a0bStron /* Environment variable stuff */ 12820006a0bStron #define EV_OK 01 12920006a0bStron 13020006a0bStron /* Special keys (keys which output different strings on different terminals) */ 13120006a0bStron #define SK_SPECIAL_KEY CONTROL('K') 13220006a0bStron #define SK_RIGHT_ARROW 1 13320006a0bStron #define SK_LEFT_ARROW 2 13420006a0bStron #define SK_UP_ARROW 3 13520006a0bStron #define SK_DOWN_ARROW 4 13620006a0bStron #define SK_PAGE_UP 5 13720006a0bStron #define SK_PAGE_DOWN 6 13820006a0bStron #define SK_HOME 7 13920006a0bStron #define SK_END 8 14020006a0bStron #define SK_DELETE 9 14120006a0bStron #define SK_INSERT 10 14220006a0bStron #define SK_CTL_LEFT_ARROW 11 14320006a0bStron #define SK_CTL_RIGHT_ARROW 12 14420006a0bStron #define SK_CTL_DELETE 13 14520006a0bStron #define SK_F1 14 14620006a0bStron #define SK_BACKTAB 15 14720006a0bStron #define SK_CTL_BACKSPACE 16 148*838f5788Ssimonb #define SK_BACKSPACE 17 14920006a0bStron #define SK_CONTROL_K 40 150