Function: xscheme-start-process
xscheme-start-process is a byte-compiled function defined in
xscheme.el.gz.
Signature
(xscheme-start-process COMMAND-LINE THE-PROCESS THE-BUFFER)
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/xscheme.el.gz
;;;; Basic Process Control
(defun xscheme-start-process (command-line the-process the-buffer)
(let ((buffer (get-buffer-create the-buffer)))
(let ((process (get-buffer-process buffer)))
(with-current-buffer buffer
(if (and process (memq (process-status process) '(run stop)))
(set-marker (process-mark process) (point-max))
(progn (if process (delete-process process))
(goto-char (point-max))
(scheme-interaction-mode nil)
(setq xscheme-process-name the-process)
(if (bobp)
(insert-before-markers
(substitute-command-keys xscheme-startup-message)))
(setq process
(let ((process-connection-type nil))
(apply 'start-process
(cons the-process
(cons buffer
(xscheme-parse-command-line
command-line))))))
(if (not (equal (process-name process) the-process))
(setq xscheme-process-name (process-name process)))
(if (not (equal (buffer-name buffer) the-buffer))
(setq xscheme-buffer-name (buffer-name buffer)))
(message "Starting process %s in buffer %s"
xscheme-process-name
xscheme-buffer-name)
(set-marker (process-mark process) (point-max))
(xscheme-process-filter-initialize t)
(xscheme-mode-line-initialize xscheme-buffer-name)
(set-process-sentinel process 'xscheme-process-sentinel)
(set-process-filter process 'xscheme-process-filter)
(run-hooks 'xscheme-start-hook)))))
buffer))