# HG changeset patch # User Richard M. Stallman # Date 1024151166 0 # Node ID e4a48b5ab2fb6be6a7e40a8cabb300b8cf096203 # Parent aab759361c2460843ad409d51758cb1f71e772e0 (comint-skip-input): New function. (comint-interrupt-subjob, comint-kill-subjob, comint-quit-subjob) (comint-stop-subjob): Use comint-skip-input. diff -r aab759361c24 -r e4a48b5ab2fb lisp/comint.el --- a/lisp/comint.el Sat Jun 15 14:20:52 2002 +0000 +++ b/lisp/comint.el Sat Jun 15 14:26:06 2002 +0000 @@ -2059,7 +2059,7 @@ This command also kills the pending input between the process-mark and point." (interactive) - (comint-kill-input) + (comint-skip-input) (interrupt-process nil comint-ptyp)) (defun comint-kill-subjob () @@ -2067,7 +2067,7 @@ This command also kills the pending input between the process-mark and point." (interactive) - (comint-kill-input) + (comint-skip-input) (kill-process nil comint-ptyp)) (defun comint-quit-subjob () @@ -2075,7 +2075,7 @@ This command also kills the pending input between the process-mark and point." (interactive) - (comint-kill-input) + (comint-skip-input) (quit-process nil comint-ptyp)) (defun comint-stop-subjob () @@ -2088,7 +2088,7 @@ this, use \\[comint-continue-subjob] to resume the process. (This is not a problem with most shells, since they ignore this signal.)" (interactive) - (comint-kill-input) + (comint-skip-input) (stop-process nil comint-ptyp)) (defun comint-continue-subjob () @@ -2097,6 +2097,19 @@ (interactive) (continue-process nil comint-ptyp)) +(defun comint-skip-input () + "Skip all pending input, from last stuff output by interpreter to point. +This means mark it as if it had been sent as input, without sending it." + (let ((comint-input-sender 'ignore) + (comint-input-filter-functions nil)) + (comint-send-input t)) + (end-of-line) + (let ((pos (point)) + (marker (process-mark (get-buffer-process (current-buffer))))) + (insert " " (key-description (this-command-keys))) + (if (= marker pos) + (set-marker marker (point))))) + (defun comint-kill-input () "Kill all text from last stuff output by interpreter to point." (interactive)