date and time created 80/07/31 23:01:16 by mark
[unix-history] / usr / src / usr.bin / ex / ex_tune.h
CommitLineData
56dbf936
MH
1/* Copyright (c) 1979 Regents of the University of California */
2/*
3 * Definitions of editor parameters and limits
4 */
5
6/*
7 * Pathnames.
8 *
9 * Only exstrings is looked at "+4", i.e. if you give
10 * "/usr/lib/..." here, "/lib" will be tried only for strings.
11 */
12#include "local/uparm.h"
13#define EXRECOVER libpath(ex3.1recover)
14#define EXPRESERVE libpath(ex3.1preserve)
15#define EXSTRINGS libpath(ex3.1strings)
16#define MASTERTAGS libpath(tags)
17
18/*
19 * If your system believes that tabs expand to a width other than
20 * 8 then your makefile should cc with -DTABS=whatever, otherwise we use 8.
21 */
22#ifndef TABS
23#define TABS 8
24#endif
25
26/*
27 * Maximums
28 *
29 * The definition of LBSIZE should be the same as BUFSIZ (512 usually).
30 * Most other defitions are quite generous.
31 */
32/* FNSIZE is also defined in expreserve.c */
33#define FNSIZE 128 /* File name size */
34#define LBSIZE 512 /* Line length */
35#define ESIZE 128 /* Size of compiled re */
36#define RHSSIZE 256 /* Size of rhs of substitute */
37#define NBRA 9 /* Number of re \( \) pairs */
38#define TAGSIZE 32 /* Tag length */
39#define ONMSZ 32 /* Option name size */
40#define GBSIZE 256 /* Buffer size */
41#define UXBSIZE 128 /* Unix command buffer size */
42#define VBSIZE 128 /* Partial line max size in visual */
43/* LBLKS is also defined in expreserve.c */
44#define LBLKS 125 /* Line pointer blocks in temp file */
45#define MAXDIRT 12 /* Max dirtcnt before sync tfile */
46#define TCBUFSIZE 1024 /* Max entry size in termcap, see
47 also termlib and termcap */
48
49/*
50 * These are a ridiculously small due to the
51 * lousy arglist processing implementation which fixes core
52 * proportional to them. Argv (and hence NARGS) is really unnecessary,
53 * and argument character space not needed except when
54 * arguments exist. Argument lists should be saved before the "zero"
55 * of the incore line information and could then
56 * be reasonably large.
57 */
58#define NARGS 100 /* Maximum number of names in "next" */
59#define NCARGS 512 /* Maximum arglist chars in "next" */
60
61/*
62 * Note: because the routine "alloca" is not portable, TUBESIZE
63 * bytes are allocated on the stack each time you go into visual
64 * and then never freed by the system. Thus if you have not terminals
65 * which are larger than 24 * 80 you may well want to make TUBESIZE
66 * smaller. TUBECOLS should stay at 160 since this defines the maximum
67 * length of opening on hardcopies and allows two lines of open on
68 * terminals like adm3's (glass tty's) where it switches to pseudo
69 * hardcopy mode when a line gets longer than 80 characters.
70 */
71#define TUBELINES 36 /* Number of screen lines for visual */
72#define TUBECOLS 160 /* Number of screen columns for visual */
73#define TUBESIZE 2880 /* Maximum screen size for visual */
74
75/*
76 * Output column (and line) are set to this value on cursor addressible
77 * terminals when we lose track of the cursor to force cursor
78 * addressing to occur.
79 */
80#define UKCOL -20 /* Prototype unknown column */
81
82/*
83 * Attention is the interrupt character (normally 0177 -- delete).
84 * Quit is the quit signal (normally FS -- control-\) and quits open/visual.
85 */
86#define ATTN 0177
87#define QUIT ('\\' & 037)