# HG changeset patch # User Karl Heuer # Date 803086277 0 # Node ID d10ef5c093ce036008c5c031a126ac6632b9a238 # Parent a2c1cc17593f8faa47f3f9966b39975d5c183135 (comint-mode): Use make-local-hook. (comint-send-input, comint-output-filter): Use run-hook-with-args. (comint-dynamic-complete): Use run-hook-with-args-until-success. diff -r a2c1cc17593f -r d10ef5c093ce lisp/comint.el --- a/lisp/comint.el Tue Jun 13 21:47:34 1995 +0000 +++ b/lisp/comint.el Tue Jun 13 23:31:17 1995 +0000 @@ -123,7 +123,7 @@ ;;; comint-input-filter-functions - hook process-in-a-buffer ;;; comint-output-filter-functions - hook function modes. ;;; comint-input-filter - function ... -;;; comint-input-send - function ... +;;; comint-input-sender - function ... ;;; comint-eol-on-send - boolean ... ;;; comint-process-echoes - boolean ... ;;; comint-scroll-to-bottom-on-input - symbol For scroll behavior @@ -376,10 +376,10 @@ (make-local-variable 'comint-input-autoexpand) (make-local-variable 'comint-input-ignoredups) (make-local-variable 'comint-delimiter-argument-list) - (make-local-variable 'comint-dynamic-complete-functions) + (make-local-hook 'comint-dynamic-complete-functions) (make-local-variable 'comint-completion-fignore) (make-local-variable 'comint-get-old-input) - (make-local-variable 'comint-input-filter-functions) + (make-local-hook 'comint-input-filter-functions) (make-local-variable 'comint-input-filter) (make-local-variable 'comint-input-sender) (make-local-variable 'comint-eol-on-send) @@ -388,7 +388,7 @@ (make-local-variable 'comint-scroll-show-maximum-output) (make-local-variable 'pre-command-hook) (add-hook 'pre-command-hook 'comint-preinput-scroll-to-bottom) - (make-local-variable 'comint-output-filter-functions) + (make-local-hook 'comint-output-filter-functions) (make-local-variable 'comint-ptyp) (make-local-variable 'comint-exec-hook) (make-local-variable 'comint-process-echoes) @@ -1176,10 +1176,8 @@ (not (string-equal (ring-ref comint-input-ring 0) history)))) (ring-insert comint-input-ring history)) - (let ((functions comint-input-filter-functions)) - (while functions - (funcall (car functions) (concat input "\n")) - (setq functions (cdr functions)))) + (run-hook-with-args 'comint-input-filter-functions + (concat input "\n")) (setq comint-input-ring-index nil) ;; Update the markers before we send the input ;; in case we get output amidst sending the input. @@ -1229,10 +1227,7 @@ (narrow-to-region obeg oend) (goto-char opoint) - (let ((functions comint-output-filter-functions)) - (while functions - (funcall (car functions) string) - (setq functions (cdr functions)))) + (run-hook-with-args 'comint-output-filter-functions string) (set-buffer obuf))))) (defun comint-preinput-scroll-to-bottom () @@ -1895,9 +1890,7 @@ completion until a function returns non-nil, at which point completion is assumed to have occurred." (interactive) - (let ((functions comint-dynamic-complete-functions)) - (while (and functions (null (funcall (car functions)))) - (setq functions (cdr functions))))) + (run-hook-with-args-until-success 'comint-dynamic-complete-functions)) (defun comint-dynamic-complete-filename ()