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