;;; rlogin.el --- remote login interface
-;; Copyright (C) 1992, 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
+;; Copyright (C) 1992-1995, 1997, 1998 Free Software Foundation, Inc.
;; Author: Noah Friedman
-;; Maintainer: Noah Friedman <friedman@prep.ai.mit.edu>
+;; Maintainer: Noah Friedman <friedman@splode.com>
;; Keywords: unix, comm
-;; $Id: rlogin.el,v 1.39 1997/05/05 01:00:35 rms Exp $
+;; $Id: rlogin.el,v 1.43 1998/09/11 01:22:53 friedman Exp $
;; This file is part of GNU Emacs.
:group 'processes
:group 'unix)
-
(defcustom rlogin-program "rlogin"
"*Name of program to invoke rlogin"
:type 'string
Generally it is better not to waste ptys on systems which have a static
number of them. On the other hand, some implementations of `rlogin' assume
a pty is being used, and errors will result from using a pipe instead."
- :type '(choice (const :tag "ptys" t)
- (const :tag "pipes" nil))
+ :type '(choice (const :tag "pipes" nil)
+ (other :tag "ptys" t))
:group 'rlogin)
(defcustom rlogin-directory-tracking-mode 'local
re-synching of directories."
:type '(choice (const :tag "off" nil)
(const :tag "ftp" t)
- (const :tag "local" local))
+ (other :tag "local" local))
:group 'rlogin)
(make-variable-buffer-local 'rlogin-directory-tracking-mode)
;; buffer from a previous exited process.
(set-marker (process-mark proc) (point-max))
- ;; comint-output-filter-functions is just like a hook, except that the
- ;; functions in that list are passed arguments. add-hook serves well
- ;; enough for modifying it.
+ ;; comint-output-filter-functions is treated like a hook: it is
+ ;; processed via run-hooks or run-hooks-with-args in later versions
+ ;; of emacs.
;; comint-output-filter-functions should already have a
;; permanent-local property, at least in emacs 19.27 or later.
- (if (fboundp 'make-local-hook)
- (make-local-hook 'comint-output-filter-functions)
- (make-local-variable 'comint-output-filter-functions))
- (add-hook 'comint-output-filter-functions 'rlogin-carriage-filter)
+ (cond
+ ((fboundp 'make-local-hook)
+ (make-local-hook 'comint-output-filter-functions)
+ (add-hook 'comint-output-filter-functions 'rlogin-carriage-filter
+ nil t))
+ (t
+ (make-local-variable 'comint-output-filter-functions)
+ (add-hook 'comint-output-filter-functions 'rlogin-carriage-filter)))
(rlogin-mode)
(setq list (cons (substring line (match-beginning 0) (match-end 0))
list))
(setq posn (match-end 0)))
- (store-match-data (match-data))
+ (set-match-data (match-data))
(nreverse list)))
(defun rlogin-carriage-filter (string)
(defun rlogin-send-Ctrl-C ()
(interactive)
- (send-string nil "\C-c"))
+ (process-send-string nil "\C-c"))
(defun rlogin-send-Ctrl-D ()
(interactive)
- (send-string nil "\C-d"))
+ (process-send-string nil "\C-d"))
(defun rlogin-send-Ctrl-Z ()
(interactive)
- (send-string nil "\C-z"))
+ (process-send-string nil "\C-z"))
(defun rlogin-send-Ctrl-backslash ()
(interactive)
- (send-string nil "\C-\\"))
+ (process-send-string nil "\C-\\"))
(defun rlogin-delchar-or-send-Ctrl-D (arg)
"\