Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
105 7u83 1
/*
2
 * Copyright (c) 1980 Regents of the University of California.
3
 * All rights reserved.  The Berkeley software License Agreement
4
 * specifies the terms and conditions for redistribution.
5
 *
6
 *	@(#)ex_tune.h	7.8.1 (2.11BSD) 1996/10/23
7
 */
8
 
9
/*
10
 * Definitions of editor parameters and limits
11
 */
12
 
13
/*
14
 * Pathnames.
15
 */
16
#if 0	/* GR */
17
#define E_TERMCAP	"/etc/termcap"
18
#else
19
#include "tcbufsize.h"
20
#endif
21
#define B_CSH		"/bin/csh"
22
#define	EXRECOVER	"/usr/sbin/exrecover"
23
#define	EXPRESERVE	"/usr/sbin/expreserve"
24
#ifndef VMUNIX
25
#define	EXSTRINGS	"/usr/share/misc/exstrings"
26
#endif
27
 
28
/*
29
 * If your system believes that tabs expand to a width other than
30
 * 8 then your makefile should cc with -DTABS=whatever, otherwise we use 8.
31
 */
32
#ifndef TABS
33
#define	TABS	8
34
#endif
35
 
36
/*
37
 * Maximums
38
 *
39
 * The definition of LBSIZE should be the same as BUFSIZ (512 usually).
40
 * Most other definitions are quite generous.
41
 */
42
/* FNSIZE is also defined in expreserve.c */
43
#define	FNSIZE		128		/* File name size */
44
#ifdef VMUNIX
45
#ifndef	BIGMEM
46
#define	LBSIZE		1024
47
#define	ESIZE		512
48
#define CRSIZE		1024
49
#else
50
#define LBSIZE		4096
51
#define ESIZE		512
52
#define CRSIZE		4096
53
#endif
54
#else	/* !VMUNIX */
55
#ifdef u370
56
#define LBSIZE		4096
57
#define ESIZE		512
58
#define CRSIZE		4096
59
#else
60
#define	LBSIZE		512		/* Line length */
61
#define	ESIZE		128		/* Size of compiled re */
62
#define CRSIZE		512
63
#endif
64
#endif
65
#define	RHSSIZE		256		/* Size of rhs of substitute */
66
#define	NBRA		9		/* Number of re \( \) pairs */
67
#define	TAGSIZE		128		/* Tag length */
68
#define	ONMSZ		64		/* Option name size */
69
#define	GBSIZE		256		/* Buffer size */
70
#define	UXBSIZE		128		/* Unix command buffer size */
71
#define	VBSIZE		128		/* Partial line max size in visual */
72
/* LBLKS is also defined in expreserve.c */
73
#ifndef VMUNIX
74
#define	LBLKS		125		/* Line pointer blocks in temp file */
75
#define	HBLKS		1		/* struct header fits in BUFSIZ*HBLKS */
76
#else
77
#define	LBLKS		900
78
#define	HBLKS		2
79
#endif
80
#define	MAXDIRT		12		/* Max dirtcnt before sync tfile */
81
#if 0	/* GR */
82
#define TCBUFSIZE	1024		/* Max entry size in termcap, see
83
					   also termlib and termcap */
84
#endif
85
 
86
/*
87
 * Except on VMUNIX, these are a ridiculously small due to the
88
 * lousy arglist processing implementation which fixes core
89
 * proportional to them.  Argv (and hence NARGS) is really unnecessary,
90
 * and argument character space not needed except when
91
 * arguments exist.  Argument lists should be saved before the "zero"
92
 * of the incore line information and could then
93
 * be reasonably large.
94
 */
95
#undef NCARGS
96
#ifndef VMUNIX
97
#define	NARGS	100		/* Maximum number of names in "next" */
98
#define	NCARGS	LBSIZE		/* Maximum arglist chars in "next" */
99
#else
100
#define	NCARGS	5120
101
#define	NARGS	(NCARGS/6)
102
#endif
103
 
104
/*
105
 * Note: because the routine "alloca" is not portable, TUBESIZE
106
 * bytes are allocated on the stack each time you go into visual
107
 * and then never freed by the system.  Thus if you have no terminals
108
 * which are larger than 24 * 80 you may well want to make TUBESIZE
109
 * smaller.  TUBECOLS should stay at 160 since this defines the maximum
110
 * length of opening on hardcopies and allows two lines of open on
111
 * terminals like adm3's (glass tty's) where it switches to pseudo
112
 * hardcopy mode when a line gets longer than 80 characters.
113
 */
114
#ifndef VMUNIX
115
#define	TUBELINES	70	/* Number of screen lines for visual */
116
#define	TUBECOLS	160	/* Number of screen columns for visual */
117
#define	TUBESIZE	6000	/* Maximum screen size for visual */
118
#else
119
#define	TUBELINES	70
120
#define	TUBECOLS	160
121
#define	TUBESIZE	7000	/* 70 * 100 */
122
#endif
123
 
124
/*
125
 * Output column (and line) are set to this value on cursor addressible
126
 * terminals when we lose track of the cursor to force cursor
127
 * addressing to occur.
128
 */
129
#define	UKCOL		-20	/* Prototype unknown column */
130
 
131
/*
132
 * Attention is the interrupt character (normally 0177 -- delete).
133
 * Quit is the quit signal (normally FS -- control-\) and quits open/visual.
134
 */
135
#define	ATTN	(-2)	/* mjm: (char) ??  */
136
#define	QUIT	('\\' & 037)