Hi Martin, I applied your patch to the CVS version of jde-compile.el.
Thanks, Paul Martin Schwamberger writes: > > Javier S. Lopez wrote: > > Paul Kinnucan <[EMAIL PROTECTED]> writes: > > > > There are probably a few ways to work around the problem > > 1. Set the inhibit-read-only flag > > 2. Make our compiles a minor mode or rewrite the way we use it. There is a > > new > > method compile-setup that takes a flag that allows you to control this > > behavior. > > Hi Javier, > > I've changed jde-compile.el > according to your first idea. > See diff below. > > > > > I will point you to the email thread where Richard Stallman talks about > > it. I > > don't agree with him, I think Stefan Monnier is right on this one. > > http://lists.gnu.org/archive/html/emacs-devel/2004-11/msg00008.html > > IMHO, RMS is right here. > Programs can easily change read-only compilation buffers > and users shouldn't. > > Martin > > > > > Javier > > > > > >>Javier S. Lopez writes: > >> > "Anderson, Timothy K" <[EMAIL PROTECTED]> writes: > >> > > >> > > Hi, > >> > > Using GNU Emacs CVS, JDE 2.3.4, CEDET 1.0beta3b. > >> > > > >> > > When trying to compile code with C-C C-V C-C, I am getting the > >> > > following error: > >> > > > >> > > save-excursion: Buffer is read-only: #<buffer *compilation*> > >> > > >> > This looks familiar... > >> > > >> > I had the problem when running the latest emacs from cvs. All the > >> > compilation > >> > buffers are read only, I don't know what a good fix for this is. I just > >> > changed > >> > the compile.el file to avoid making the buffers readonly. But we > >> > probably need > >> > a better fix for this. > >> > > >> > >>How can the compilation buffers be read-only and allows error and other > >>messages > >>to be written into them? This sounds like a bug in the CVS version of > >>Emacs. > >> > >>Paul > >> > >> > > >> > Javier > >> > > >> > > > >> > > This happens every time - I think I have tried almost every > >> > > combination > >> > > of customize variables (at least, it feels that way). > >> > > Has anyone else seen this? What should I do to find the cause? > >> > > > >> > > Thanks for any help. > >> > > > >> > > > >> > > Tim Anderson > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > ____________________________________________________________ > >> > > CONFIDENTIALITY > >> > > This e-mail and any attachments are confidential and also may be > >> > > privileged. > >> > > If you are not the named recipient, or have otherwise received this > >> > > communication in error, please delete it from your inbox, notify the > >> > > sender > >> > > immediately, and do not disclose its contents to any other person, > >> > > use them for any purpose, or store or copy them in any medium. > >> > > Thank you for your cooperation. > >> > > ____________________________________________________________ > >> > > > >> > > > >> > > > >> > > > >> > > >> > -- > >> > Javier S. Lopez > >> > Software Developer > >> > Forum Systems, Inc. > >> > 95 Sawyer Road, Suite 110, Waltham, MA 02453 > >> > http://www.forumsys.com > >> > > >> > > >> > The information contained in this electronic mail and any attached > >> > document is the confidential and proprietary business information of > >> > Forum Systems, Inc. It is intended solely for the addressed recipient > >> > listed above. It may not be distributed in any manner without the > >> > express written consent of Forum Systems, Inc. > >> > > > > > > diff -u jde-compile.el.old jde-compile.el > --- jde-compile.el.old 2004-12-17 05:29:36.000000000 +0100 > +++ jde-compile.el 2005-01-25 13:14:47.585153200 +0100 > @@ -714,24 +714,23 @@ > > (save-excursion > (set-buffer outbuf) > - > - (insert (format "cd %s\n" default-directory)) > - > - (insert (concat > - compiler-path > - " " > - (mapconcat (lambda (x) > - (if (and flag > - jde-compile-option-hide-classpath) > - (progn > - (setq flag nil) > - "...") > - (if (not (string= x "-classpath")) > - x > - (progn > - (setq flag t) > - x)))) args " ") > - "\n\n")) > + (let ((inhibit-read-only t)) ; make compilation buffer > temporarily writable > + (insert (format "cd %s\n" default-directory)) > + (insert (concat > + compiler-path > + " " > + (mapconcat (lambda (x) > + (if (and flag > + jde-compile-option-hide-classpath) > + (progn > + (setq flag nil) > + "...") > + (if (not (string= x "-classpath")) > + x > + (progn > + (setq flag t) > + x)))) args " ") > + "\n\n"))) > > (let* ((process-environment (cons "EMACS=t" process-environment)) > (w32-quote-process-args ?\") > @@ -770,33 +769,27 @@ > ",")))) > > (setq arg-array (concat arg-array "}")) > - > - > + > (save-excursion > (set-buffer (oref (oref this buffer) buffer)) > - > - (insert "CompileServer output:\n") > - (insert "\n") > - > - (let (flag temp) > - (setq temp > - (mapconcat > - (lambda (x) > - (if (and flag > - jde-compile-option-hide-classpath) > - (progn > - (setq flag nil) > - "...") > - (if (not (string= x "-classpath")) > - x > - (progn > - (setq flag t) > - x)))) args " ")) > - > - (insert temp " ")) > - > - (insert source-path "\n")) > - > + (let ((inhibit-read-only t) ; make compilation buffer > temporarily writable > + flag > + temp) > + (insert "CompileServer output:\n\n") > + (setq temp > + (mapconcat > + (lambda (x) > + (if (and flag > + jde-compile-option-hide-classpath) > + (progn > + (setq flag nil) > + "...") > + (if (not (string= x "-classpath")) > + x > + (progn > + (setq flag t) > + x)))) args " ")) > + (insert temp " " source-path "\n"))) > > (if (not (jde-bsh-running-p)) > (progn
