datri@convex.com (Anthony A. Datri) (04/07/91)
Here are my diffs to the Microemacs 3.11 Beta sources. Included is the diff to make searching behave that was previously posted. My changes have been to allow control-space to work for setting the mark, and to make the paths for Unix machines more reasonable. To make ctrl-space work for setting the mark, turn on the NULLSARESETMARKS configuration variable. The only reason I can imagine for this to lose would be something like a terminal server inserting NULLS into the stream going to the host. If you have a problem like that, just comment out the binding in ebind.h, and do the binding conditionally yourself. I've changed the paths for several reasons. First, calling the initialization and help files .emacsrc and emacs.hlp is potentially confusing, with the wide variety of emacses out there. I'm sure that my users would be confused by having a .emacs file for the gnuosaurus and a .emacsrc for Our Hero. So, I've changed the names to .microemacsrc and microemacs.hlp, and the directories to ones that better fit a large and diverse environment. <=>lovecraft<=>diff -c unix.c ../pristine/unix.c *** unix.c Sat Apr 6 19:38:54 1991 --- ../pristine/unix.c Thu Aug 16 17:29:40 1990 *************** *** 365,372 **** curterm = oldterm; /* Set new modes */ ! /* curterm.c_iflag &= ~(INLCR|ICRNL|IGNCR);*/ ! curterm.c_iflag &= ~(INLCR|ICRNL|IGNCR|IXON|IXOFF); curterm.c_lflag &= ~(ICANON|ISIG|ECHO); curterm.c_cc[VMIN] = 1; curterm.c_cc[VTIME] = 0; --- 365,371 ---- curterm = oldterm; /* Set new modes */ ! curterm.c_iflag &= ~(INLCR|ICRNL|IGNCR); curterm.c_lflag &= ~(ICANON|ISIG|ECHO); curterm.c_cc[VMIN] = 1; curterm.c_cc[VTIME] = 0; *************** *** 680,695 **** qin(ch); /* Skip if the key isn't a special leading escape sequence */ - #if NULLSARESETMARKS - if ((ch != 0) && keyseq[ch] == 0) - return; - else if ( ch == 0) { - qin(0);qin(0);return; - } - #else if (keyseq[ch] == 0) return; ! #endif /* Start at root of keymap */ cur = keymap; --- 679,687 ---- qin(ch); /* Skip if the key isn't a special leading escape sequence */ if (keyseq[ch] == 0) return; ! /* Start at root of keymap */ cur = keymap; *************** *** 1537,1540 **** #endif /* XENIX & FILOCK */ #endif /* BSD || USG || SMOS || HPUX || SUN || XENIX || AVIION */ - --- 1529,1531 ---- <=>lovecraft<=>diff -c estruct.h ../pristine/estruct.h *** estruct.h Sat Apr 6 19:41:58 1991 --- ../pristine/estruct.h Sun Mar 24 18:44:54 1991 *************** *** 145,152 **** #define CTAGS 0 /* include vi-like tagging? */ #define SPEECH 0 /* spoken EMACS, for the sight impared [not ready ] */ #define VARARG 1 /* use varargs.h for mlwrite() * / - #define NULLSARESETMARKS 1 /* NULL (ctrl-space) from keybd are meaningful */ - /* (this is so that set-mark can be bound */ /* Character set options */ /* [Set one of these!!] */ --- 145,150 ---- <=>lovecraft<=>diff -c ebind.h ../pristine/ebind.h *** ebind.h Sat Apr 6 19:47:11 1991 --- ../pristine/ebind.h Mon Mar 11 20:08:58 1991 *************** *** 9,17 **** * control-X commands. */ NOSHARE KEYTAB keytab[NBINDS] = { - #if NULLSARESETMARKS - {CTRL|'@', BINDFNC, setmark}, - #endif {CTRL|'A', BINDFNC, gotobol}, {CTRL|'B', BINDFNC, backchar}, {CTRL|'C', BINDFNC, insspace}, --- 9,14 ---- <=>lovecraft<=>diff -c epath.h ../pristine/epath.h *** epath.h Sat Apr 6 00:04:37 1991 --- ../pristine/epath.h Thu Aug 16 17:24:24 1990 *************** *** 56,70 **** #if V7 | BSD | USG | SMOS | HPUX | XENIX | SUN | AVIION { ! /* ".emacsrc", "emacs.hlp", "/usr/local/", "/usr/lib/", - ""*/ - ".microemacsrc", - "microemacs.hlp", - "/usr/local/lib/microemacs/", - "/usr/local/bin/", "" }; #endif --- 56,65 ---- #if V7 | BSD | USG | SMOS | HPUX | XENIX | SUN | AVIION { ! ".emacsrc", "emacs.hlp", "/usr/local/", "/usr/lib/", "" }; #endif -- -- datri@convex.com