Mercurial > emacs
annotate lisp/telnet.el @ 18092:8428d56cd207
(smtpmail-via-smtp): Recognize XVRB as a synonym for
VERB and XONE as a synonym for ONEX.
(smtpmail-read-response): Add "%s" to `message' calls to avoid
problems with percent signs in strings.
(smtpmail-read-response): Return all lines of the
response text as a list of strings. Formerly only the first line
was returned. This is insufficient when one wants to parse
e.g. an EHLO response.
Ignore responses starting with "0". This is necessary to support
the VERB SMTP extension.
(smtpmail-via-smtp): Try EHLO and find out which SMTP service
extensions the receiving mailer supports.
Issue the ONEX and XUSR commands if the corresponding extensions
are supported.
Issue VERB if supported and `smtpmail-debug-info' is non-nil.
Add SIZE attribute to MAIL FROM: command if SIZE extension is
supported.
Add code that could set the BODY= attribute to MAIL FROM: if the
receiving mailer supports 8BITMIME. This is currently disabled,
since doing it right might involve adding MIME headers to, and in
some cases reencoding, the message.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 01 Jun 1997 22:24:22 +0000 |
parents | 132278ebdbc9 |
children | 20ff67539cfb |
rev | line source |
---|---|
658
7cbd4fcd8b0f
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
584
diff
changeset
|
1 ;;; telnet.el --- run a telnet session from within an Emacs buffer |
775
1ca26ccad38e
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
707
diff
changeset
|
2 |
14169 | 3 ;; Copyright (C) 1985, 1988, 1992, 1994 Free Software Foundation, Inc. |
841 | 4 |
775
1ca26ccad38e
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
707
diff
changeset
|
5 ;; Author: William F. Schelter |
1ca26ccad38e
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
707
diff
changeset
|
6 ;; Maintainer: FSF |
48 | 7 |
8 ;; This file is part of GNU Emacs. | |
9 | |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
707 | 12 ;; the Free Software Foundation; either version 2, or (at your option) |
48 | 13 ;; any later version. |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
14169 | 21 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
23 ;; Boston, MA 02111-1307, USA. | |
48 | 24 |
2562 | 25 ;;; Commentary: |
26 | |
27 ;; This mode is intended to be used for telnet or rsh to a remode host; | |
28 ;; `telnet' and `rsh' are the two entry points. Multiple telnet or rsh | |
29 ;; sessions are supported. | |
30 ;; | |
31 ;; Normally, input is sent to the remote telnet/rsh line-by-line, as you | |
32 ;; type RET or LFD. C-c C-c sends a C-c to the remote immediately; | |
33 ;; C-c C-z sends C-z immediately. C-c C-q followed by any character | |
34 ;; sends that character immediately. | |
35 ;; | |
36 ;; All RET characters are filtered out of the output coming back from the | |
37 ;; remote system. The mode tries to do other useful translations based | |
38 ;; on what it sees coming back from the other system before the password | |
39 ;; query. It knows about UNIX, ITS, TOPS-20 and Explorer systems. | |
40 | |
775
1ca26ccad38e
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
707
diff
changeset
|
41 ;;; Code: |
48 | 42 |
2562 | 43 ;; to do fix software types for lispm: |
44 ;; to eval current expression. Also to try to send escape keys correctly. | |
45 ;; essentially we'll want the rubout-handler off. | |
48 | 46 |
47 ;; filter is simplistic but should be okay for typical shell usage. | |
48 ;; needs hacking if it is going to deal with asynchronous output in a sane | |
49 ;; manner | |
50 | |
51 (require 'comint) | |
707 | 52 |
48 | 53 (defvar telnet-new-line "\r") |
54 (defvar telnet-mode-map nil) | |
5273
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
55 (defvar telnet-prompt-pattern "^[^#$%>\n]*[#$%>] *") |
48 | 56 (defvar telnet-replace-c-g nil) |
57 (make-variable-buffer-local | |
58 (defvar telnet-remote-echoes t | |
59 "True if the telnet process will echo input.")) | |
60 (make-variable-buffer-local | |
61 (defvar telnet-interrupt-string "\C-c" "String sent by C-c.")) | |
62 | |
63 (defvar telnet-count 0 | |
5142
2d8ae66d6906
(telnet-rsh-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
4828
diff
changeset
|
64 "Number of output strings from telnet process while looking for password.") |
2d8ae66d6906
(telnet-rsh-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
4828
diff
changeset
|
65 (make-variable-buffer-local 'telnet-count) |
2d8ae66d6906
(telnet-rsh-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
4828
diff
changeset
|
66 |
8756
1c9ee34d9094
(telnet-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
67 (defvar telnet-program "telnet" |
1c9ee34d9094
(telnet-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
68 "Program to run to open a telnet connection.") |
1c9ee34d9094
(telnet-program): New variable.
Richard M. Stallman <rms@gnu.org>
parents:
7300
diff
changeset
|
69 |
48 | 70 (defvar telnet-initial-count -50 |
1577 | 71 "Initial value of `telnet-count'. Should be set to the negative of the |
48 | 72 number of terminal writes telnet will make setting up the host connection.") |
73 | |
74 (defvar telnet-maximum-count 4 | |
1577 | 75 "Maximum value `telnet-count' can have. |
48 | 76 After this many passes, we stop looking for initial setup data. |
77 Should be set to the number of terminal writes telnet will make | |
6402
33dec33f382d
(telnet-maximum-count): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents:
6156
diff
changeset
|
78 rejecting one login and prompting again for a username and password.") |
48 | 79 |
80 (defun telnet-interrupt-subjob () | |
81 (interactive) | |
82 "Interrupt the program running through telnet on the remote host." | |
83 (send-string nil telnet-interrupt-string)) | |
84 | |
85 (defun telnet-c-z () | |
86 (interactive) | |
87 (send-string nil "\C-z")) | |
88 | |
89 (defun send-process-next-char () | |
90 (interactive) | |
91 (send-string nil | |
92 (char-to-string | |
93 (let ((inhibit-quit t)) | |
94 (prog1 (read-char) | |
95 (setq quit-flag nil)))))) | |
96 | |
97 ; initialization on first load. | |
98 (if telnet-mode-map | |
99 nil | |
8887
9a6dc53633aa
(telnet-mode-map): Inherit from comint-mode-map.
Richard M. Stallman <rms@gnu.org>
parents:
8876
diff
changeset
|
100 (setq telnet-mode-map (nconc (make-sparse-keymap) comint-mode-map)) |
48 | 101 (define-key telnet-mode-map "\C-m" 'telnet-send-input) |
102 ; (define-key telnet-mode-map "\C-j" 'telnet-send-input) | |
103 (define-key telnet-mode-map "\C-c\C-q" 'send-process-next-char) | |
104 (define-key telnet-mode-map "\C-c\C-c" 'telnet-interrupt-subjob) | |
105 (define-key telnet-mode-map "\C-c\C-z" 'telnet-c-z)) | |
106 | |
107 ;;maybe should have a flag for when have found type | |
108 (defun telnet-check-software-type-initialize (string) | |
109 "Tries to put correct initializations in. Needs work." | |
110 (let ((case-fold-search t)) | |
111 (cond ((string-match "unix" string) | |
112 (setq telnet-prompt-pattern comint-prompt-regexp) | |
113 (setq telnet-new-line "\n")) | |
114 ((string-match "tops-20" string) ;;maybe add telnet-replace-c-g | |
115 (setq telnet-prompt-pattern "[@>]*")) | |
116 ((string-match "its" string) | |
5273
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
117 (setq telnet-prompt-pattern "^[^*>\n]*[*>] *")) |
48 | 118 ((string-match "explorer" string) ;;explorer telnet needs work |
119 (setq telnet-replace-c-g ?\n)))) | |
120 (setq comint-prompt-regexp telnet-prompt-pattern)) | |
121 | |
122 (defun telnet-initial-filter (proc string) | |
123 ;For reading up to and including password; also will get machine type. | |
16847
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
124 (let ((case-fold-search t)) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
125 (cond ((string-match "No such host" string) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
126 (kill-buffer (process-buffer proc)) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
127 (error "No such host")) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
128 ((string-match "passw" string) |
48 | 129 (telnet-filter proc string) |
16847
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
130 (setq telnet-count 0) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
131 (send-string proc (concat (comint-read-noecho "Password: " t) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
132 telnet-new-line))) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
133 (t (telnet-check-software-type-initialize string) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
134 (telnet-filter proc string) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
135 (cond ((> telnet-count telnet-maximum-count) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
136 (set-process-filter proc 'telnet-filter)) |
76159aa277eb
(telnet-initial-filter): Fix error message.
Richard M. Stallman <rms@gnu.org>
parents:
14169
diff
changeset
|
137 (t (setq telnet-count (1+ telnet-count)))))))) |
48 | 138 |
3562
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
139 ;; Identical to comint-simple-send, except that it sends telnet-new-line |
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
140 ;; instead of "\n". |
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
141 (defun telnet-simple-send (proc string) |
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
142 (comint-send-string proc string) |
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
143 (comint-send-string proc telnet-new-line)) |
ec0c98304624
(telnet-simple-send): New function.
Richard M. Stallman <rms@gnu.org>
parents:
2562
diff
changeset
|
144 |
48 | 145 (defun telnet-filter (proc string) |
5273
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
146 (save-excursion |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
147 (set-buffer (process-buffer proc)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
148 (let* ((last-insertion (marker-position (process-mark proc))) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
149 (delta (- (point) last-insertion)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
150 (ie (and comint-last-input-end |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
151 (marker-position comint-last-input-end))) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
152 (w (get-buffer-window (current-buffer))) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
153 (ws (and w (window-start w)))) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
154 (goto-char last-insertion) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
155 (insert-before-markers string) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
156 (set-marker (process-mark proc) (point)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
157 (if ws (set-window-start w ws t)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
158 (if ie (set-marker comint-last-input-end ie)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
159 (while (progn (skip-chars-backward "^\C-m" last-insertion) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
160 (> (point) last-insertion)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
161 (delete-region (1- (point)) (point))) |
48 | 162 (goto-char (process-mark proc)) |
5273
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
163 (and telnet-replace-c-g |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
164 (subst-char-in-region last-insertion (point) ?\C-g |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
165 telnet-replace-c-g t)) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
166 ;; If point is after the insertion place, move it |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
167 ;; along with the text. |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
168 (if (> delta 0) |
59fee4967e01
(telnet-filter): Rewrite, taken mostly from Lucid.
Richard M. Stallman <rms@gnu.org>
parents:
5142
diff
changeset
|
169 (goto-char (+ (process-mark proc) delta)))))) |
48 | 170 |
171 (defun telnet-send-input () | |
172 (interactive) | |
707 | 173 ; (comint-send-input telnet-new-line telnet-remote-echoes) |
174 (comint-send-input) | |
175 (if telnet-remote-echoes | |
176 (delete-region comint-last-input-start | |
177 comint-last-input-end))) | |
48 | 178 |
10980
aa3f323f1dea
Fix typos in previous change.
Richard M. Stallman <rms@gnu.org>
parents:
10979
diff
changeset
|
179 ;;;###autoload (add-hook 'same-window-regexps "\\*telnet-.*\\*\\(\\|<[0-9]+>\\)") |
10979
a3de1a78a79f
(rsh, telnet): Use pop-to-buffer.
Richard M. Stallman <rms@gnu.org>
parents:
10452
diff
changeset
|
180 |
258 | 181 ;;;###autoload |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
182 (defun telnet (host) |
48 | 183 "Open a network login connection to host named HOST (a string). |
8876
1f90adde8d6c
(telnet): Use name *telnet-HOST*, not *HOST-telnet*.
Richard M. Stallman <rms@gnu.org>
parents:
8756
diff
changeset
|
184 Communication with HOST is recorded in a buffer `*telnet-HOST*'. |
48 | 185 Normally input is edited in Emacs and sent a line at a time." |
186 (interactive "sOpen telnet connection to host: ") | |
6156
3aafcde7e7c4
(telnet): Use chars in comint-delimiter-argument-list.
Richard M. Stallman <rms@gnu.org>
parents:
5549
diff
changeset
|
187 (let* ((comint-delimiter-argument-list '(?\ ?\t)) |
8876
1f90adde8d6c
(telnet): Use name *telnet-HOST*, not *HOST-telnet*.
Richard M. Stallman <rms@gnu.org>
parents:
8756
diff
changeset
|
188 (name (concat "telnet-" (comint-arguments host 0 nil) )) |
10129
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
189 (buffer (get-buffer (concat "*" name "*"))) |
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
190 process) |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
191 (if (and buffer (get-buffer-process buffer)) |
10979
a3de1a78a79f
(rsh, telnet): Use pop-to-buffer.
Richard M. Stallman <rms@gnu.org>
parents:
10452
diff
changeset
|
192 (pop-to-buffer (concat "*" name "*")) |
a3de1a78a79f
(rsh, telnet): Use pop-to-buffer.
Richard M. Stallman <rms@gnu.org>
parents:
10452
diff
changeset
|
193 (pop-to-buffer (make-comint name telnet-program)) |
10129
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
194 (setq process (get-buffer-process (current-buffer))) |
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
195 (set-process-filter process 'telnet-initial-filter) |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
196 ;; Don't send the `open' cmd till telnet is ready for it. |
10129
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
197 (accept-process-output process) |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
198 (erase-buffer) |
10129
c2fa03370e73
(telnet): Don't make assumptions about process name.
Richard M. Stallman <rms@gnu.org>
parents:
8887
diff
changeset
|
199 (send-string process (concat "open " host "\n")) |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
200 (telnet-mode) |
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
201 (setq comint-input-sender 'telnet-simple-send) |
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
202 (setq telnet-count telnet-initial-count)))) |
48 | 203 |
17648
132278ebdbc9
(telnet-mode): Add a mode-class property.
Richard M. Stallman <rms@gnu.org>
parents:
16847
diff
changeset
|
204 (put 'telnet-mode 'mode-class 'special) |
132278ebdbc9
(telnet-mode): Add a mode-class property.
Richard M. Stallman <rms@gnu.org>
parents:
16847
diff
changeset
|
205 |
48 | 206 (defun telnet-mode () |
2562 | 207 "This mode is for using telnet (or rsh) from a buffer to another host. |
1577 | 208 It has most of the same commands as comint-mode. |
48 | 209 There is a variable ``telnet-interrupt-string'' which is the character |
210 sent to try to stop execution of a job on the remote host. | |
211 Data is sent to the remote host when RET is typed. | |
212 | |
213 \\{telnet-mode-map} | |
2562 | 214 " |
48 | 215 (interactive) |
216 (comint-mode) | |
217 (setq major-mode 'telnet-mode | |
218 mode-name "Telnet" | |
219 comint-prompt-regexp telnet-prompt-pattern) | |
220 (use-local-map telnet-mode-map) | |
221 (run-hooks 'telnet-mode-hook)) | |
222 | |
10987
1c47aad4c1c7
(rsh): Name the buffer *rsh-HOST*.
Richard M. Stallman <rms@gnu.org>
parents:
10980
diff
changeset
|
223 ;;;###autoload (add-hook 'same-window-regexps "\\*rsh-[^-]*\\*\\(\\|<[0-9]*>\\)") |
10979
a3de1a78a79f
(rsh, telnet): Use pop-to-buffer.
Richard M. Stallman <rms@gnu.org>
parents:
10452
diff
changeset
|
224 |
2562 | 225 ;;;###autoload |
4432
f00905dd8a41
(telnet): If we already have a telnet to HOST, just switch buffers.
Richard M. Stallman <rms@gnu.org>
parents:
3562
diff
changeset
|
226 (defun rsh (host) |
2562 | 227 "Open a network login connection to host named HOST (a string). |
10987
1c47aad4c1c7
(rsh): Name the buffer *rsh-HOST*.
Richard M. Stallman <rms@gnu.org>
parents:
10980
diff
changeset
|
228 Communication with HOST is recorded in a buffer `*rsh-HOST*'. |
2562 | 229 Normally input is edited in Emacs and sent a line at a time." |
230 (interactive "sOpen rsh connection to host: ") | |
231 (require 'shell) | |
10987
1c47aad4c1c7
(rsh): Name the buffer *rsh-HOST*.
Richard M. Stallman <rms@gnu.org>
parents:
10980
diff
changeset
|
232 (let ((name (concat "rsh-" host ))) |
10979
a3de1a78a79f
(rsh, telnet): Use pop-to-buffer.
Richard M. Stallman <rms@gnu.org>
parents:
10452
diff
changeset
|
233 (pop-to-buffer (make-comint name remote-shell-program nil host)) |
2562 | 234 (set-process-filter (get-process name) 'telnet-initial-filter) |
235 (telnet-mode) | |
236 (setq telnet-count -16))) | |
237 | |
584 | 238 (provide 'telnet) |
239 | |
658
7cbd4fcd8b0f
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
584
diff
changeset
|
240 ;;; telnet.el ends here |