Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!bbn!jr@bbn.com From: jr@bbn.com (John Robinson) Newsgroups: gnu.emacs Subject: Re: Minor modes Message-ID: <35718@bbn.COM> Date: 8 Feb 89 05:01:55 GMT References: <35717@bbn.COM> Sender: news@bbn.COM Reply-To: jr@bbn.com (John Robinson) Organization: BBN Systems and Technologies Corporation, Cambridge MA Lines: 33 In-reply-to: mesard@bbn.com (Wayne Mesard) In article <35717@bbn.COM>, mesard@bbn (Wayne Mesard) writes: > Or maybe an "event >specification" system, so you can say things like: > > (register-event-func 'maybe-wrap '(> (current-column) fill-column)) > (register-event-func 'line-nums 'window-movedP) ;window-movedP is a function. > >In fact, lets just keep 'em on an alist a la auto-mode-alist. The >conditional form gets evaluated periodically (once each time through the >body of command_loop() ?), and if non-nil, the other form is evaluated. So emacs should be a blackboard system in addition to everything else? I love it! Slow? maybe... Could it run before each redisplay call (no more unprocessed characters in the input buffer)? On line numbers - I seem to remember back in the cowebs somewhere - was it BBN's PEN editor, or maybe ITS EMACS? - there was a way to link two windows together so that if one scrolled, the other would too. This might be a cooler way to get line numbers to work; helpful for some types of file compares too. Another kind of link might allow one window to grow while the next one shrank, and if there were "window-local" variables, we might have a way to do "sections" discussed here recently. Particularly if the mode line were optional... One of Wayne's event checks could detect when the growing one reached a section end and open the next "window" section. Just inventing on the fly, that's all, thinking out loud. -- /jr jr@bbn.com or bbn!jr