cmd.h revision 195941
1204076Spjd/* 2204076Spjd * Copyright (C) 1984-2009 Mark Nudelman 3211877Spjd * 4204076Spjd * You may distribute under the terms of either the GNU General Public 5204076Spjd * License or the Less License, as specified in the README file. 6204076Spjd * 7204076Spjd * For more information about less, or for information on how to 8204076Spjd * contact the author, see the README file. 9204076Spjd */ 10204076Spjd 11204076Spjd 12204076Spjd#define MAX_USERCMD 500 13204076Spjd#define MAX_CMDLEN 16 14204076Spjd 15204076Spjd#define A_B_LINE 2 16204076Spjd#define A_B_SCREEN 3 17204076Spjd#define A_B_SCROLL 4 18204076Spjd#define A_B_SEARCH 5 19204076Spjd#define A_DIGIT 6 20204076Spjd#define A_DISP_OPTION 7 21204076Spjd#define A_DEBUG 8 22204076Spjd#define A_EXAMINE 9 23204076Spjd#define A_FIRSTCMD 10 24204076Spjd#define A_FREPAINT 11 25204076Spjd#define A_F_LINE 12 26204076Spjd#define A_F_SCREEN 13 27204076Spjd#define A_F_SCROLL 14 28204076Spjd#define A_F_SEARCH 15 29204076Spjd#define A_GOEND 16 30204076Spjd#define A_GOLINE 17 31204076Spjd#define A_GOMARK 18 32204076Spjd#define A_HELP 19 33204076Spjd#define A_NEXT_FILE 20 34204076Spjd#define A_PERCENT 21 35204076Spjd#define A_PREFIX 22 36204076Spjd#define A_PREV_FILE 23 37204076Spjd#define A_QUIT 24 38204076Spjd#define A_REPAINT 25 39204076Spjd#define A_SETMARK 26 40204076Spjd#define A_SHELL 27 41204076Spjd#define A_STAT 28 42204076Spjd#define A_FF_LINE 29 43204076Spjd#define A_BF_LINE 30 44204076Spjd#define A_VERSION 31 45204076Spjd#define A_VISUAL 32 46204076Spjd#define A_F_WINDOW 33 47204076Spjd#define A_B_WINDOW 34 48204076Spjd#define A_F_BRACKET 35 49204076Spjd#define A_B_BRACKET 36 50204076Spjd#define A_PIPE 37 51204076Spjd#define A_INDEX_FILE 38 52204076Spjd#define A_UNDO_SEARCH 39 53204076Spjd#define A_FF_SCREEN 40 54204076Spjd#define A_LSHIFT 41 55204076Spjd#define A_RSHIFT 42 56204076Spjd#define A_AGAIN_SEARCH 43 57204076Spjd#define A_T_AGAIN_SEARCH 44 58204076Spjd#define A_REVERSE_SEARCH 45 59204076Spjd#define A_T_REVERSE_SEARCH 46 60204076Spjd#define A_OPT_TOGGLE 47 61204076Spjd#define A_OPT_SET 48 62204076Spjd#define A_OPT_UNSET 49 63204076Spjd#define A_F_FOREVER 50 64204076Spjd#define A_GOPOS 51 65204076Spjd#define A_REMOVE_FILE 52 66204076Spjd#define A_NEXT_TAG 53 67204076Spjd#define A_PREV_TAG 54 68204076Spjd#define A_FILTER 55 69204076Spjd 70204076Spjd#define A_INVALID 100 71204076Spjd#define A_NOACTION 101 72204076Spjd#define A_UINVALID 102 73204076Spjd#define A_END_LIST 103 74204076Spjd#define A_SPECIAL_KEY 104 75204076Spjd 76204076Spjd#define A_SKIP 127 77204076Spjd 78204076Spjd#define A_EXTRA 0200 79204076Spjd 80204076Spjd 81204076Spjd/* Line editting characters */ 82204076Spjd 83204076Spjd#define EC_BACKSPACE 1 84204076Spjd#define EC_LINEKILL 2 85204076Spjd#define EC_RIGHT 3 86204076Spjd#define EC_LEFT 4 87204076Spjd#define EC_W_LEFT 5 88204076Spjd#define EC_W_RIGHT 6 89204076Spjd#define EC_INSERT 7 90204076Spjd#define EC_DELETE 8 91204076Spjd#define EC_HOME 9 92204076Spjd#define EC_END 10 93204076Spjd#define EC_W_BACKSPACE 11 94204076Spjd#define EC_W_DELETE 12 95204076Spjd#define EC_UP 13 96204076Spjd#define EC_DOWN 14 97204076Spjd#define EC_EXPAND 15 98204076Spjd#define EC_F_COMPLETE 17 99204076Spjd#define EC_B_COMPLETE 18 100204076Spjd#define EC_LITERAL 19 101204076Spjd 102204076Spjd#define EC_NOACTION 101 103204076Spjd#define EC_UINVALID 102 104204076Spjd 105204076Spjd/* Flags for editchar() */ 106211877Spjd#define EC_PEEK 01 107211877Spjd#define EC_NOHISTORY 02 108211877Spjd#define EC_NOCOMPLETE 04 109211877Spjd#define EC_NORIGHTLEFT 010 110211877Spjd 111211877Spjd/* Environment variable stuff */ 112211877Spjd#define EV_OK 01 113211877Spjd 114211877Spjd/* Special keys (keys which output different strings on different terminals) */ 115211877Spjd#define SK_SPECIAL_KEY CONTROL('K') 116211877Spjd#define SK_RIGHT_ARROW 1 117211877Spjd#define SK_LEFT_ARROW 2 118211877Spjd#define SK_UP_ARROW 3 119211877Spjd#define SK_DOWN_ARROW 4 120211877Spjd#define SK_PAGE_UP 5 121211877Spjd#define SK_PAGE_DOWN 6 122211877Spjd#define SK_HOME 7 123211877Spjd#define SK_END 8 124211877Spjd#define SK_DELETE 9 125211877Spjd#define SK_INSERT 10 126204076Spjd#define SK_CTL_LEFT_ARROW 11 127204076Spjd#define SK_CTL_RIGHT_ARROW 12 128204076Spjd#define SK_CTL_DELETE 13 129204076Spjd#define SK_F1 14 130204076Spjd#define SK_BACKTAB 15 131204076Spjd#define SK_CTL_BACKSPACE 16 132204076Spjd#define SK_CONTROL_K 40 133204076Spjd