From: Lars Ingebrigtsen Date: Wed, 2 Feb 2022 18:39:29 +0000 (+0100) Subject: Move vt-control and vt100-led to obsolete (bug#37562) X-Git-Tag: emacs-29.0.90~2577 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=0ef371cb12e4b2f42444afeaeb456665aad37e2b;p=emacs.git Move vt-control and vt100-led to obsolete (bug#37562) --- diff --git a/lisp/obsolete/vt-control.el b/lisp/obsolete/vt-control.el new file mode 100644 index 00000000000..b80d3505b30 --- /dev/null +++ b/lisp/obsolete/vt-control.el @@ -0,0 +1,107 @@ +;;; vt-control.el --- Common VTxxx control functions -*- lexical-binding:t -*- + +;; Copyright (C) 1993-1994, 2001-2022 Free Software Foundation, Inc. + +;; Author: Rob Riepel +;; Keywords: terminals + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;; The functions contained in this file send various VT control codes +;; to the terminal where Emacs is running. The following functions are +;; available. + +;; Function Action + +;; vt-wide set wide screen (132 characters) +;; vt-narrow set narrow screen (80 characters) +;; vt-toggle-screen toggle wide/narrow screen +;; vt-keypad-on set applications keypad on +;; vt-keypad-off set applications keypad off +;; vt-numlock toggle applications keypad on/off + +;;; Usage: + +;; To use enable these functions, simply load this file. + +;; Note: vt-control makes no effort to determine how the terminal is +;; initially set. It assumes the terminal starts with a width +;; of 80 characters and the applications keypad enabled. Nor +;; does vt-control try to restore the terminal when emacs is +;; killed or suspended. + +;;; Code: + + +;;; Global variables + +(defvar vt-applications-keypad-p t + "If non-nil, keypad is in applications mode.") + +(defvar vt-wide-p nil + "If non-nil, the screen is 132 characters wide.") + + +;;; Screen width functions. + +(defun vt-wide nil + "Set the screen 132 characters wide." + (interactive) + (send-string-to-terminal "\e[?3h") + (set-frame-width (selected-frame) 132) + (setq vt-wide-p t)) + +(defun vt-narrow nil + "Set the screen 80 characters wide." + (interactive) + (send-string-to-terminal "\e[?3l") + (set-frame-width (selected-frame) 80) + (setq vt-wide-p nil)) + +(defun vt-toggle-screen nil + "Toggle between 80 and 132 character screen width." + (interactive) + (if vt-wide-p (vt-narrow) (vt-wide))) + + +;;; Applications keypad functions. + +(defun vt-keypad-on (&optional tell) + "Turn on the VT applications keypad." + (interactive "p") + (send-string-to-terminal "\e=") + (setq vt-applications-keypad-p t) + (if tell (message "Applications keypad enabled."))) + +(defun vt-keypad-off (&optional tell) + "Turn off the VT applications keypad." + (interactive "p") + (send-string-to-terminal "\e>") + (setq vt-applications-keypad-p nil) + (if tell (message "Applications keypad disabled."))) + +(defun vt-numlock (&optional tell) + "Toggle VT application keypad on and off." + (interactive "p") + (if vt-applications-keypad-p + (vt-keypad-off tell) + (vt-keypad-on tell))) + +(provide 'vt-control) + +;;; vt-control.el ends here diff --git a/lisp/obsolete/vt100-led.el b/lisp/obsolete/vt100-led.el new file mode 100644 index 00000000000..a6a256a6a74 --- /dev/null +++ b/lisp/obsolete/vt100-led.el @@ -0,0 +1,68 @@ +;;; vt100-led.el --- functions for LED control on VT-100 terminals & clones -*- lexical-binding:t -*- + +;; Copyright (C) 1988, 2001-2022 Free Software Foundation, Inc. + +;; Author: Howard Gayle +;; Maintainer: emacs-devel@gnu.org +;; Keywords: hardware + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;;; Code: + +(defvar led-state (make-vector 5 nil) + "The internal state of the LEDs. Choices are nil, t, `flash'. +Element 0 is not used.") + +(defun led-flash (l) + "Flash LED l." + (aset led-state l 'flash) + (led-update)) + +(defun led-off (&optional l) + "Turn off vt100 led number L. With no argument, turn them all off." + (interactive "P") + (if l + (aset led-state (prefix-numeric-value l) nil) + (fillarray led-state nil)) + (led-update)) + +(defun led-on (l) + "Turn on LED L." + (aset led-state l t) + (led-update)) + +(defun led-update () + "Update the terminal's LEDs to reflect the internal state." + (let ((f "\e[?0") ; String to flash. + (o "\e[0") ; String for steady on. + (l 1)) ; Current LED number. + (while (/= l 5) + (let ((s (aref led-state l))) + (cond + ((eq s 'flash) + (setq f (concat f ";" (int-to-string l)))) + (s + (setq o (concat o ";" (int-to-string l)))))) + (setq l (1+ l))) + (setq o (concat o "q" f "t")) + (send-string-to-terminal o))) + +(provide 'vt100-led) + +;;; vt100-led.el ends here diff --git a/lisp/vt-control.el b/lisp/vt-control.el deleted file mode 100644 index b80d3505b30..00000000000 --- a/lisp/vt-control.el +++ /dev/null @@ -1,107 +0,0 @@ -;;; vt-control.el --- Common VTxxx control functions -*- lexical-binding:t -*- - -;; Copyright (C) 1993-1994, 2001-2022 Free Software Foundation, Inc. - -;; Author: Rob Riepel -;; Keywords: terminals - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see . - -;;; Commentary: - -;; The functions contained in this file send various VT control codes -;; to the terminal where Emacs is running. The following functions are -;; available. - -;; Function Action - -;; vt-wide set wide screen (132 characters) -;; vt-narrow set narrow screen (80 characters) -;; vt-toggle-screen toggle wide/narrow screen -;; vt-keypad-on set applications keypad on -;; vt-keypad-off set applications keypad off -;; vt-numlock toggle applications keypad on/off - -;;; Usage: - -;; To use enable these functions, simply load this file. - -;; Note: vt-control makes no effort to determine how the terminal is -;; initially set. It assumes the terminal starts with a width -;; of 80 characters and the applications keypad enabled. Nor -;; does vt-control try to restore the terminal when emacs is -;; killed or suspended. - -;;; Code: - - -;;; Global variables - -(defvar vt-applications-keypad-p t - "If non-nil, keypad is in applications mode.") - -(defvar vt-wide-p nil - "If non-nil, the screen is 132 characters wide.") - - -;;; Screen width functions. - -(defun vt-wide nil - "Set the screen 132 characters wide." - (interactive) - (send-string-to-terminal "\e[?3h") - (set-frame-width (selected-frame) 132) - (setq vt-wide-p t)) - -(defun vt-narrow nil - "Set the screen 80 characters wide." - (interactive) - (send-string-to-terminal "\e[?3l") - (set-frame-width (selected-frame) 80) - (setq vt-wide-p nil)) - -(defun vt-toggle-screen nil - "Toggle between 80 and 132 character screen width." - (interactive) - (if vt-wide-p (vt-narrow) (vt-wide))) - - -;;; Applications keypad functions. - -(defun vt-keypad-on (&optional tell) - "Turn on the VT applications keypad." - (interactive "p") - (send-string-to-terminal "\e=") - (setq vt-applications-keypad-p t) - (if tell (message "Applications keypad enabled."))) - -(defun vt-keypad-off (&optional tell) - "Turn off the VT applications keypad." - (interactive "p") - (send-string-to-terminal "\e>") - (setq vt-applications-keypad-p nil) - (if tell (message "Applications keypad disabled."))) - -(defun vt-numlock (&optional tell) - "Toggle VT application keypad on and off." - (interactive "p") - (if vt-applications-keypad-p - (vt-keypad-off tell) - (vt-keypad-on tell))) - -(provide 'vt-control) - -;;; vt-control.el ends here diff --git a/lisp/vt100-led.el b/lisp/vt100-led.el deleted file mode 100644 index a6a256a6a74..00000000000 --- a/lisp/vt100-led.el +++ /dev/null @@ -1,68 +0,0 @@ -;;; vt100-led.el --- functions for LED control on VT-100 terminals & clones -*- lexical-binding:t -*- - -;; Copyright (C) 1988, 2001-2022 Free Software Foundation, Inc. - -;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org -;; Keywords: hardware - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see . - -;;; Commentary: - -;;; Code: - -(defvar led-state (make-vector 5 nil) - "The internal state of the LEDs. Choices are nil, t, `flash'. -Element 0 is not used.") - -(defun led-flash (l) - "Flash LED l." - (aset led-state l 'flash) - (led-update)) - -(defun led-off (&optional l) - "Turn off vt100 led number L. With no argument, turn them all off." - (interactive "P") - (if l - (aset led-state (prefix-numeric-value l) nil) - (fillarray led-state nil)) - (led-update)) - -(defun led-on (l) - "Turn on LED L." - (aset led-state l t) - (led-update)) - -(defun led-update () - "Update the terminal's LEDs to reflect the internal state." - (let ((f "\e[?0") ; String to flash. - (o "\e[0") ; String for steady on. - (l 1)) ; Current LED number. - (while (/= l 5) - (let ((s (aref led-state l))) - (cond - ((eq s 'flash) - (setq f (concat f ";" (int-to-string l)))) - (s - (setq o (concat o ";" (int-to-string l)))))) - (setq l (1+ l))) - (setq o (concat o "q" f "t")) - (send-string-to-terminal o))) - -(provide 'vt100-led) - -;;; vt100-led.el ends here