Mercurial > emacs
diff lisp/flow-ctrl.el @ 669:4c64c671426f
*** empty log message ***
| author | Richard M. Stallman <rms@gnu.org> |
|---|---|
| date | Mon, 01 Jun 1992 08:28:58 +0000 |
| parents | 08eb386dd0f3 |
| children | 7a9b4ea68565 |
line wrap: on
line diff
--- a/lisp/flow-ctrl.el Sun May 31 21:13:26 1992 +0000 +++ b/lisp/flow-ctrl.el Mon Jun 01 08:28:58 1992 +0000 @@ -37,8 +37,7 @@ ;;; won't work outside of UNIX-like environments. (defun evade-flow-control () - "Replace C-s with C-\ and C-q with C-^ and tell emacs to pass C-s -and C-q characters to OS." + "Enable use of flow control; let user type C-s as C-\ and C-q as C-^." (interactive) ;; Tell emacs to pass C-s and C-q to OS. (set-input-mode nil t) @@ -65,19 +64,24 @@ ": use C-\\ for C-s and use C-^ for C-q.")) (sleep-for 2)) ; Give user a chance to see message. -(defun memstr= (e s) +(defun evade-flow-control-memstr= (e s) (cond ((null s) nil) ((string= e (car s)) t) - (t (memstr= e (cdr s))))) + (t (evade-flow-control-memstr= e (cdr s))))) ;;;###autoload (defun evade-flow-control-on (&rest losing-terminal-types) + "Enable flow control if using one of a specified set of terminal types. +Use `(evade-flow-control-on "vt100" "h19")' to enable flow control +on VT-100 and H19 terminals. When flow control is enabled, +you must type C-\ to get the effect of a C-s, and type C-^ +to get the effect of a C-q." (let ((term (getenv "TERM")) hyphend) ;; Strip off hyphen and what follows (while (setq hyphend (string-match "[-_][^-_]+$" term)) (setq term (substring term 0 hyphend))) - (and (memstr= term losing-terminal-types) (evade-flow-control))) + (and (evade-flow-control-memstr= term losing-terminal-types) (evade-flow-control))) ) (provide 'flow-ctrl)
