date and time created 80/08/01 00:41:11 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"
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)