cmd.h revision 240121
1151937Sjkim/*
2151937Sjkim * Copyright (C) 1984-2012  Mark Nudelman
3151937Sjkim *
4151937Sjkim * You may distribute under the terms of either the GNU General Public
5151937Sjkim * License or the Less License, as specified in the README file.
6151937Sjkim *
7151937Sjkim * For more information, see the README file.
8151937Sjkim */
9151937Sjkim
10151937Sjkim
11151937Sjkim#define	MAX_USERCMD		1000
12151937Sjkim#define	MAX_CMDLEN		16
13151937Sjkim
14151937Sjkim#define	A_B_LINE		2
15151937Sjkim#define	A_B_SCREEN		3
16151937Sjkim#define	A_B_SCROLL		4
17151937Sjkim#define	A_B_SEARCH		5
18151937Sjkim#define	A_DIGIT			6
19151937Sjkim#define	A_DISP_OPTION		7
20151937Sjkim#define	A_DEBUG			8
21151937Sjkim#define	A_EXAMINE		9
22151937Sjkim#define	A_FIRSTCMD		10
23151937Sjkim#define	A_FREPAINT		11
24151937Sjkim#define	A_F_LINE		12
25151937Sjkim#define	A_F_SCREEN		13
26151937Sjkim#define	A_F_SCROLL		14
27151937Sjkim#define	A_F_SEARCH		15
28151937Sjkim#define	A_GOEND			16
29151937Sjkim#define	A_GOLINE		17
30151937Sjkim#define	A_GOMARK		18
31151937Sjkim#define	A_HELP			19
32151937Sjkim#define	A_NEXT_FILE		20
33151937Sjkim#define	A_PERCENT		21
34151937Sjkim#define	A_PREFIX		22
35151937Sjkim#define	A_PREV_FILE		23
36151937Sjkim#define	A_QUIT			24
37151937Sjkim#define	A_REPAINT		25
38151937Sjkim#define	A_SETMARK		26
39151937Sjkim#define	A_SHELL			27
40151937Sjkim#define	A_STAT			28
41151937Sjkim#define	A_FF_LINE		29
42151937Sjkim#define	A_BF_LINE		30
43151937Sjkim#define	A_VERSION		31
44151937Sjkim#define	A_VISUAL		32
45151937Sjkim#define	A_F_WINDOW		33
46151937Sjkim#define	A_B_WINDOW		34
47151937Sjkim#define	A_F_BRACKET		35
48151937Sjkim#define	A_B_BRACKET		36
49151937Sjkim#define	A_PIPE			37
50151937Sjkim#define	A_INDEX_FILE		38
51151937Sjkim#define	A_UNDO_SEARCH		39
52151937Sjkim#define	A_FF_SCREEN		40
53151937Sjkim#define	A_LSHIFT		41
54151937Sjkim#define	A_RSHIFT		42
55151937Sjkim#define	A_AGAIN_SEARCH		43
56151937Sjkim#define	A_T_AGAIN_SEARCH	44
57151937Sjkim#define	A_REVERSE_SEARCH	45
58151937Sjkim#define	A_T_REVERSE_SEARCH	46
59151937Sjkim#define	A_OPT_TOGGLE		47
60151937Sjkim#define	A_OPT_SET		48
61151937Sjkim#define	A_OPT_UNSET		49
62151937Sjkim#define	A_F_FOREVER		50
63151937Sjkim#define	A_GOPOS			51
64151937Sjkim#define	A_REMOVE_FILE		52
65151937Sjkim#define	A_NEXT_TAG		53
66151937Sjkim#define	A_PREV_TAG		54
67151937Sjkim#define	A_FILTER		55
68151937Sjkim#define	A_F_UNTIL_HILITE	56
69151937Sjkim
70151937Sjkim#define	A_INVALID		100
71151937Sjkim#define	A_NOACTION		101
72151937Sjkim#define	A_UINVALID		102
73151937Sjkim#define	A_END_LIST		103
74151937Sjkim#define	A_SPECIAL_KEY		104
75151937Sjkim
76151937Sjkim#define A_SKIP			127
77151937Sjkim
78151937Sjkim#define	A_EXTRA			0200
79151937Sjkim
80151937Sjkim
81151937Sjkim/* Line editing characters */
82151937Sjkim
83151937Sjkim#define	EC_BACKSPACE	1
84151937Sjkim#define	EC_LINEKILL	2
85151937Sjkim#define	EC_RIGHT	3
86151937Sjkim#define	EC_LEFT		4
87151937Sjkim#define	EC_W_LEFT	5
88151937Sjkim#define	EC_W_RIGHT	6
89151937Sjkim#define	EC_INSERT 	7
90151937Sjkim#define	EC_DELETE	8
91151937Sjkim#define	EC_HOME		9
92151937Sjkim#define	EC_END		10
93151937Sjkim#define	EC_W_BACKSPACE	11
94151937Sjkim#define	EC_W_DELETE	12
95151937Sjkim#define	EC_UP		13
96151937Sjkim#define	EC_DOWN		14
97151937Sjkim#define	EC_EXPAND	15
98151937Sjkim#define	EC_F_COMPLETE	17
99151937Sjkim#define	EC_B_COMPLETE	18
100151937Sjkim#define	EC_LITERAL	19
101151937Sjkim#define	EC_ABORT	20
102151937Sjkim
103151937Sjkim#define	EC_NOACTION	101
104151937Sjkim#define	EC_UINVALID	102
105151937Sjkim
106151937Sjkim/* Flags for editchar() */
107151937Sjkim#define	EC_PEEK		01
108151937Sjkim#define	EC_NOHISTORY	02
109151937Sjkim#define	EC_NOCOMPLETE	04
110151937Sjkim#define	EC_NORIGHTLEFT	010
111151937Sjkim
112151937Sjkim/* Environment variable stuff */
113151937Sjkim#define	EV_OK		01
114151937Sjkim
115151937Sjkim/* Special keys (keys which output different strings on different terminals) */
116151937Sjkim#define SK_SPECIAL_KEY		CONTROL('K')
117151937Sjkim#define SK_RIGHT_ARROW		1
118151937Sjkim#define SK_LEFT_ARROW		2
119151937Sjkim#define SK_UP_ARROW		3
120151937Sjkim#define SK_DOWN_ARROW		4
121151937Sjkim#define SK_PAGE_UP		5
122151937Sjkim#define SK_PAGE_DOWN		6
123151937Sjkim#define SK_HOME			7
124151937Sjkim#define SK_END			8
125151937Sjkim#define SK_DELETE		9
126151937Sjkim#define SK_INSERT		10
127151937Sjkim#define SK_CTL_LEFT_ARROW	11
128151937Sjkim#define SK_CTL_RIGHT_ARROW	12
129151937Sjkim#define SK_CTL_DELETE		13
130151937Sjkim#define SK_F1			14
131151937Sjkim#define SK_BACKTAB		15
132151937Sjkim#define SK_CTL_BACKSPACE	16
133151937Sjkim#define SK_CONTROL_K		40
134151937Sjkim