defines.ds revision 173682
193490Sphk/* 293490Sphk * Copyright (C) 1984-2007 Mark Nudelman 393490Sphk * 493490Sphk * You may distribute under the terms of either the GNU General Public 593490Sphk * License or the Less License, as specified in the README file. 693490Sphk * 793490Sphk * For more information about less, or for information on how to 893490Sphk * contact the author, see the README file. 993490Sphk */ 1093490Sphk 1193490Sphk 1293490Sphk/* DOS definition file for less. */ 1393490Sphk/* 1493490Sphk * This file has 2 sections: 1593490Sphk * User preferences. 1693490Sphk * Settings always true for MS-DOS systems. 1793490Sphk */ 1893490Sphk 1993490Sphk/* User preferences. */ 2093490Sphk 2193490Sphk/* 2293490Sphk * SECURE is 1 if you wish to disable a bunch of features in order to 2393490Sphk * be safe to run by unprivileged users. 2493490Sphk */ 2593490Sphk#define SECURE 0 2693490Sphk 2793490Sphk/* 2893490Sphk * SHELL_ESCAPE is 1 if you wish to allow shell escapes. 2993490Sphk * (This is possible only if your system supplies the system() function.) 3093490Sphk */ 3193490Sphk#define SHELL_ESCAPE (!SECURE) 3293490Sphk 3393490Sphk/* 3493490Sphk * EXAMINE is 1 if you wish to allow examining files by name from within less. 3593490Sphk */ 3693490Sphk#define EXAMINE (!SECURE) 3793490Sphk 3893490Sphk/* 3993490Sphk * TAB_COMPLETE_FILENAME is 1 if you wish to allow the TAB key 4093490Sphk * to complete filenames at prompts. 4193717Smarcel */ 4293717Smarcel#define TAB_COMPLETE_FILENAME (!SECURE) 4393717Smarcel 4493717Smarcel/* 4593717Smarcel * CMD_HISTORY is 1 if you wish to allow keys to cycle through 4693717Smarcel * previous commands at prompts. 4793717Smarcel */ 4893717Smarcel#define CMD_HISTORY 1 4993717Smarcel 5093717Smarcel/* 5193717Smarcel * HILITE_SEARCH is 1 if you wish to have search targets to be 5293717Smarcel * displayed in standout mode. 5393717Smarcel */ 5493717Smarcel#define HILITE_SEARCH 1 5593717Smarcel 5693717Smarcel/* 5793717Smarcel * EDITOR is 1 if you wish to allow editor invocation (the "v" command). 5893717Smarcel * (This is possible only if your system supplies the system() function.) 5993717Smarcel * EDIT_PGM is the name of the (default) editor to be invoked. 6093490Sphk */ 6193490Sphk#define EDITOR (!SECURE) 6293717Smarcel#define EDIT_PGM "vi" 63174920Srwatson 6496068Smux/* 6593490Sphk * TAGS is 1 if you wish to support tag files. 6693490Sphk */ 6793717Smarcel#define TAGS (!SECURE) 6893490Sphk 6996427Sgallatin/* 70190684Smarcel * USERFILE is 1 if you wish to allow a .less file to specify 71190684Smarcel * user-defined key bindings. 72190684Smarcel */ 73190684Smarcel#define USERFILE (!SECURE) 74214903Sgonzo 75190684Smarcel/* 76105531Stmm * GLOB is 1 if you wish to have shell metacharacters expanded in filenames. 77190684Smarcel * This will generally work if your system provides the "popen" function 7893717Smarcel * and the "echo" shell command. 7993717Smarcel */ 8093490Sphk#ifdef __DJGPP__ 8193490Sphk#define GLOB (!SECURE) 8293490Sphk#else 8393490Sphk#define GLOB 0 8493490Sphk#endif 8593490Sphk 8693490Sphk/* 8793717Smarcel * PIPEC is 1 if you wish to have the "|" command 8893717Smarcel * which allows the user to pipe data into a shell command. 8993717Smarcel */ 9093490Sphk#ifdef __DJGPP__ 9193490Sphk#define PIPEC (!SECURE) 9293490Sphk#else 9393490Sphk#define PIPEC 0 9493490Sphk#endif 9593490Sphk 9693490Sphk/* 9793490Sphk * LOGFILE is 1 if you wish to allow the -l option (to create log files). 9893490Sphk */ 9993490Sphk#define LOGFILE (!SECURE) 10093490Sphk 10193490Sphk/* 10293490Sphk * GNU_OPTIONS is 1 if you wish to support the GNU-style command 103183527Speter * line options --help and --version. 104183527Speter */ 105183527Speter#define GNU_OPTIONS 1 106183527Speter 107183527Speter/* 10893649Smarcel * ONLY_RETURN is 1 if you want RETURN to be the only input which 109 * will continue past an error message. 110 * Otherwise, any key will continue past an error message. 111 */ 112#define ONLY_RETURN 0 113 114/* 115 * LESSKEYFILE is the filename of the default lesskey output file 116 * (in the HOME directory). 117 * LESSKEYFILE_SYS is the filename of the system-wide lesskey output file. 118 * DEF_LESSKEYINFILE is the filename of the default lesskey input 119 * (in the HOME directory). 120 * LESSHISTFILE is the filename of the history file 121 * (in the HOME directory). 122 */ 123#define LESSKEYFILE "_less" 124#define LESSKEYFILE_SYS "c:\\_sysless" 125#define DEF_LESSKEYINFILE "_lesskey" 126#define LESSHISTFILE "_lesshst" 127 128 129/* Settings always true for MS-DOS systems. */ 130 131/* 132 * Define MSDOS_COMPILER if compiling for MS-DOS. 133 */ 134#ifdef __DJGPP__ 135#define MSDOS_COMPILER DJGPPC 136#else 137#ifdef __BORLANDC__ 138#define MSDOS_COMPILER BORLANDC 139#else 140#define MSDOS_COMPILER MSOFTC 141#endif 142#endif 143 144/* 145 * Pathname separator character. 146 */ 147#define PATHNAME_SEP "\\" 148 149/* 150 * HAVE_SYS_TYPES_H is 1 if your system has <sys/types.h>. 151 */ 152#define HAVE_SYS_TYPES_H 1 153 154/* 155 * Define if you have the <sgstat.h> header file. 156 */ 157#define HAVE_SGSTAT_H 0 158 159/* 160 * HAVE_PERROR is 1 if your system has the perror() call. 161 * (Actually, if it has sys_errlist, sys_nerr and errno.) 162 */ 163#define HAVE_PERROR 1 164 165/* 166 * HAVE_TIME is 1 if your system has the time() call. 167 */ 168#define HAVE_TIME 1 169 170/* 171 * HAVE_SHELL is 1 if your system supports a SHELL command interpreter. 172 */ 173#define HAVE_SHELL 0 174 175/* 176 * Default shell metacharacters and meta-escape character. 177 */ 178#define DEF_METACHARS "; *?\t\n'\"()<>|&" 179#define DEF_METAESCAPE "" 180 181/* 182 * HAVE_DUP is 1 if your system has the dup() call. 183 */ 184#define HAVE_DUP 1 185 186/* 187 * Sizes of various buffers. 188 */ 189#define CMDBUF_SIZE 512 /* Buffer for multichar commands */ 190#define UNGOT_SIZE 100 /* Max chars to unget() */ 191#define LINEBUF_SIZE 1024 /* Max size of line in input file */ 192#define OUTBUF_SIZE 1024 /* Output buffer */ 193#define PROMPT_SIZE 200 /* Max size of prompt string */ 194#define TERMBUF_SIZE 2048 /* Termcap buffer for tgetent */ 195#define TERMSBUF_SIZE 1024 /* Buffer to hold termcap strings */ 196#define TAGLINE_SIZE 512 /* Max size of line in tags file */ 197#define TABSTOP_MAX 32 /* Max number of custom tab stops */ 198 199/* Define to `long' if <sys/types.h> doesn't define. */ 200#if MSDOS_COMPILER==BORLANDC 201#define off_t long 202#endif 203 204/* Define if you need to in order for stat and other things to work. */ 205/* #undef _POSIX_SOURCE */ 206 207/* Define as the return type of signal handlers (int or void). */ 208#define RETSIGTYPE void 209 210 211/* 212 * Regular expression library. 213 * Define exactly one of the following to be 1: 214 * HAVE_POSIX_REGCOMP: POSIX regcomp() and regex.h 215 * HAVE_RE_COMP: BSD re_comp() 216 * HAVE_REGCMP: System V regcmp() 217 * HAVE_V8_REGCOMP: Henry Spencer V8 regcomp() and regexp.h 218 * NO_REGEX: pattern matching is supported, but without metacharacters. 219 */ 220/* #undef HAVE_POSIX_REGCOMP */ 221/* #undef HAVE_RE_COMP */ 222/* #undef HAVE_REGCMP */ 223/* #undef HAVE_V8_REGCOMP */ 224#if MSDOS_COMPILER==DJGPPC 225#define HAVE_POSIX_REGCOMP 1 226#else 227#define NO_REGEX 1 228#endif 229 230/* Define HAVE_VOID if your compiler supports the "void" type. */ 231#define HAVE_VOID 1 232 233/* Define HAVE_CONST if your compiler supports the "const" modifier. */ 234#define HAVE_CONST 1 235 236/* Define HAVE_TIME_T if your system supports the "time_t" type. */ 237#define HAVE_TIME_T 1 238 239/* Define HAVE_STRERROR if you have the strerror() function. */ 240#define HAVE_STRERROR 1 241 242/* Define HAVE_FILENO if you have the fileno() macro. */ 243#define HAVE_FILENO 1 244 245/* Define HAVE_ERRNO if you have the errno variable */ 246/* Define MUST_DEFINE_ERRNO if you have errno but it is not defined 247 * in errno.h */ 248#if MSDOS_COMPILER==MSOFTC || MSDOS_COMPILER==DJGPPC 249#define HAVE_ERRNO 1 250#define MUST_DEFINE_ERRNO 0 251#else 252#define HAVE_ERRNO 1 253#define MUST_DEFINE_ERRNO 1 254#endif 255 256/* Define HAVE_SYS_ERRLIST if you have the sys_errlist[] variable */ 257#define HAVE_SYS_ERRLIST 1 258 259/* Define HAVE_OSPEED if your termcap library has the ospeed variable */ 260/* Define MUST_DEFINE_OSPEED if you have ospeed but it is not defined 261 * in termcap.h. */ 262#define HAVE_OSPEED 0 263#define MUST_DEFINE_OSPEED 0 264 265/* Define HAVE_LOCALE if you have locale.h and setlocale. */ 266#define HAVE_LOCALE 0 267 268/* Define HAVE_TERMIOS_FUNCS if you have tcgetattr/tcsetattr */ 269#define HAVE_TERMIOS_FUNCS 0 270 271/* Define HAVE_UPPER_LOWER if you have isupper, islower, toupper, tolower */ 272#define HAVE_UPPER_LOWER 1 273 274/* Define if you have the _setjmp function. */ 275#if MSDOS_COMPILER==MSOFTC || MSDOS_COMPILER==DJGPPC 276#define HAVE__SETJMP 0 277#else 278#define HAVE__SETJMP 1 279#endif 280 281/* Define if you have the memcpy function. */ 282#define HAVE_MEMCPY 1 283 284/* Define if you have the popen function. */ 285#if MSDOS_COMPILER==DJGPPC 286#define HAVE_POPEN 1 287#else 288#define HAVE_POPEN 0 289#endif 290 291/* Define if you have the sigsetmask function. */ 292#define HAVE_SIGSETMASK 0 293 294/* Define if you have the sigprocmask function. */ 295#define HAVE_SIGPROCMASK 0 296 297/* Define if you have the sigset_t type and sigemptyset macro */ 298#define HAVE_SIGSET_T 0 299#define HAVE_SIGEMPTYSET 0 300 301/* Define if you have the stat function. */ 302#define HAVE_STAT 1 303 304/* Define if you have the strchr function. */ 305#define HAVE_STRCHR 1 306 307/* Define if you have the system function. */ 308#define HAVE_SYSTEM 1 309 310/* Define if you have the snprintf function. */ 311#define HAVE_SNPRINTF 0 312 313/* Define if you have the <ctype.h> header file. */ 314#define HAVE_CTYPE_H 1 315 316/* Define if you have the <wctype.h> header file. */ 317#define HAVE_WCTYPE_H 0 318 319/* Define if you have the <errno.h> header file. */ 320#define HAVE_ERRNO_H 1 321 322/* Define if you have the <fcntl.h> header file. */ 323#define HAVE_FCNTL_H 1 324 325/* Define if you have the <limits.h> header file. */ 326#define HAVE_LIMITS_H 1 327 328/* Define if you have the <stdio.h> header file. */ 329#define HAVE_STDIO_H 1 330 331/* Define if you have the <stdlib> header file. */ 332#define HAVE_STDLIB_H 1 333 334/* Define if you have the <string.h> header file. */ 335#define HAVE_STRING_H 1 336 337/* Define if you have the <sys/ioctl.h> header file. */ 338#define HAVE_SYS_IOCTL_H 0 339 340/* Define if you have the <sys/ptem.h> header file. */ 341#define HAVE_SYS_PTEM_H 0 342 343/* Define if you have the <sys/stream.h> header file. */ 344#define HAVE_SYS_STREAM_H 0 345 346/* Define if you have the <termcap.h> header file. */ 347#define HAVE_TERMCAP_H 0 348 349/* Define if you have the <termio.h> header file. */ 350#define HAVE_TERMIO_H 0 351 352/* Define if you have the <termios.h> header file. */ 353#define HAVE_TERMIOS_H 0 354 355/* Define if you have the <time.h> header file. */ 356#define HAVE_TIME_H 1 357 358/* Define if you have the <unistd.h> header file. */ 359#if MSDOS_COMPILER==DJGPPC 360#define HAVE_UNISTD_H 1 361#else 362#define HAVE_UNISTD_H 0 363#endif 364 365/* Define if you have the <values.h> header file. */ 366#if MSDOS_COMPILER==MSOFTC 367#define HAVE_VALUES_H 0 368#else 369#define HAVE_VALUES_H 1 370#endif 371 372#if MSDOS_COMPILER == MSOFTC && _MSC_VER >= 700 373/* 374 * The names of these things changed in Microsoft C version 7.0. 375 */ 376#define videoconfig _videoconfig 377#define rccoord _rccoord 378#define O_RDONLY _O_RDONLY 379#define O_WRONLY _O_WRONLY 380#define O_APPEND _O_APPEND 381#define O_BINARY _O_BINARY 382#define O_TEXT _O_TEXT 383#define find_t _find_t 384#define stat _stat 385#define S_IFMT _S_IFMT 386#define S_IFDIR _S_IFDIR 387#define S_IFREG _S_IFREG 388#define dup _dup 389#define open _open 390#define lseek _lseek 391#define write _write 392#define creat _creat 393#define fstat _fstat 394#define isatty _isatty 395#define close _close 396#define read _read 397#define ungetch _ungetch 398#define kbhit _kbhit 399#define getch _getch 400#endif 401