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