Function: comint-redirect-setup

comint-redirect-setup is a byte-compiled function defined in comint.el.gz.

Signature

(comint-redirect-setup OUTPUT-BUFFER COMINT-BUFFER FINISHED-REGEXP &optional ECHO-INPUT)

Documentation

Set up for output redirection.

This function sets local variables that are used by comint-redirect-filter to perform redirection.

Output from COMINT-BUFFER is redirected to OUTPUT-BUFFER, until something in the output matches FINISHED-REGEXP.

If optional argument ECHO-INPUT is non-nil, output is echoed to the original Comint buffer.

This function is called by comint-redirect-send-command-to-process, and does not normally need to be invoked by the end user or programmer.

Source Code

;; Defined in /usr/src/emacs/lisp/comint.el.gz
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Functions
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defun comint-redirect-setup (output-buffer
			      comint-buffer
			      finished-regexp
			      &optional echo-input)
  "Set up for output redirection.
This function sets local variables that are used by `comint-redirect-filter'
to perform redirection.

Output from COMINT-BUFFER is redirected to OUTPUT-BUFFER, until something
in the output matches FINISHED-REGEXP.

If optional argument ECHO-INPUT is non-nil, output is echoed to the
original Comint buffer.

This function is called by `comint-redirect-send-command-to-process',
and does not normally need to be invoked by the end user or programmer."
  (with-current-buffer comint-buffer

    (setq-local comint-redirect-original-mode-line-process mode-line-process)

    (setq-local comint-redirect-output-buffer output-buffer)

    (setq-local comint-redirect-finished-regexp finished-regexp)

    (setq-local comint-redirect-echo-input echo-input)

    (setq-local comint-redirect-completed nil)

    (setq-local comint-redirect-previous-input-string "")

    (setq mode-line-process
	  (if (and mode-line-process (stringp (elt mode-line-process 0)))
	      (list (concat (elt mode-line-process 0) " Redirection"))
	    (list ":%s Redirection")))))