defines.wn revision 170256
1/*
2 * Copyright (C) 1984-2007  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/* Windows definition file for less.  */
13/*
14 * This file has 2 sections:
15 * User preferences.
16 * Settings always true for Windows systems. 
17 */
18
19
20/* User preferences.  */
21
22/*
23 * SECURE is 1 if you wish to disable a bunch of features in order to
24 * be safe to run by unprivileged users.
25 */
26#define	SECURE		0
27
28/*
29 * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
30 * (This is possible only if your system supplies the system() function.)
31 */
32#define	SHELL_ESCAPE	(!SECURE)
33
34/*
35 * EXAMINE is 1 if you wish to allow examining files by name from within less.
36 */
37#define	EXAMINE		(!SECURE)
38
39/*
40 * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
41 * to complete filenames at prompts.
42 */
43#define	TAB_COMPLETE_FILENAME	(!SECURE)
44
45/*
46 * CMD_HISTORY is 1 if you wish to allow keys to cycle through
47 * previous commands at prompts.
48 */
49#define	CMD_HISTORY	1
50
51/*
52 * HILITE_SEARCH is 1 if you wish to have search targets to be 
53 * displayed in standout mode.
54 */
55#define	HILITE_SEARCH	1
56
57/*
58 * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
59 * (This is possible only if your system supplies the system() function.)
60 * EDIT_PGM is the name of the (default) editor to be invoked.
61 */
62#define	EDITOR		(!SECURE)
63#define	EDIT_PGM	"edit"
64
65/*
66 * TAGS is 1 if you wish to support tag files.
67 */
68#define	TAGS		(!SECURE)
69
70/*
71 * USERFILE is 1 if you wish to allow a .less file to specify 
72 * user-defined key bindings.
73 */
74#define	USERFILE	(!SECURE)
75
76/*
77 * GLOB is 1 if you wish to have shell metacharacters expanded in filenames.
78 * This will generally work if your system provides the "popen" function
79 * and the "echo" shell command.
80 */
81#define	GLOB		0
82
83/*
84 * PIPEC is 1 if you wish to have the "|" command
85 * which allows the user to pipe data into a shell command.
86 */
87#define	PIPEC		1
88
89/*
90 * LOGFILE is 1 if you wish to allow the -l option (to create log files).
91 */
92#define	LOGFILE		(!SECURE)
93
94/*
95 * GNU_OPTIONS is 1 if you wish to support the GNU-style command
96 * line options --help and --version.
97 */
98#define	GNU_OPTIONS	1
99
100/*
101 * ONLY_RETURN is 1 if you want RETURN to be the only input which
102 * will continue past an error message.
103 * Otherwise, any key will continue past an error message.
104 */
105#define	ONLY_RETURN	0
106
107/*
108 * LESSKEYFILE is the filename of the default lesskey output file 
109 * (in the HOME directory).
110 * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file.
111 * DEF_LESSKEYINFILE is the filename of the default lesskey input 
112 * (in the HOME directory).
113 * LESSHISTFILE is the filename of the history file
114 * (in the HOME directory).
115 */
116#define	LESSKEYFILE		"_less"
117#define	LESSKEYFILE_SYS		"c:\\_sysless"
118#define	DEF_LESSKEYINFILE	"_lesskey"
119#define LESSHISTFILE		"_lesshst"
120
121
122/* Settings always true for Windows systems.  */
123
124#define MSDOS_COMPILER	WIN32C
125
126/*
127 * Pathname separator character.
128 */
129#define	PATHNAME_SEP	"\\"
130
131/*
132 * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
133 */
134#define HAVE_SYS_TYPES_H	1
135
136/*
137 * Define if you have the <sgstat.h> header file.
138 */
139#define HAVE_SGSTAT_H	0
140
141/*
142 * HAVE_PERROR is 1 if your system has the perror() call.
143 * (Actually, if it has sys_errlist, sys_nerr and errno.)
144 */
145#define	HAVE_PERROR	1
146
147/*
148 * HAVE_TIME is 1 if your system has the time() call.
149 */
150#define	HAVE_TIME	1
151
152/*
153 * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
154 */
155#define	HAVE_SHELL	0
156
157/*
158 * Default shell metacharacters and meta-escape character.
159 */
160#define	DEF_METACHARS	"; *?\t\n'\"()<>|&"
161#define	DEF_METAESCAPE	""
162
163/* 
164 * HAVE_DUP is 1 if your system has the dup() call.
165 */
166#define	HAVE_DUP	1
167
168/*
169 * Sizes of various buffers.
170 */
171#define	CMDBUF_SIZE	512	/* Buffer for multichar commands */
172#define	UNGOT_SIZE	100	/* Max chars to unget() */
173#define	LINEBUF_SIZE	1024	/* Max size of line in input file */
174#define	OUTBUF_SIZE	1024	/* Output buffer */
175#define	PROMPT_SIZE	200	/* Max size of prompt string */
176#define	TERMBUF_SIZE	2048	/* Termcap buffer for tgetent */
177#define	TERMSBUF_SIZE	1024	/* Buffer to hold termcap strings */
178#define	TAGLINE_SIZE	512	/* Max size of line in tags file */
179#define	TABSTOP_MAX	32	/* Max number of custom tab stops */
180
181/* Define to `long' if <sys/types.h> doesn't define.  */
182/* #define	off_t	long */
183
184/* Define if you need to in order for stat and other things to work.  */
185/* #undef _POSIX_SOURCE */
186
187/* Define as the return type of signal handlers (int or void).  */
188#define RETSIGTYPE void
189
190
191/*
192 * Regular expression library.
193 * Define exactly one of the following to be 1:
194 * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h
195 * HAVE_RE_COMP: BSD re_comp()
196 * HAVE_REGCMP: System V regcmp()
197 * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h
198 * NO_REGEX: pattern matching is supported, but without metacharacters.
199 */
200/* #undef HAVE_POSIX_REGCOMP */
201/* #undef HAVE_RE_COMP */
202/* #undef HAVE_REGCMP */
203#define HAVE_V8_REGCOMP 1
204/* #undef NO_REGEX */
205#define HAVE_REGEXEC2 1
206
207/* Define HAVE_VOID if your compiler supports the "void" type. */
208#define HAVE_VOID 1
209
210/* Define HAVE_CONST if your compiler supports the "const" modifier. */
211#define HAVE_CONST 1
212
213/* Define HAVE_TIME_T if your system supports the "time_t" type. */
214#define HAVE_TIME_T 1
215
216/* Define HAVE_STRERROR if you have the strerror() function. */
217#define HAVE_STRERROR 1
218
219/* Define HAVE_FILENO if you have the fileno() macro. */
220#define HAVE_FILENO 1
221
222/* Define HAVE_ERRNO if you have the errno variable */
223/* Define MUST_DEFINE_ERRNO if you have errno but it is not define 
224 * in errno.h */
225#define HAVE_ERRNO 1
226#define MUST_DEFINE_ERRNO 1
227
228/* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */
229#define HAVE_SYS_ERRLIST 1
230
231/* Define HAVE_OSPEED if your termcap library has the ospeed variable */
232#define HAVE_OSPEED 0
233/* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined
234 * in termcap.h. */
235#define MUST_DEFINE_OSPEED 0
236
237/* Define HAVE_LOCALE if you have locale.h and setlocale. */
238#define HAVE_LOCALE 0
239
240/* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */
241#define HAVE_TERMIOS_FUNCS 0
242
243/* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */
244#define HAVE_UPPER_LOWER 1
245
246/* Define if you have the _setjmp function.  */
247#define HAVE__SETJMP	1
248
249/* Define if you have the memcpy function.  */
250#define HAVE_MEMCPY 1
251
252/* Define if you have the popen function.  */
253#define HAVE_POPEN 1
254
255/* Define if you have the sigsetmask function.  */
256#define HAVE_SIGSETMASK	0
257
258/* Define if you have the sigprocmask function.  */
259#define HAVE_SIGPROCMASK	0
260
261/* Define if you have the sigset_t type and sigemptyset macro */
262#define HAVE_SIGSET_T	0
263#define HAVE_SIGEMPTYSET	0
264
265/* Define if you have the stat function.  */
266#define HAVE_STAT 1
267
268/* Define if you have the strchr function.  */
269#define HAVE_STRCHR 1
270
271/* Define if you have the system function.  */
272#define HAVE_SYSTEM	1
273
274/* Define if you have the snprintf function.  */
275#define HAVE_SNPRINTF	0
276
277/* Define if you have the <ctype.h> header file.  */
278#define HAVE_CTYPE_H 1
279
280/* Define if you have the <errno.h> header file.  */
281#define HAVE_ERRNO_H 1
282
283/* Define if you have the <fcntl.h> header file.  */
284#define HAVE_FCNTL_H 1
285
286/* Define if you have the <limits.h> header file.  */
287#define HAVE_LIMITS_H 0
288
289/* Define if you have the <stdio.h> header file.  */
290#define HAVE_STDIO_H 1
291
292/* Define if you have the <string.h> header file.  */
293#define HAVE_STRING_H 1
294
295/* Define if you have the <stdlib> header file. */
296#define HAVE_STDLIB_H 1
297
298/* Define if you have the <sys/ioctl.h> header file.  */
299#define HAVE_SYS_IOCTL_H 0
300
301/* Define if you have the <sys/ptem.h> header file.  */
302#define HAVE_SYS_PTEM_H	0
303
304/* Define if you have the <sys/stream.h> header file.  */
305#define HAVE_SYS_STREAM_H	0
306
307/* Define if you have the <termcap.h> header file.  */
308#define HAVE_TERMCAP_H	0
309
310/* Define if you have the <termio.h> header file.  */
311#define HAVE_TERMIO_H	0
312
313/* Define if you have the <termios.h> header file.  */
314#define HAVE_TERMIOS_H 0
315
316/* Define if you have the <time.h> header file.  */
317#define HAVE_TIME_H 1
318
319/* Define if you have the <unistd.h> header file.  */
320#define HAVE_UNISTD_H 0
321
322/* Define if you have the <values.h> header file.  */
323#ifdef _MSC_VER
324#define HAVE_VALUES_H 0
325#else
326#define HAVE_VALUES_H 1
327#endif
328
329#define	popen	_popen
330#define	pclose	_pclose
331