;ELC ;;; Compiled by cyd@localhost on Mon Apr 23 22:20:56 2007 ;;; from file /home/cyd/emacs/lisp/kermit.el ;;; in Emacs version 22.0.99 ;;; 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 "`kermit.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'shell) #@23 *Kermit's escape char (defvar kermit-esc-char "" (#$ . -576)) #@65 For sending escape sequences to a kermit running in shell mode. (defalias 'kermit-esc #[nil "\301\302p!\303\304 !P\"\207" [kermit-esc-char process-send-string get-buffer-process char-to-string read-char] 5 (#$ . 645) nil]) #@57 Send an arbitrary character to a program in shell mode. (defalias 'kermit-send-char #[nil "\300\301p!\302\303 !\"\207" [process-send-string get-buffer-process char-to-string read-char] 4 (#$ . 875) nil]) (byte-code "\301\302\303#\210\301\304\305#\210\301\306\303#\207" [shell-mode-map define-key "" kermit-esc "" kermit-send-char "\\"] 4) #@66 Like \[comint-send-input] but end the line with carriage-return. (defalias 'kermit-send-input-cr #[nil "\300 \210\301\302p!\303\"\207" [comint-send-input comint-send-string get-buffer-process " "] 3 (#$ . 1227) nil]) (define-key shell-mode-map "\n" 'kermit-send-input-cr) #@180 Make RETURN end the line with carriage-return and LFD end it with a newline. This is useful for talking to other systems on which carriage-return is the normal way to end a line. (defalias 'kermit-default-cr #[nil "\301\302\303#\210\301\304\305#\207" [shell-mode-map define-key " " kermit-send-input-cr "\n" comint-send-input] 4 (#$ . 1506) nil]) #@148 Make RETURN end the line with a newline char. This is the default state. In this state, use LFD to send a line and end it with a carriage-return. (defalias 'kermit-default-nl #[nil "\301\302\303#\210\301\304\305#\207" [shell-mode-map define-key "\n" kermit-send-input-cr " " comint-send-input] 4 (#$ . 1862) nil]) #@49 Strip ^M and ^@ characters from process output. (defalias 'kermit-clean-filter #[(proc str) "\212\303!\304!q\210 b\210\305\n!\210\306\307 \310#\205 \311\312!\210\202*\207" [proc beg str process-mark process-buffer insert-before-markers re-search-backward "[ ]+" t replace-match ""] 4 (#$ . 2185)]) #@158 Delete all null characters and ^M's from the kermit output. Note that another (perhaps better) way to do this is to use the command `kermit | tr -d '\015''. (defalias 'kermit-clean-on #[nil "\300\301p!\302\"\207" [set-process-filter get-buffer-process kermit-clean-filter] 3 (#$ . 2497) nil]) #@50 Cancel a previous kermit-clean-shell-on command. (defalias 'kermit-clean-off #[nil "\300\301p!\302\"\207" [set-process-filter get-buffer-process nil] 3 (#$ . 2796) nil]) (provide 'kermit)