|
|
1.1 ! root 1: ########################################################################### ! 2: # This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne. JOVE # ! 3: # is provided to you without charge, and with no warranty. You may give # ! 4: # away copies of JOVE, including sources, provided that this notice is # ! 5: # included in all the files. # ! 6: ########################################################################### ! 7: ! 8: To make JOVE edit Makefile to set the right directories for the binaries, ! 9: on line documentation, the man pages, and the TMP files and select the ! 10: appropriate load command (see SEPFLAG in Makefile). (IMPORTANT! read the ! 11: Makefile carefully.) "tune.c" will be created from "tune.template" by ! 12: MAKE automatically, and it will use the directories you specified in the ! 13: Makefile. (NOTE: You should never edit tune.c directly because your ! 14: changes will be undone by the next make. If you want to make a change to ! 15: a part of tune.c that isn't a directory name, you should edit ! 16: tune.template.) Next you must edit "tune.h" selecting the compile time ! 17: options you care about. See below for a description of all the compile ! 18: time options. You can type "make" to compile XJOVE, PORTSRV (this is ! 19: compiled but not used on 4.2+ systems), RECOVER TEACHJOVE, and ! 20: MACVERT. NOTE: make won't work if it fires up /bin/csh for the shell ! 21: commands. Test them out to see if they work. If they do, type "make ! 22: install" to install everything where it belongs. ! 23: ! 24: Here are some things to consider for deciding where to put the tmp files. ! 25: TMPDIR is where the tmp files get stored, usually /tmp or /tmp/jove. If ! 26: your system does not remove subdirectories of /tmp on reboot (lots do ! 27: remove them these days) then it makes sense to make TMPDIR be /tmp/jove. ! 28: But if you want to recover buffers on system crashes, you should put the ! 29: lines ! 30: (echo preserving Jove files) >/dev/console ! 31: (cd /tmp; /usr/local/lib/jovelib/recover -syscrash) >/dev/console ! 32: ! 33: in the /etc/rc file BEFORE /tmp is cleared, so that you can recover ! 34: files after reboots. There shoudl be a crontab entry to clear out ! 35: old files in /usr/preserve. ! 36: ! 37: For the pdp11 version there is the Ovmakefile. This has only been tested ! 38: on 2.9bsd. It works pretty well, actually, and it is possible to turn on ! 39: all the compile time options with this version. ! 40: ! 41: Bug reports: If you find bugs in JOVE I would appreciate hearing about ! 42: them. (My net address is at end of this message.) So, send me the bug ! 43: reports. If the bug isn't already fixed, I will ask you to send me the ! 44: fix. If you haven't found the bug, I may be able to, so don't wait until ! 45: you have found it. If you make improvements to JOVE and want them ! 46: incorporated into the official version, send me a message explaining what ! 47: the change is, and I will decide whether I want to include it. If it is ! 48: possible for your change to be #ifdef'd in, that would be best, since I ! 49: want to avoid making JOVE huge. For instance, if it's a new package type ! 50: thing (say, like word abbrev. mode, or something) then it would be best ! 51: if that were a compile-time option. I will send out periodic updates to ! 52: comp.sources.unix. I will report all significant bug fixes there, and to ! 53: net.emacs as well. ! 54: ! 55: Here's a list of the compile time options and what they mean: ! 56: ! 57: ABBREV - Enables word-abbrev-mode which again is nice for paper writers. ! 58: ! 59: BACKUPFILES - This enables backing up files on write. I guess lots of ! 60: people like this feature. It enables the feature but you ! 61: can still control whether files are backed up with the ! 62: make-backup-files variable. ! 63: ! 64: BIFF - This enables turning on and off BIFF so your screen doesn't ! 65: get messed up with messages from BIFF. ! 66: ! 67: BSD4_2 - Obviously, if you're a Berkeley 4.2 system. ! 68: ! 69: BSD4_3 - If you're running a Berkeley 4.3 or 2.10 system. ! 70: This will automatically define BSD4_2, also. ! 71: ! 72: CHDIR - This enables the directory commands; PUSHD, POPD, DIRS and ! 73: CD. These simulate the csh commands exactly, I think. As ! 74: a side-effect, absolute path names are enabled, which means ! 75: JOVE parses file names for "." and ".." and all that to get ! 76: at what you REALLY mean. It's nicer when this is enabled, ! 77: but not essential. ! 78: ! 79: CMT_FMT - This enables code to format and indent C comments. ! 80: ! 81: ID_CHAR - Enables support for Insert/Delete character on terminals ! 82: that have those capabilities. Couple of problems with this code: ! 83: it's large, takes up lots of I space which is a problem for the ! 84: smaller computers (pdp11). Also, it isn't particularly smart ! 85: and sometimes does really stupid things. It sometimes uses ! 86: insert/delete character when simply redrawing would have been ! 87: faster. And if you look at code you'll understand why I don't ! 88: like it all that much. ! 89: ! 90: IPROCS - Nice feature which lets you run interactive UNIX commands in ! 91: windows. In particular, there is a shell command built ! 92: in which starts up an interactive shell in a window. This works ! 93: only on systems with JOB_CONTROL since it relies on the fancy ! 94: signal mechanism. ! 95: ! 96: JOB_CONTROL - Versions of UNIX that have the job control facility. ! 97: Berkeley 2.9-10 systems, and the 4.1-3 systems I know have ! 98: job stopping, so if you're one of those, define ! 99: this. The reason MENLO_JCL is defined when JOB_CONTROL ! 100: is that the 2.9 signal.h file only defines all of the job ! 101: stopping signals only when MENLO_JCL is defined. ! 102: ! 103: LISP - Enables Lisp Mode. This includes code to indent "properly" ! 104: for Lisp code and new routines to move over s-expressions. ! 105: You probably won't want (or need) this on PDP-11's. ! 106: ! 107: MY_MALLOC - Use the older version of malloc that is more memory efficient ! 108: than the newer 4BSD version. The 4BSD version places more ! 109: importance on the speed of the allocation than the amount of ! 110: memory it uses. Make your choice ... JOVE hardly ever calls ! 111: malloc, anyway, relatively speaking, since it allocates ! 112: lines in big chunks. NOTE: This doesn't seem to work on suns ! 113: and the iAPX286. ! 114: ! 115: PIPEPROCS - If NOT defined, JOVE will use Berkeley pseudo-ttys when ! 116: doing interactive processes. This is infinitely better, ! 117: since you get job control and all that stuff on i-procs. ! 118: If defined, the portsrv program will have to be made, and ! 119: all communication between jove and i-procs will be done using ! 120: pipes. ! 121: ! 122: RESHAPING - This is for BRL or Berkeley 4.3 and 2.10 systems. When the ! 123: window size of the terminal jove is running in is changed ! 124: a SIGWINCH is sent to all processes in the tty group. This ! 125: define enables code in jove to catch that signal and reshape ! 126: its windows. ! 127: ! 128: SPELL - Enables the spell-buffer and parse-spelling-errors commands. ! 129: They are nice especially if you have lots of paper writers. ! 130: ! 131: WIRED_TERMS - Include compiled-in hard-wired code for certain terminals, ! 132: like the Concept 100. If you don't have these terminals, ! 133: you probably don't need this (but no point in taking it ! 134: out unless you're low on space). ! 135: ! 136: The macros have been rewritten from scratch. The most noteable change is ! 137: that they are no longer stored in binary files. The write-macros-to-file ! 138: command writes a file which is suitable for use with the source command. ! 139: So you can have actual macro definitions in your .joverc if you want. If ! 140: you have lots of macros defined in the old format, you can use the ! 141: macvert program to convert them to the new style. You say ! 142: macvert old-style-macros-file > new-style-macro-file ! 143: ! 144: "doc/system.rc" and "doc/example.rc" are jove initialization files. ! 145: "system.rc" is the "system" rc file here at UoR, and it gets ready every ! 146: time JOVE starts up FOR EVERYONE. ("make install" should copy the ! 147: system-wide .joverc to the right place automatically.) After that JOVE ! 148: reads an initialization file in the user's home directory. "example.rc" ! 149: is my personal .joverc. ! 150: ! 151: The files "jove.[12345]" in DOC are the official JOVE manual. I got ! 152: permission from Richard Stallman to use his manual for the original EMACS, ! 153: modifying it where necessary for JOVE. Lots of work was done by Brian ! 154: Harvey on this manual. ! 155: ! 156: There are man pages for jove and teachjove. Teachjove is for people who ! 157: have never used EMACS style editors. It is an interactive tutorial, THE ! 158: tutorial written by Stallman for the original EMACS, only slightly ! 159: modified for JOVE in the appropriate places. The man pages are ! 160: completely up to date, thanks to me. ! 161: ! 162: Thanks to Jay (hack) Fenlason for writing the original pty code. ! 163: ! 164: Thanks to Dave Curry at Purdue for putting in tons of time and effort ! 165: into getting JOVE ready. It just wouldn't be working without his help. ! 166: ! 167: Thanks to Jeff Mc Carrell at Berkeley for finding bugs and adding ! 168: features, in particular, the comment formatter. ! 169: ! 170: Thanks to Karl Gegenfurtner for making the PC version. ! 171: ! 172: Thanks to Ken Mitchum for the Macintosh verison. ! 173: ! 174: Thanks to Hugh Redelmeier for his input, his experience, countless bug ! 175: fixes, and ... that's it, I guess. ! 176: ! 177: (Thanks to Brian Harvey for teaching me about linked lists ...) ! 178: ! 179: Good luck, have fun. ! 180: ! 181: Jonathan Payne ([email protected] until further notice :-)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.