]> git.eshelyaron.com Git - emacs.git/commitdiff
(inferior-emacs-lisp-mode): Display working buffer on the mode line. Bind
authorJuanma Barranquero <lekktu@gmail.com>
Sun, 25 Apr 2004 17:18:00 +0000 (17:18 +0000)
committerJuanma Barranquero <lekktu@gmail.com>
Sun, 25 Apr 2004 17:18:00 +0000 (17:18 +0000)
`inhibit-read-only' to t before modifying properties of text in the buffer.
(ielm): Force point to the end of buffer, even when running ielm from inside
itself.

lisp/ChangeLog
lisp/ielm.el

index 940b6717de431007e8b26fa0acd805d66c998e8a..9b1fd48a34d608c933bf39d0cfdc53cd0000a9e6 100644 (file)
@@ -1,3 +1,11 @@
+2004-04-25  Juanma Barranquero  <lektu@terra.es>
+
+       * ielm.el (inferior-emacs-lisp-mode): Display working buffer on the
+       mode line.  Bind `inhibit-read-only' to t before modifying
+       properties of text in the buffer.
+       (ielm): Force point to the end of buffer, even when running ielm
+       from inside itself.
+
 2004-04-25  Jesper Harder  <harder@ifa.au.dk>
 
        * info.el (info-apropos): Reset Info-complete-cache.
index 725f7933149cf83b66a559238b4b2448cdbc43a8..beb261f4c896b619c0df53a56d6a1d8454f5f254 100644 (file)
@@ -429,8 +429,8 @@ The current working buffer may be changed (with a call to
 `set-buffer', or with \\[ielm-change-working-buffer]), and its value
 is preserved between successive evaluations.  In this way, expressions
 may be evaluated in a different buffer than the *ielm* buffer.
-Display the name of the working buffer with \\[ielm-print-working-buffer],
-or the buffer itself with \\[ielm-display-working-buffer].
+By default, its name is shown on the mode line; you can always display
+it with \\[ielm-print-working-buffer], or the buffer itself with \\[ielm-display-working-buffer].
 
 During evaluations, the values of the variables `*', `**', and `***'
 are the results of the previous, second previous and third previous
@@ -476,6 +476,7 @@ Customized bindings may be defined in `ielm-map', which currently contains:
 
   (setq major-mode 'inferior-emacs-lisp-mode)
   (setq mode-name "IELM")
+  (setq mode-line-process '(":%s on " (:eval (buffer-name ielm-working-buffer))))
   (use-local-map ielm-map)
   (set-syntax-table emacs-lisp-mode-syntax-table)
 
@@ -518,9 +519,10 @@ Customized bindings may be defined in `ielm-map', which currently contains:
     (insert ielm-header)
     (ielm-set-pm (point-max))
     (unless comint-use-prompt-regexp-instead-of-fields
-      (add-text-properties
-       (point-min) (point-max)
-       '(rear-nonsticky t field output inhibit-line-move-field-capture t)))
+      (let ((inhibit-read-only t))
+        (add-text-properties
+         (point-min) (point-max)
+         '(rear-nonsticky t field output inhibit-line-move-field-capture t))))
     (comint-output-filter (ielm-process) ielm-prompt)
     (set-marker comint-last-input-start (ielm-pm))
     (set-process-filter (get-buffer-process (current-buffer)) 'comint-output-filter))
@@ -550,7 +552,8 @@ Switches to the buffer `*ielm*', or creates it if it does not exist."
     (save-excursion
       (set-buffer (get-buffer-create "*ielm*"))
       (inferior-emacs-lisp-mode)))
-  (pop-to-buffer "*ielm*"))
+  (pop-to-buffer "*ielm*")
+  (goto-char (point-max)))
 
 (provide 'ielm)