E3AIX NEWS (RT and PS/2 versions) (Most recent news at end of file.) Installation: 1. There are four TARBIN files, of which you need two. You need e3aixmac.tar; it contains the files common to all versions. Then pick one of e3aixrt.tar (RT-AIX 2.2.1) or e3aixps2.tar (AIX-PS2) or e3aix22.tar (RT-AIX 2.2) for the appropriate executables. Download to a new directory. (I'll call it /u/you/e3 for illustration.) 2. Unpack both: "tar -xf ewhatever.tar" 3. Issue "et e" to produce the file e.ex. There may be an e.ex supplied with the package but it's best to recompile. 4. Set the environment variable "epath" to the directory where e.ex resides. This version still depends on epath; I haven't added the command-line switch (like E3's "/e") to specify the directory. If you don't set epath, you can run only in the directory where e.ex resides. If you set epath incorrectly, E won't find e.ex even if it's under its nose. So if using sh: epath=/u/you/e3 export epath If csh: setenv epath /u/you/e3 And you'll probably want to add the directory to your path in a similar way. ------------------------------------------------------------------------------- Acknowledgments: Mostly Clark Maurer, of course. And all the people who worked on E over the years; see E3 SCRIPT. Scott Schweitzer and Jerry Cuomo helped me get it going again on AIX. What I did was add most of the changes from E3-DOS over the last two years. (And "ported" it to AIXPS/2, but all it took was recompiling, first time Which I guess is a kudo for AIX and for Clark.) ------------------------------------------------------------------------------- Documentation: E3 SCRIPT and E3TECH SCRIPT are pretty applicable now. Get E3DOC PACKAGE from PCTOOLS. ------------------------------------------------------------------------------- No-Support Disclaimer: E is no longer my official job and I will not be making frequent releases of this. In fact I'm using emacs about as much as E now, and I no longer have a PS/2 to work on. (So now I have plenty of excuses to be lazy. :-) "No undocumented serious bugs that I know of." But this version isn't bad. It's pretty close to the current E3-DOS version 3.12. I'd say it's about 3.10 in function. The editor commands (the .e files) are up to date. This is a lot cleaner than the last e3aix The official version number is 3.021, to avoid confusion with E3-DOS. ------------------------------------------------------------------------------- Differences from E3 on DOS: An advantage: E3-DOS allowed only 64K of compiled procedures. (Even on OS/2 the 8080 ghost still haunted us... we allowed multiple 64K modules.) But on aix you're allowed 128K of "p-code space", which ought to save you from worrying about it. My e.ex is 67K. Disadvantage: this runs pretty slowly in an X window on a Model 80. I didn't change the old terminal-escape-sequence method of screen writing. For the same reason, colors are not configurable. Advantage: this will run in larger-than-80x25 X windows now. E3 look for the environment variables LINES and COLUMNS which are set by aixterm. (Note: use aixterm, not xterm.) Failing that, it tries to read the terminal size as it did before, so it still runs in non-X sessions. I've provided several sample start-up execs, like e25 and e43. The EDIT, NAME and SAVE commands understand tilde () to stand for your home directory. As in "Edit /.profile". It also accepts the unshifted tilde key () for convenience. See "defproc parse_filename" in stdprocs.e. Added a MAN command to read man pages, as in "man grep". In mykeys.e. To save a file with tab characters (as is needed for makefiles on aix): set save_with_tabs = 1 in stdcnf.e (this is already set), or else do "save -t" when desired. If you set the parameter and later find that you want to save a particular file without tabs (as for uploading to VM), do "xcom save". On aix we can't use the keys Ctrl-J, C, S, Q, V, and H. Nor Ctrl-Enter. I added a PRINTER_NAME parameter to stdcnf.e to let you specify something like "/dev/lp0" (thanks to Steve Quinlan for pointing this out). You can also specify the name of a program to run, such as PRINTER_NAME="exec print". See stdcnf.e. ------------------------------------------------------------------------------- Changes since last e3aix: The rest of these changes are probably of interest only to users of the old e3aix; e3-dos users will be familiar with them. The biggest feature missing from E3-DOS 3.12 is "compile if defined". It enabled all the user-configurable parameters to be put into a separate file, so the user wouldn't have to alter any of the distribution files. But the configurability is still a lot better than it was in the last E3AIX release 3.02; you should need to modify only a couple of files, mykeys.e and stdcnf.e. This does have "compile if" but not the "defined". Allows conditional compilation. Actually this isn't all that useful here, since we're not tight on p-code space and we're not trying to be compatible with the official set of E macros. I thought we got too carried away with "compile if" statements in the official macro set. The '=' symbol is useful shorthand in the Edit, Name, and Save commands. It stands for the same directory, filename, or filetype (depending on where you use it) as the current file's. "Edit =/anotherfile" means to edit anotherfile from the same directory as the current file's... useful for long paths. Another example: "Name ./=" changes the name to the same filename but in the current directory. The cursor shape changes in accord with the insert mode. With some restrictions on allowed shapes... see the comment at the top of stdcnf.e. Slight improvement to the one-line undo: you can press undo twice to redo. Added several e3-dos configuration options: center_search, join_after_wrap, default_search_options, top_of_file_fixed, CURSOR_ON_COMMAND. See stdcnf.e for details. Better windowing: see options messy and jhwindow in stdcnf.e. We got these to work well, and recommend setting both to 1. SmartQuit and SmartFile features, see stdcnf.e. Slightly improved syntax assist. See C_SYNTAX_ASSIST, etc. and SYNTAX_INDENT in stdcnf.e. Included several extra commands that I like, not part of standard E3 distribution. Retrieve, globfind, alt-1, e3comp, shifttab, imm, step. See mykeys.e to turn them on. It should be easy to bring in other add-on procedures; see E3* PACKAGEs and E3* PROCS on PCTOOLS. Redefined Alt-H to mean "split windows horizontally" and Alt-V to "split vertically". These were Ctrl-H and Ctrl-V on DOS, but we can't use Ctrl-H on aix, I think. Better sort. Calls external sort program, so it's fast for large files. (My old slow but protable sorte.e is also provided; you can change "sortaix.e" to "sorte.e" in e.e.) Updated draw command. Still bound to F6. Insert key "raises pen". F6 in mid-draw lets you switch styles. The constant EVERSION is automatically set by the compiler. "3.021" here. Not highly useful since there won't be many releases of this. E will run remotely on another machine and display in an aixterm window on your machine. It's a little finicky... use telnet rather than rlogin or else function keys don't work. You might need to set TERM=hft. Remember that LINES and COLUMNS need to be set. Added command_state() primitive function as faster replacement for pcommand_state(). A line-mark goes along with the copy (Alt-L Alt-C), to be consistent with block-mark and move. Up to 32 tab stops instead of 19. You can set regular tab stops with a single number, like "tabs 8". The compiler catches attempted usage of undefined variables. Usually this means a misspelled name, like "sayerro". The compiler will report that as an undefined variable. Ctrl-D is word-delete. The Ctrl-R keyboard recorder is updated. As in E3-DOS, you can use the Esc key in the recording. Ctrl-G cancels. The LIST command works. Useful to get a list of filenames. You can then edit files from the list by pressing Alt-1. Comments-to-end-of-line in the E files can start with double-dashes "--". --------------------------------------------------------------------------- Changes 9/6/89: When E invokes the operating system shell, it now respects your SHELL environment variable; it used to be hardwired to "sh". (At least this is fixed on the RT version. Not sure why it doesn't work on PS/2.) The cursor shape is restored to an underline when E exits. Slight improvements to the LIST command and Alt-1 key. The Alt-1 key used to get confused if the list command specified a relative path or a partial filespec, like "list ../*.c". (Note: You must include the optional alt-1.e file. Hmmm... maybe it should be standard.) --------------------------------------------------------------------------- Changes 9/12/89: Made start-up more crash-proof. If E doesn't find the COLUMNS and LINES environment variables, it defaults to 80x25. (So it will still work in a non-X console session.) So at worst you'll get a skewed screen, but not a crash. Made PS/2 version respect SHELL variable. If you type "dos" to temporarily exit to the operating system, your preferred shell is invoked. (Of course this isn't very useful on unix, and the name "dos" is annoying.) This does not mean that E can find your c-shell aliases. We're looking at that. Fixed bug of function-key-text vanishing when in syntax-assist mode, editing a .c or .e file. Small changes in ckeysel, ekeysel, and pkeysel.e. Fixed bug of mark vanishing when you savefilewithtabs. In stdprocs.e. Added a set of executables for AIX 2.2. Thanks to PIRAGESD at RCKVM1 for recompiling it. --------------------------------------------------------------------------- Changes 11/6/89: A minor release, just fixes and getting the versions to the same level. * Ctrl-Z crash fixed by Andreas Siegert, mainly for aixps2. * Save_with_tabs in stdcnf.e defaults to 0 now, and logic was added to "defc save" in stdcmds.e to turn tab-saving on for any filename beginning with "makefile" in upper or lower case. This removes the speed penalty of the tabification most of the time, while correctly saving makefiles. * Bug in saving function key text when editing C or E files fixed in ckeysel.e, etc. (I thought these were already in the last release, but the files might not have made it into all versions.) * Removed the old method of determining screen height which tried to query the terminal's size. I had tried to leave this method in as a fallback in case LINES and COLUMNS weren't set, but it seemed to cause more problems other times. So now if LINES and COLUMNS aren't set, E comes up in 80x25 size. * David Pirages recompiled the AIX 2.2 version. --------------------------------------------------------------------------- Changes 11/26/90: * Fixed a minor annoyance. Whenever there was a message (as in 'sayerror("New file")') the old E would hog the CPU by polling the keyboard. Changed the executable "e" only.