;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:53:22 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/vmsproc.el
;;; in Emacs version 21.3
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`vmsproc.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@76 If non-nil, the subprocess window is displayed whenever input is received.
(defvar display-subprocess-window nil (#$ . 616))
#@59 String to insert to distinguish commands entered by user.
(defvar command-prefix-string "$ " (#$ . 747))
(byte-code "\301B\303\301!\204\f \304\302B\303\302!\204 \304\n\204+ \305 \306\n\307\310#\210\306\n\311\312#\210\304\207" [current-load-list subprocess-running command-mode-map boundp nil make-sparse-keymap define-key "" command-send-input "" command-kill-line] 4)
#@52 Handles input from a subprocess.  Called by Emacs.
(defalias 'subprocess-input #[(name str) "\203 \304	!\210p	q\210db\210c\210\305c\210\nq)\207" [display-subprocess-window subprocess-buf old-buffer str display-buffer 10] 2 (#$ . 1132)])
#@39 Called by Emacs upon subprocess exit.
(defalias 'subprocess-exit #[(name) "\301\211\207" [subprocess-running nil] 2 (#$ . 1379)])
#@189 Spawns an asynchronous subprocess with output redirected to
the buffer *COMMAND*.  Within this buffer, use C-m to send
the last line to the subprocess or to bring another line to
the end.
(defalias 'start-subprocess #[nil "\203	 \303\304\305\"\210\306\307!\212	q\210\310\n!\210)\311\312\313\314#\211\205$ \315\312\316\"\207" [subprocess-running subprocess-buf command-mode-map throw --cl-block-nil-- t get-buffer-create "*COMMAND*" use-local-map spawn-subprocess 1 subprocess-input subprocess-exit send-command-to-subprocess "ON SEVERE_ERROR THEN CONTINUE"] 5 (#$ . 1517)])
#@50 Execute COMMAND and redirect output into BUFFER.
(defalias 'subprocess-command-to-buffer #[(command buffer) "\304\211\n\305\306\307\n\"O\n\306\307\n\"\304O\310	\304\304\311&*\207" [args cmd command buffer nil 0 string-match " " call-process "*dcl*"] 7 (#$ . 2100)])
#@75 Starts asynchronous subprocess if not running and switches to its window.
(defalias 'subprocess-command #[nil "\204 \302 \210\205 \303	!\210db\207" [subprocess-running subprocess-buf start-subprocess pop-to-buffer] 2 (#$ . 2379) nil])
#@149 If at last line of buffer, sends the current line to
the spawned subprocess.  Otherwise brings back current
line to the last line for resubmission.
(defalias 'command-send-input #[nil "\303 \210`\304\210`{m\2031 	\204 \305 \210	\205P \303 \210\306\307\"\210\n\203+ \303 \210\nc\210\310\307!\202P \311 \210\312u\210\310\307!\210\n\313\nGO\230\203N \nG\304Oc\202P c)\207" [current-line subprocess-running command-prefix-string beginning-of-line nil start-subprocess send-command-to-subprocess 1 next-line end-of-buffer -1 0] 4 (#$ . 2625) nil])
#@48 Kills the current line.  Used in command mode.
(defalias 'command-kill-line #[nil "\300 \210\301 \207" [beginning-of-line kill-line] 1 (#$ . 3181) nil])
(define-key esc-map "$" 'subprocess-command)
