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