[comp.sys.ti.explorer] minor modes

jwz@spice.cs.cmu.edu (Jamie Zawinski) (06/08/89)

A while back I posted a complaint about the way *initial-minor-modes* and
buffer switching interact; basically the scenario is: you have
((TEXT-MODE) AUTO-FILL-MODE) on *INITIAL-MINOR-MODES*; you visit a .TEXT
file; you explicitly turn off auto-fill-mode; you switch to another buffer
and switch back; and auto-fill-mode *comes back on*!  Grrr.

Well, you fix this by changing the cond-test

	(get mode-symbol 'major-mode-p)
to be
	(and (get mode-symbol 'major-mode-p)
	     (not (member mode-symbol (send *interval* :saved-mode-list)
			  :test #'eq :key #'car)))

in the function ZWEI:TURN-ON-MODE.  The clause for which this is a test is
the one that turns on the *initial-minor-modes*; basically, my change says
"don't turn on the *initial-minor-modes* if we are not changing the
major-mode of this buffer" (which is exactly what I want, anyway).


Archive Update:  the anon-FTPable directory /usr/jwz/public on
spice.cs.cmu.edu has some new items:

MANDELBROT  Window-based utility for exploring the Mandelbrot fractal set.  
  Uses a quad-tree algorithm to generate the image, and is *real* fast.

LOST-CONNECTION-HACK   Scenario: you have a long-running program reading 
  from a multi-megabyte file on a different machine.  Someone reboots the
  remote machine on which the file lives.  Shafted?  No. This code will reopen
  the file, and bash on the dead stream object enough that you can proceed
  with the connection invisibly reestablished!  Just reinvoke READ-CHAR.

TELNET-NEWLINE-FIX   When telnetting in to a TI from a Unix machine, you 
  cannot type Newline - so there is no way to complete a READ-LINE.  This
  fixes that.  (However: if you use the VT100 program to connect to a Unix
  machine and then telnet back to a TI, everything works fine.  This is to
  make sure that you only encounter this bug when you are dialed up from home,
  and have no chance of fixing it.)

... other stuff too.  Check out _recent-changes.text.
--