I had fix this on the repository a while back by setting the buffer-read-only flag back to nil in beanshell.el. Similar to the fix applied to jde-checkstyle.
I will leave it upto Paul whether or not we wants to rollback my fix and apply yours. There are similar in nature. Javier Martin Schwamberger <[EMAIL PROTECTED]> 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