]> git.eshelyaron.com Git - emacs.git/commitdiff
[original idea from Luc Teirlinck <teirllm@mail.auburn.edu>]
authorMiles Bader <miles@gnu.org>
Mon, 19 Aug 2002 05:03:55 +0000 (05:03 +0000)
committerMiles Bader <miles@gnu.org>
Mon, 19 Aug 2002 05:03:55 +0000 (05:03 +0000)
(inferior-emacs-lisp-mode): Give `comint-inhibit-carriage-motion' a
local value of t.

lisp/ChangeLog
lisp/ielm.el

index 26d98cd5e117ebea5ac445dbab018553988870c3..6b6fbed2b793986aa12627a8675c7b15c6afb0a0 100644 (file)
@@ -1,3 +1,15 @@
+2002-08-19  Miles Bader  <miles@gnu.org>
+
+       [original idea from Luc Teirlinck <teirllm@mail.auburn.edu>]
+       * comint.el (comint-inhibit-carriage-motion): New variable.
+       (comint-carriage-motion): Argument STRING removed.  New arguments
+       START and END; interpret characters between START and END rather
+       than using special comint state.
+       (comint-output-filter): Call `comint-carriage-motion'.
+       (comint-output-filter-functions): Don't add `comint-carriage-motion'.
+       * ielm.el (inferior-emacs-lisp-mode): Give
+       `comint-inhibit-carriage-motion' a local value of t.
+
 2002-08-18  Richard M. Stallman  <rms@gnu.org>
 
        * table.el: New file.
index 9143609c9a19e0e412b023c0fb18f640f21336d5..55d1e59857f47fa7ffe245d290a6414a33b7c42e 100644 (file)
@@ -1,6 +1,6 @@
 ;;; ielm.el --- interaction mode for Emacs Lisp
 
-;; Copyright (C) 1994 Free Software Foundation, Inc.
+;; Copyright (C) 1994, 2002 Free Software Foundation, Inc.
 
 ;; Author: David Smith <maa036@lancaster.ac.uk>
 ;; Maintainer: FSF
@@ -452,18 +452,24 @@ Customised bindings may be defined in `ielm-map', which currently contains:
        '(ielm-font-lock-keywords nil nil ((?: . "w") (?- . "w") (?* . "w"))))
 
   ;; A dummy process to keep comint happy. It will never get any input
-  (if (comint-check-proc (current-buffer)) nil
+  (unless (comint-check-proc (current-buffer))
     ;; Was cat, but on non-Unix platforms that might not exist, so
     ;; use hexl instead, which is part of the Emacs distribution.
     (start-process "ielm" (current-buffer) "hexl")
     (process-kill-without-query (ielm-process))
     (goto-char (point-max))
+    
+    ;; Lisp output can include raw characters that confuse comint's
+    ;; carriage control code.
+    (set (make-local-variable 'comint-inhibit-carriage-motion) t)
+
     ;; Add a silly header
     (insert ielm-header)
     (ielm-set-pm (point-max))
     (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))
+
   (run-hooks 'ielm-mode-hook))
 
 (defun ielm-get-old-input nil