8f300dbe029676ca417984cf77cff8e582c7182c
[dragonfly.git] / contrib / less-381 / cmd.h
1 /*
2  * Copyright (C) 1984-2002  Mark Nudelman
3  *
4  * You may distribute under the terms of either the GNU General Public
5  * License or the Less License, as specified in the README file.
6  *
7  * For more information about less, or for information on how to 
8  * contact the author, see the README file.
9  */
10
11
12 #define MAX_USERCMD             500
13 #define MAX_CMDLEN              16
14
15 #define A_B_LINE                2
16 #define A_B_SCREEN              3
17 #define A_B_SCROLL              4
18 #define A_B_SEARCH              5
19 #define A_DIGIT                 6
20 #define A_DISP_OPTION           7
21 #define A_DEBUG                 8
22 #define A_EXAMINE               9
23 #define A_FIRSTCMD              10
24 #define A_FREPAINT              11
25 #define A_F_LINE                12
26 #define A_F_SCREEN              13
27 #define A_F_SCROLL              14
28 #define A_F_SEARCH              15
29 #define A_GOEND                 16
30 #define A_GOLINE                17
31 #define A_GOMARK                18
32 #define A_HELP                  19
33 #define A_NEXT_FILE             20
34 #define A_PERCENT               21
35 #define A_PREFIX                22
36 #define A_PREV_FILE             23
37 #define A_QUIT                  24
38 #define A_REPAINT               25
39 #define A_SETMARK               26
40 #define A_SHELL                 27
41 #define A_STAT                  28
42 #define A_FF_LINE               29
43 #define A_BF_LINE               30
44 #define A_VERSION               31
45 #define A_VISUAL                32
46 #define A_F_WINDOW              33
47 #define A_B_WINDOW              34
48 #define A_F_BRACKET             35
49 #define A_B_BRACKET             36
50 #define A_PIPE                  37
51 #define A_INDEX_FILE            38
52 #define A_UNDO_SEARCH           39
53 #define A_FF_SCREEN             40
54 #define A_LSHIFT                41
55 #define A_RSHIFT                42
56 #define A_AGAIN_SEARCH          43
57 #define A_T_AGAIN_SEARCH        44
58 #define A_REVERSE_SEARCH        45
59 #define A_T_REVERSE_SEARCH      46
60 #define A_OPT_TOGGLE            47
61 #define A_OPT_SET               48
62 #define A_OPT_UNSET             49
63 #define A_F_FOREVER             50
64 #define A_GOPOS                 51
65 #define A_REMOVE_FILE           52
66 #define A_NEXT_TAG              53
67 #define A_PREV_TAG              54
68
69 #define A_INVALID               100
70 #define A_NOACTION              101
71 #define A_UINVALID              102
72 #define A_END_LIST              103
73 #define A_SPECIAL_KEY           104
74
75 #define A_SKIP                  127
76
77 #define A_EXTRA                 0200
78
79
80 /* Line editting characters */
81
82 #define EC_BACKSPACE    1
83 #define EC_LINEKILL     2
84 #define EC_RIGHT        3
85 #define EC_LEFT         4
86 #define EC_W_LEFT       5
87 #define EC_W_RIGHT      6
88 #define EC_INSERT       7
89 #define EC_DELETE       8
90 #define EC_HOME         9
91 #define EC_END          10
92 #define EC_W_BACKSPACE  11
93 #define EC_W_DELETE     12
94 #define EC_UP           13
95 #define EC_DOWN         14
96 #define EC_EXPAND       15
97 #define EC_F_COMPLETE   17
98 #define EC_B_COMPLETE   18
99 #define EC_LITERAL      19
100
101 #define EC_NOACTION     101
102 #define EC_UINVALID     102
103
104 /* Flags for editchar() */
105 #define EC_PEEK         01
106 #define EC_NOHISTORY    02
107 #define EC_NOCOMPLETE   04
108 #define EC_NORIGHTLEFT  010
109
110 /* Environment variable stuff */
111 #define EV_OK           01
112
113 /* Special keys (keys which output different strings on different terminals) */
114 #define SK_SPECIAL_KEY          CONTROL('K')
115 #define SK_RIGHT_ARROW          1
116 #define SK_LEFT_ARROW           2
117 #define SK_UP_ARROW             3
118 #define SK_DOWN_ARROW           4
119 #define SK_PAGE_UP              5
120 #define SK_PAGE_DOWN            6
121 #define SK_HOME                 7
122 #define SK_END                  8
123 #define SK_DELETE               9
124 #define SK_INSERT               10
125 #define SK_CTL_LEFT_ARROW       11
126 #define SK_CTL_RIGHT_ARROW      12
127 #define SK_CTL_DELETE           13
128 #define SK_F1                   14
129 #define SK_BACKTAB              15
130 #define SK_CTL_BACKSPACE        16
131 #define SK_CONTROL_K            40