Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!bloom-beacon!bu-cs!bucsb!jbw From: jbw@bucsb.UUCP (jbw) Newsgroups: gnu.emacs.bug Subject: server-mode problems and a generic GNU Emacs bug/restriction Summary: inews garbage Message-ID: <2419@bucsb.UUCP> Date: 24 Mar 89 19:35:03 GMT References: <8903231830.AA02592@PIT-MANAGER.MIT.EDU> Reply-To: jbw@bucsf.bu.edu (Joe Wells) Followup-To: gnu.emacs.bug Distribution: gnu Organization: Boston Univ Comp. Sci. Lines: 20 jik@ATHENA.MIT.EDU (Jonathan I. Kamens) writes: >When a buffer is in server mode and you change the mode of the buffer, >it goes out of server mode. > >Example: I'm editing a file from an emacsclient in text mode. I >decide to include a fragment of emacs-lisp, so I turn on >emacs-lisp-mode. The server mode goes away, and doesn't come back. This is a generic problem with the binding of values to buffer-local variables. Most (if not all) major modes call the function kill-all-local-variables to make sure that they clean up any bindings another major mode might have made. In this case, they also destroy the server/client information. The best solution is to alter kill-all-local-variables to ignore certain variables. If you are interested, send me mail and I will send you code for that. -- Joe Wells INTERNET: jbw%bucsf.bu.edu@bu-it.bu.edu IP: [128.197.10.201] UUCP: ...!harvard!bu-cs!bucsf!jbw