2 * Copyright (C) 1984-2023 Mark Nudelman
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.
7 * For more information, see the README file.
11 /* OS/9 definition file for less. */
13 * This file has 2 sections:
15 * Settings always true for OS-9 systems.
18 /* User preferences. */
21 * SECURE is 1 if you wish to disable a bunch of features in order to
22 * be safe to run by unprivileged users.
27 * SHELL_ESCAPE is 1 if you wish to allow shell escapes.
28 * (This is possible only if your system supplies the system() function.)
30 #define SHELL_ESCAPE (!SECURE)
33 * EXAMINE is 1 if you wish to allow examining files by name from within less.
35 #define EXAMINE (!SECURE)
38 * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key
39 * to complete filenames at prompts.
41 #define TAB_COMPLETE_FILENAME 1
44 * CMD_HISTORY is 1 if you wish to allow keys to cycle through
45 * previous commands at prompts.
50 * HILITE_SEARCH is 1 if you wish to have search targets to be
51 * displayed in standout mode.
53 #define HILITE_SEARCH 1
56 * EDITOR is 1 if you wish to allow editor invocation (the "v" command).
57 * (This is possible only if your system supplies the system() function.)
58 * EDIT_PGM is the name of the (default) editor to be invoked.
60 #define EDITOR (!SECURE)
61 #define EDIT_PGM "umacs"
64 * TAGS is 1 if you wish to support tag files.
66 #define TAGS (!SECURE)
69 * USERFILE is 1 if you wish to allow a .less file to specify
70 * user-defined key bindings.
72 #define USERFILE (!SECURE)
75 * GLOB is 1 if you wish to have shell metacharacters expanded in filenames.
76 * This will generally work if your system provides the "popen" function
77 * and the "echo" shell command.
79 #define GLOB (!SECURE)
82 * PIPEC is 1 if you wish to have the "|" command
83 * which allows the user to pipe data into a shell command.
85 #define PIPEC (!SECURE)
88 * LOGFILE is 1 if you wish to allow the -o option (to create log files).
90 #define LOGFILE (!SECURE)
93 * GNU_OPTIONS is 1 if you wish to support the GNU-style command
94 * line options --help and --version.
99 * ONLY_RETURN is 1 if you want RETURN to be the only input which
100 * will continue past an error message.
101 * Otherwise, any key will continue past an error message.
103 #define ONLY_RETURN 0
106 * LESSKEYFILE is the filename of the default lesskey output file
107 * (in the HOME directory).
108 * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file.
109 * DEF_LESSKEYINFILE is the filename of the default lesskey input
110 * (in the HOME directory).
111 * LESSHISTFILE is the filename of the history file
112 * (in the HOME directory).
114 #define LESSKEYFILE ".less"
115 #define LESSKEYFILE_SYS "/.sysless"
116 #define DEF_LESSKEYINFILE ".lesskey"
117 #define LESSKEYINFILE_SYS "/.syslesskey"
118 #define LESSHISTFILE ".lesshst"
121 /* Settings always true for OS-9. */
123 /* This is not needed; it is defined by the compiler. */
126 #define MSDOS_COMPILER 0
129 * Pathname separator character.
131 #define PATHNAME_SEP "/"
134 * HAVE_ANSI_PROTOS is 1 if your compiler supports ANSI function prototypes.
136 #define HAVE_ANSI_PROTOS 1
139 * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>.
141 #define HAVE_SYS_TYPES_H 0
144 * Define if you have the <sgstat.h> header file.
146 #define HAVE_SGSTAT_H 1
149 * HAVE_PERROR is 1 if your system has the perror() call.
150 * (Actually, if it has sys_errlist, sys_nerr and errno.)
153 #define HAVE_PERROR 0
155 #define HAVE_PERROR 1
159 * HAVE_TIME is 1 if your system has the time() call.
164 * HAVE_SHELL is 1 if your system supports a SHELL command interpreter.
169 * Default shell metacharacters and meta-escape character.
171 #define DEF_METACHARS "; \t\n'\"()<>|&^`#\\"
172 #define DEF_METAESCAPE "\\"
175 * HAVE_DUP is 1 if your system has the dup() call.
179 /* Define to 1 to support reading lesskey source files (not just binary). */
180 #define HAVE_LESSKEYSRC 1
183 * Sizes of various buffers.
185 #if 0 /* old sizes for small memory machines
186 #define CMDBUF_SIZE 512 /* Buffer for multichar commands */
187 #define UNGOT_SIZE 100 /* Max chars to unget() */
188 #define LINEBUF_SIZE 1024 /* Max size of line in input file */
189 #define OUTBUF_SIZE 1024 /* Output buffer */
190 #define PROMPT_SIZE 200 /* Max size of prompt string */
191 #define TERMBUF_SIZE 2048 /* Termcap buffer for tgetent */
192 #define TERMSBUF_SIZE 1024 /* Buffer to hold termcap strings */
193 #define TAGLINE_SIZE 512 /* Max size of line in tags file */
194 #define TABSTOP_MAX 32 /* Max number of custom tab stops */
195 #else /* more reasonable sizes for modern machines */
196 #define CMDBUF_SIZE 2048 /* Buffer for multichar commands */
197 #define UNGOT_SIZE 200 /* Max chars to unget() */
198 #define LINEBUF_SIZE 1024 /* Initial max size of line in input file */
199 #define OUTBUF_SIZE 1024 /* Output buffer */
200 #define PROMPT_SIZE 2048 /* Max size of prompt string */
201 #define TERMBUF_SIZE 2048 /* Termcap buffer for tgetent */
202 #define TERMSBUF_SIZE 1024 /* Buffer to hold termcap strings */
203 #define TAGLINE_SIZE 1024 /* Max size of line in tags file */
204 #define TABSTOP_MAX 128 /* Max number of custom tab stops */
207 /* Define to `long' if <sys/types.h> doesn't define. */
210 /* Define if you need to in order for stat and other things to work. */
211 #define _POSIX_SOURCE 0
213 /* Define as the return type of signal handlers (int or void). */
215 #define RETSIGTYPE int
217 #define RETSIGTYPE void
222 * Regular expression library.
223 * Define exactly one of the following to be 1:
224 * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h
225 * HAVE_RE_COMP: BSD re_comp()
226 * HAVE_REGCMP: System V regcmp()
227 * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h
228 * NO_REGEX: pattern matching is supported, but without metacharacters.
230 #define HAVE_POSIX_REGCOMP 0
231 #define HAVE_RE_COMP 0
232 #define HAVE_REGCMP 0
233 #define HAVE_V8_REGCOMP 1
235 #define HAVE_REGEXEC2 1
237 /* Define HAVE_VOID if your compiler supports the "void" type. */
240 /* Define HAVE_CONST if your compiler supports the "const" modifier. */
243 /* Define HAVE_TIME_T if your system supports the "time_t" type. */
244 #define HAVE_TIME_T 1
246 /* Define HAVE_STRERROR if you have the strerror() function. */
247 #define HAVE_STRERROR 0
249 /* Define HAVE_FILENO if you have the fileno() macro. */
250 #define HAVE_FILENO 1
252 /* Define HAVE_ERRNO if you have the errno variable */
253 /* Define MUST_DEFINE_ERRNO if you have errno but it is not define
256 #define MUST_DEFINE_ERRNO 0
258 /* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */
259 #define HAVE_SYS_ERRLIST 0
261 /* Define HAVE_OSPEED if your termcap library has the ospeed variable */
262 /* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined
264 #define HAVE_OSPEED 0
265 #define MUST_DEFINE_OSPEED 0
267 /* Define HAVE_LOCALE if you have locale.h and setlocale. */
268 #define HAVE_LOCALE 0
270 /* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */
271 #define HAVE_TERMIOS_FUNCS 0
273 /* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */
274 #define HAVE_UPPER_LOWER 1
276 /* Define if you have the _setjmp function. */
277 #define HAVE__SETJMP 1
279 /* Define if you have the memcpy function. */
280 #define HAVE_MEMCPY 1
282 /* Define if you have the popen function. */
285 /* Define if you have the sigsetmask function. */
286 #define HAVE_SIGSETMASK 0
288 /* Define if you have the sigprocmask function. */
289 #define HAVE_SIGPROCMASK 0
291 /* Define if you have the sigset_t type and sigemptyset macro */
292 #define HAVE_SIGSET_T 0
293 #define HAVE_SIGEMPTYSET 0
295 /* Define if you have the stat function. */
298 /* Define if you have the strchr function. */
299 #define HAVE_STRCHR 0
301 /* Define if you have the system function. */
302 #define HAVE_SYSTEM 1
304 /* Define if you have the snprintf function. */
305 #define HAVE_SNPRINTF 0
307 /* Define if you have the <ctype.h> header file. */
308 #define HAVE_CTYPE_H 1
310 /* Define if you have the <wctype.h> header file. */
311 #define HAVE_WCTYPE_H 0
313 /* Define if you have the <errno.h> header file. */
314 #define HAVE_ERRNO_H 1
316 /* Define if you have the <fcntl.h> header file. */
317 #define HAVE_FCNTL_H 0
319 /* Define if you have the <limits.h> header file. */
320 #define HAVE_LIMITS_H 0
322 /* Define if you have the <stdio.h> header file. */
323 #define HAVE_STDIO_H 1
325 /* Define if you have the <string.h> header file. */
326 #define HAVE_STRING_H 1
328 /* Define if you have the <stdlib> header file. */
330 #define HAVE_STDLIB_H 0
332 #define HAVE_STDLIB_H 1
335 /* Define if you have the <sys/ioctl.h> header file. */
336 #define HAVE_SYS_IOCTL_H 0
338 /* Define if you have the <sys/ptem.h> header file. */
339 #define HAVE_SYS_PTEM_H 0
341 /* Define if you have the <sys/stream.h> header file. */
342 #define HAVE_SYS_STREAM_H 0
344 /* Define if you have the <termcap.h> header file. */
345 #define HAVE_TERMCAP_H 1
347 /* Define if you have the <termio.h> header file. */
348 #define HAVE_TERMIO_H 0
350 /* Define if you have the <termios.h> header file. */
351 #define HAVE_TERMIOS_H 0
353 /* Define if you have the <time.h> header file. */
354 #define HAVE_TIME_H 1
356 /* Define if you have the <unistd.h> header file. */
357 #define HAVE_UNISTD_H 0
359 /* Define if you have the <values.h> header file. */
360 #define HAVE_VALUES_H 0