;;; Source file: /usr/local/lib/jade/3.2/lisp/shell.jl
;;; Compiled by jsh@orcrist on Sun Oct 16 20:20:45 1994
;;; Jade 3.2

(provide (quote shell))

(defvar shell-file-name (or (getenv "SHELL") "/bin/sh") 71661)

(defvar shell-whole-line t 71692)

(defvar shell-program shell-file-name 71839)

(make-variable-buffer-local (quote shell-program))

(defvar shell-program-args nil 71890)

(make-variable-buffer-local (quote shell-program-args))

(defvar shell-prompt-regexp "^[^]#$%>)]*[]#$%>)] *" 71946)

(make-variable-buffer-local (quote shell-prompt-regexp))

(defvar shell-callback-function (quote shell-default-callback) 71989)

(make-variable-buffer-local (quote shell-callback-function))

(defvar shell-output-stream nil 72048)

(make-variable-buffer-local (quote shell-output-stream))

(defvar shell-process nil 72179)

(make-variable-buffer-local (quote shell-process))

(defvar shell-keymap (make-keylist) 72242)

(bind-keys shell-keymap "Ctrl-a" (quote shell-bol) "Ctrl-d" (quote shell-del-or-eof) "RET" (quote shell-enter-line))

(defvar shell-ctrl-c-keymap (make-keylist) 72265)

(bind-keys shell-ctrl-c-keymap "Ctrl-c" (quote shell-send-intr) "Ctrl-z" (quote shell-send-susp) "Ctrl-d" (quote shell-send-eof) "Ctrl-n" (quote shell-next-prompt) "Ctrl-p" (quote shell-prev-prompt) "Ctrl-\\" (quote shell-send-quit))

(setenv "TERM" "jade")

(setenv "TERMCAP" "jade:tc=unknown")

(defun shell-mode nil 72298 (jade-byte-code "K!#%&F&	H
H	" [shell-keymap keymap-path shell-ctrl-c-keymap ctrl-c-keymap "Shell" mode-name shell-mode major-mode shell-mode-kill major-mode-kill shell-start-process eval-hook shell-mode-hook] 2))

(defun shell-mode-kill nil (jade-byte-code "þ 5	ÿ 	HI
HI
HI
HI I&I&	I&
‹&IF&" [shell-process yes-or-no-p "Subprocess running; kill it?" error "Can't kill shell-mode without killing its subprocess" set-process-function set-process-output-stream kill-process mode-name major-mode major-mode-kill shell-mode-keymap keymap-path ctrl-c-keymap] 3))

(defun shell-start-process nil (jade-byte-code "ÿ 2ÿ I²JKI²*++		
F H
H	" [shell-process make-process shell-output-stream lambda nil with-buffer funcall shell-callback-function file-name-directory buffer-file-name shell-program shell-program-args set-process-connection-type pty start-process] 8))

(defun shell-default-callback nil (jade-byte-code "þ (	ü û '	ü û 'Jü &IF Hû 'I	" [shell-process insert process-stopped-p "
Process suspended..." process-running-p "restarted
" "
Process terminated
"] 3))

(defun shell-bol nil 72904 (interactive) (jade-byte-code "	ü 	û 	" [regexp-match-line shell-prompt-regexp goto-char match-end line-start] 2))

(defun shell-del-or-eof (count) 72967 (interactive "p") (jade-byte-code "`ü û 	" [cursor-pos buffer-end shell-send-eof delete-char count] 2))

(defun shell-enter-line nil 73103 (interactive) (jade-byte-code "lü 	û lD	ü û I66		
ibü Gþ 4H	H
F&û d

F&HHH	H
E" [shell-process insert "
" regexp-match-line shell-prompt-regexp match-end line-start cmdstr start pos-line buffer-length shell-whole-line goto-line-end copy-area cursor-pos next-line 1 set-auto-mark goto-buffer-end write] 5))

(defun shell-send-intr nil (interactive) (jade-byte-code "
" [write shell-process 3] 3))

(defun shell-send-susp nil (interactive) (jade-byte-code "
" [write shell-process 26] 3))

(defun shell-send-eof nil (interactive) (jade-byte-code "
" [write shell-process 4] 3))

(defun shell-send-quit nil (interactive) (jade-byte-code "
" [write shell-process 28] 3))

(defun shell-next-prompt nil (interactive) (jade-byte-code "
þ 	" [find-next-regexp shell-prompt-regexp line-end goto-char match-end] 3))

(defun shell-prev-prompt nil (interactive) (jade-byte-code "

þ 	" [find-prev-regexp shell-prompt-regexp prev-char 1 line-start goto-char match-end] 5))

(defun shell nil 73253 (interactive) (jade-byte-code "D		45]ÿ ±G±Hü 8		H	I
H
IJ
HJF&Hû F	H	
HE" [get-buffer "*shell*" file-name-directory buffer-file-name dir buffer shell-process goto-buffer make-buffer set-buffer-file-name set-buffer-special mildly-special-buffer shell-mode shell-start-process] 3))
