Commit | Line | Data |
---|---|---|
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" | |
d266c416 MH |
13 | #define EXRECOVER libpath(ex3.4recover) |
14 | #define EXPRESERVE libpath(ex3.4preserve) | |
44232d5b | 15 | #ifndef VMUNIX |
d266c416 | 16 | #define EXSTRINGS libpath(ex3.4strings) |
44232d5b | 17 | #endif |
56dbf936 MH |
18 | |
19 | /* | |
20 | * If your system believes that tabs expand to a width other than | |
21 | * 8 then your makefile should cc with -DTABS=whatever, otherwise we use 8. | |
22 | */ | |
23 | #ifndef TABS | |
24 | #define TABS 8 | |
25 | #endif | |
26 | ||
27 | /* | |
28 | * Maximums | |
29 | * | |
30 | * The definition of LBSIZE should be the same as BUFSIZ (512 usually). | |
44232d5b | 31 | * Most other definitions are quite generous. |
56dbf936 MH |
32 | */ |
33 | /* FNSIZE is also defined in expreserve.c */ | |
34 | #define FNSIZE 128 /* File name size */ | |
44232d5b MH |
35 | #ifdef VMUNIX |
36 | #define LBSIZE 1024 | |
37 | #define ESIZE 512 | |
d266c416 | 38 | #define CRSIZE 1024 |
44232d5b | 39 | #else |
56dbf936 MH |
40 | #define LBSIZE 512 /* Line length */ |
41 | #define ESIZE 128 /* Size of compiled re */ | |
d266c416 | 42 | #define CRSIZE 512 |
44232d5b | 43 | #endif |
56dbf936 MH |
44 | #define RHSSIZE 256 /* Size of rhs of substitute */ |
45 | #define NBRA 9 /* Number of re \( \) pairs */ | |
46 | #define TAGSIZE 32 /* Tag length */ | |
887e3e0d | 47 | #define ONMSZ 64 /* Option name size */ |
56dbf936 MH |
48 | #define GBSIZE 256 /* Buffer size */ |
49 | #define UXBSIZE 128 /* Unix command buffer size */ | |
50 | #define VBSIZE 128 /* Partial line max size in visual */ | |
51 | /* LBLKS is also defined in expreserve.c */ | |
44232d5b | 52 | #ifndef VMUNIX |
56dbf936 | 53 | #define LBLKS 125 /* Line pointer blocks in temp file */ |
44232d5b MH |
54 | #define HBLKS 1 /* struct header fits in BUFSIZ*HBLKS */ |
55 | #else | |
56 | #define LBLKS 900 | |
57 | #define HBLKS 2 | |
58 | #endif | |
56dbf936 MH |
59 | #define MAXDIRT 12 /* Max dirtcnt before sync tfile */ |
60 | #define TCBUFSIZE 1024 /* Max entry size in termcap, see | |
61 | also termlib and termcap */ | |
62 | ||
63 | /* | |
44232d5b | 64 | * Except on VMUNIX, these are a ridiculously small due to the |
56dbf936 MH |
65 | * lousy arglist processing implementation which fixes core |
66 | * proportional to them. Argv (and hence NARGS) is really unnecessary, | |
67 | * and argument character space not needed except when | |
68 | * arguments exist. Argument lists should be saved before the "zero" | |
69 | * of the incore line information and could then | |
70 | * be reasonably large. | |
71 | */ | |
44232d5b | 72 | #ifndef VMUNIX |
56dbf936 | 73 | #define NARGS 100 /* Maximum number of names in "next" */ |
44232d5b MH |
74 | #define NCARGS LBSIZE /* Maximum arglist chars in "next" */ |
75 | #else | |
76 | #define NCARGS 5120 | |
77 | #define NARGS (NCARGS/6) | |
78 | #endif | |
56dbf936 MH |
79 | |
80 | /* | |
81 | * Note: because the routine "alloca" is not portable, TUBESIZE | |
82 | * bytes are allocated on the stack each time you go into visual | |
44232d5b | 83 | * and then never freed by the system. Thus if you have no terminals |
56dbf936 MH |
84 | * which are larger than 24 * 80 you may well want to make TUBESIZE |
85 | * smaller. TUBECOLS should stay at 160 since this defines the maximum | |
86 | * length of opening on hardcopies and allows two lines of open on | |
87 | * terminals like adm3's (glass tty's) where it switches to pseudo | |
88 | * hardcopy mode when a line gets longer than 80 characters. | |
89 | */ | |
44232d5b MH |
90 | #ifndef VMUNIX |
91 | #define TUBELINES 40 /* Number of screen lines for visual */ | |
56dbf936 | 92 | #define TUBECOLS 160 /* Number of screen columns for visual */ |
44232d5b MH |
93 | #define TUBESIZE 3400 /* Maximum screen size for visual */ |
94 | #else | |
95 | #define TUBELINES 66 | |
96 | #define TUBECOLS 160 | |
97 | #define TUBESIZE 6600 /* 66 * 100 */ | |
98 | #endif | |
56dbf936 MH |
99 | |
100 | /* | |
101 | * Output column (and line) are set to this value on cursor addressible | |
102 | * terminals when we lose track of the cursor to force cursor | |
103 | * addressing to occur. | |
104 | */ | |
105 | #define UKCOL -20 /* Prototype unknown column */ | |
106 | ||
107 | /* | |
108 | * Attention is the interrupt character (normally 0177 -- delete). | |
109 | * Quit is the quit signal (normally FS -- control-\) and quits open/visual. | |
110 | */ | |
d266c416 | 111 | #define ATTN (-2) |
56dbf936 | 112 | #define QUIT ('\\' & 037) |