Function: idlwave-shell-sentinel

idlwave-shell-sentinel is a byte-compiled function defined in idlw-shell.el.gz.

Signature

(idlwave-shell-sentinel PROCESS EVENT)

Documentation

The sentinel function for the IDLWAVE shell process.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/idlw-shell.el.gz
(defun idlwave-shell-sentinel (process event)
  "The sentinel function for the IDLWAVE shell process."
  (let* ((buf (idlwave-shell-buffer))
	 (win (get-buffer-window buf)))
    (when (get-buffer buf)
      (with-current-buffer (idlwave-shell-buffer)
	(goto-char (point-max))
	(insert (format "\n\n  Process %s %s" process event))
	(if (and idlwave-shell-save-command-history
		 (stringp idlwave-shell-command-history-file))
	    (condition-case nil
		(comint-write-input-ring)
	      (error nil)))))

    (when (and (> (length (frame-list)) 1)
	       (frame-live-p idlwave-shell-idl-wframe))
      (delete-frame idlwave-shell-idl-wframe)
      (setq idlwave-shell-idl-wframe nil
	    idlwave-shell-display-wframe nil))
    (when (and (window-live-p win)
	       (not (one-window-p 'nomini)))
      (delete-window win))
    (idlwave-shell-cleanup)
    ;; Run the hook, if possible in the shell buffer.
    (if (get-buffer buf)
	(with-current-buffer buf
	  (run-hooks 'idlwave-shell-sentinel-hook))
      (run-hooks 'idlwave-shell-sentinel-hook))))