defines.wn revision 63128
110217Sphk/*
215284Snate * Copyright (C) 1984-2000  Mark Nudelman
315284Snate *
415284Snate * You may distribute under the terms of either the GNU General Public
515284Snate * License or the Less License, as specified in the README file.
615284Snate *
715284Snate * For more information about less, or for information on how to 
815284Snate * contact the author, see the README file.
915284Snate */
1015284Snate
1115284Snate
1215284Snate/* Windows definition file for less.  */
1315284Snate/*
1415284Snate * This file has 2 sections:
1515284Snate * User preferences.
1615284Snate * Settings always true for Windows systems. 
1715284Snate */
1815284Snate
1915284Snate
2015284Snate/* User preferences.  */
2115284Snate
2215284Snate/*
2315284Snate * SECURE is 1 if you wish to disable a bunch of features in order to
2415284Snate * be safe to run by unprivileged users.
2515284Snate */
2650479Speter#define	SECURE		0
2710217Sphk
2815284Snate/*
2915177Snate * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
3010217Sphk * (This is possible only if your system supplies the system() function.)
3110217Sphk */
3215177Snate#define	SHELL_ESCAPE	(!SECURE)
3310217Sphk
3415177Snate/*
3510217Sphk * EXAMINE is 1 if you wish to allow examining files by name from within less.
3615177Snate */
3710217Sphk#define	EXAMINE		(!SECURE)
3810217Sphk
3915177Snate/*
4015177Snate * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
4115177Snate * to complete filenames at prompts.
4210217Sphk */
4315177Snate#define	TAB_COMPLETE_FILENAME	(!SECURE)
44185033Simp
4510217Sphk/*
4615177Snate * CMD_HISTORY is 1 if you wish to allow keys to cycle through
4715177Snate * previous commands at prompts.
4815177Snate */
4959656Siwasaki#define	CMD_HISTORY	1
5059656Siwasaki
5159656Siwasaki/*
5259656Siwasaki * HILITE_SEARCH is 1 if you wish to have search targets to be 
5359656Siwasaki * displayed in standout mode.
5459656Siwasaki */
5559656Siwasaki#define	HILITE_SEARCH	1
56185121Simp
57185121Simp/*
58185121Simp * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
5916484Snate * (This is possible only if your system supplies the system() function.)
60185033Simp * EDIT_PGM is the name of the (default) editor to be invoked.
6159656Siwasaki */
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 */
114#define	LESSKEYFILE		"_less"
115#define	LESSKEYFILE_SYS		"c:\\_sysless"
116#define	DEF_LESSKEYINFILE	"_lesskey"
117
118
119/* Settings always true for Windows systems.  */
120
121#define MSDOS_COMPILER	WIN32C
122
123/*
124 * Pathname separator character.
125 */
126#define	PATHNAME_SEP	"\\"
127
128/*
129 * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
130 */
131#define HAVE_SYS_TYPES_H	1
132
133/*
134 * Define if you have the <sgstat.h> header file.
135 */
136#define HAVE_SGSTAT_H	0
137
138/*
139 * HAVE_PERROR is 1 if your system has the perror() call.
140 * (Actually, if it has sys_errlist, sys_nerr and errno.)
141 */
142#define	HAVE_PERROR	1
143
144/*
145 * HAVE_TIME is 1 if your system has the time() call.
146 */
147#define	HAVE_TIME	1
148
149/*
150 * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
151 */
152#define	HAVE_SHELL	0
153
154/* 
155 * HAVE_DUP is 1 if your system has the dup() call.
156 */
157#define	HAVE_DUP	1
158
159/*
160 * Sizes of various buffers.
161 */
162#define	CMDBUF_SIZE	512	/* Buffer for multichar commands */
163#define	UNGOT_SIZE	100	/* Max chars to unget() */
164#define	LINEBUF_SIZE	1024	/* Max size of line in input file */
165#define	OUTBUF_SIZE	1024	/* Output buffer */
166#define	PROMPT_SIZE	200	/* Max size of prompt string */
167#define	TERMBUF_SIZE	2048	/* Termcap buffer for tgetent */
168#define	TERMSBUF_SIZE	1024	/* Buffer to hold termcap strings */
169#define	TAGLINE_SIZE	512	/* Max size of line in tags file */
170
171/* Define to `long' if <sys/types.h> doesn't define.  */
172/* #define	off_t	long */
173
174/* Define if you need to in order for stat and other things to work.  */
175/* #undef _POSIX_SOURCE */
176
177/* Define as the return type of signal handlers (int or void).  */
178#define RETSIGTYPE void
179
180
181/*
182 * Regular expression library.
183 * Define exactly one of the following to be 1:
184 * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h
185 * HAVE_RE_COMP: BSD re_comp()
186 * HAVE_REGCMP: System V regcmp()
187 * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h
188 * NO_REGEX: pattern matching is supported, but without metacharacters.
189 */
190/* #undef HAVE_POSIX_REGCOMP */
191/* #undef HAVE_RE_COMP */
192/* #undef HAVE_REGCMP */
193#define HAVE_V8_REGCOMP 1
194/* #undef NO_REGEX */
195#define HAVE_REGEXEC2 1
196
197/* Define HAVE_VOID if your compiler supports the "void" type. */
198#define HAVE_VOID 1
199
200/* Define HAVE_CONST if your compiler supports the "const" modifier. */
201#define HAVE_CONST 1
202
203/* Define HAVE_TIME_T if your system supports the "time_t" type. */
204#define HAVE_TIME_T 1
205
206/* Define HAVE_STRERROR if you have the strerror() function. */
207#define HAVE_STRERROR 1
208
209/* Define HAVE_FILENO if you have the fileno() macro. */
210#define HAVE_FILENO 1
211
212/* Define HAVE_ERRNO if you have the errno variable */
213/* Define MUST_DEFINE_ERRNO if you have errno but it is not define 
214 * in errno.h */
215#define HAVE_ERRNO 1
216#define MUST_DEFINE_ERRNO 1
217
218/* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */
219#define HAVE_SYS_ERRLIST 1
220
221/* Define HAVE_OSPEED if your termcap library has the ospeed variable */
222#define HAVE_OSPEED 0
223/* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined
224 * in termcap.h. */
225#define MUST_DEFINE_OSPEED 0
226
227/* Define HAVE_LOCALE if you have locale.h and setlocale. */
228#define HAVE_LOCALE 1
229
230/* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */
231#define HAVE_TERMIOS_FUNCS 0
232
233/* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */
234#define HAVE_UPPER_LOWER 1
235
236/* Define if you have the _setjmp function.  */
237#define HAVE__SETJMP	1
238
239/* Define if you have the memcpy function.  */
240#define HAVE_MEMCPY 1
241
242/* Define if you have the popen function.  */
243#define HAVE_POPEN 0
244
245/* Define if you have the sigsetmask function.  */
246#define HAVE_SIGSETMASK	0
247
248/* Define if you have the sigprocmask function.  */
249#define HAVE_SIGPROCMASK	0
250
251/* Define if you have the sigset_t type and sigemptyset macro */
252#define HAVE_SIGSET_T	0
253#define HAVE_SIGEMPTYSET	0
254
255/* Define if you have the stat function.  */
256#define HAVE_STAT 1
257
258/* Define if you have the strchr function.  */
259#define HAVE_STRCHR 1
260
261/* Define if you have the system function.  */
262#define HAVE_SYSTEM	1
263
264/* Define if you have the <ctype.h> header file.  */
265#define HAVE_CTYPE_H 1
266
267/* Define if you have the <errno.h> header file.  */
268#define HAVE_ERRNO_H 1
269
270/* Define if you have the <fcntl.h> header file.  */
271#define HAVE_FCNTL_H 1
272
273/* Define if you have the <limits.h> header file.  */
274#define HAVE_LIMITS_H 0
275
276/* Define if you have the <stdio.h> header file.  */
277#define HAVE_STDIO_H 1
278
279/* Define if you have the <string.h> header file.  */
280#define HAVE_STRING_H 1
281
282/* Define if you have the <stdlib> header file. */
283#define HAVE_STDLIB_H 1
284
285/* Define if you have the <sys/ioctl.h> header file.  */
286#define HAVE_SYS_IOCTL_H 0
287
288/* Define if you have the <sys/ptem.h> header file.  */
289#define HAVE_SYS_PTEM_H	0
290
291/* Define if you have the <sys/stream.h> header file.  */
292#define HAVE_SYS_STREAM_H	0
293
294/* Define if you have the <termcap.h> header file.  */
295#define HAVE_TERMCAP_H	0
296
297/* Define if you have the <termio.h> header file.  */
298#define HAVE_TERMIO_H	0
299
300/* Define if you have the <termios.h> header file.  */
301#define HAVE_TERMIOS_H 0
302
303/* Define if you have the <time.h> header file.  */
304#define HAVE_TIME_H 1
305
306/* Define if you have the <unistd.h> header file.  */
307#define HAVE_UNISTD_H 0
308
309/* Define if you have the <values.h> header file.  */
310#ifdef _MSC_VER
311#define HAVE_VALUES_H 0
312#else
313#define HAVE_VALUES_H 1
314#endif
315
316#define	popen	_popen
317#define	pclose	_pclose
318