aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric S. Raymond1993-03-11 08:48:43 +0000
committerEric S. Raymond1993-03-11 08:48:43 +0000
commita97beda4865c2d3f4c2341daa9d35e6e56de9ac9 (patch)
tree43935d65457d42ce5dec0b9161ae0b4405d72915
parent864a714e6e00d0a0b9ac87403861ed1cc440d9de (diff)
downloademacs-a97beda4865c2d3f4c2341daa9d35e6e56de9ac9.tar.gz
emacs-a97beda4865c2d3f4c2341daa9d35e6e56de9ac9.zip
Added headers, changes some keycap names.
-rw-r--r--lisp/term/tvi970.el116
1 files changed, 76 insertions, 40 deletions
diff --git a/lisp/term/tvi970.el b/lisp/term/tvi970.el
index 34e7a69a085..89762bd4ffd 100644
--- a/lisp/term/tvi970.el
+++ b/lisp/term/tvi970.el
@@ -1,51 +1,85 @@
1;;; Terminal support for the Televideo 970. 1;;; tvi970.el --- terminal support for the Televideo 970
2;;; Jim Blandy <jimb@occs.cs.oberlin.edu>, January 1992 2
3;; Author: Jim Blandy <jimb@occs.cs.oberlin.edu>, January 1992
4;; Keywords: terminals
5
6;; Copyright (C) 1992 Free Software Foundation, Inc.
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
12;; the Free Software Foundation; either version 2, or (at your option)
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
21;; along with GNU Emacs; see the file COPYING. If not, write to
22;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
23
24;;; Commentary:
25
26;;; Uses the Emacs 19 terminal initialization features --- won't work with 18.
27
28;;; Code:
3 29
4
5;;; Define the escape codes sent by the function keys.
6(or (lookup-key function-key-map "\e[") 30(or (lookup-key function-key-map "\e[")
7 (define-key function-key-map "\e[" (make-keymap))) 31 (define-key function-key-map "\e[" (make-keymap)))
8(or (lookup-key function-key-map "\eO") 32;; (or (lookup-key function-key-map "\eO")
9 (define-key function-key-map "\eO" (make-keymap))) 33;; (define-key function-key-map "\eO" (make-keymap)))
10 34
11;; Miscellaneous keys 35;; Miscellaneous keys
12(mapcar (function (lambda (key-binding) 36(mapcar (function (lambda (key-binding)
13 (define-key function-key-map 37 (define-key function-key-map
14 (car key-binding) (nth 1 key-binding)))) 38 (car key-binding) (nth 1 key-binding))))
15 '(("\e[H" [home]) 39 '(
16 ("\e[Z" [backtab]) 40 ;; These are set up by termcap or terminfo
17 ("\e[i" [print]) 41 ;; ("\eOP" [kp-f1])
18 ("\e[2J" [clear]) 42 ;; ("\eOQ" [kp-f2])
19 ("\e[@" [insert]) 43 ;; ("\eOR" [kp-f3])
20 ("\e[P" [delete]) 44 ;; ("\eOS" [kp-f4])
21 ("\e[L" [insertline]) 45
22 ("\e[M" [deleteline]) 46 ;; These are set by terminfo
23 ("\e[K" [eraseline]) 47 ("\e[H" [home])
24 ("\e[J" [erasepage]) 48 ("\e[Z" [backtab])
25 ("\e[U" [page]) 49 ("\e[i" [print])
26 ("\e[g" [S-tab]) 50 ("\e[@" [insert])
27 ("\e[2N" [clearentry]) 51 ("\e[L" [insertline])
28 ("\e[2K" [S-clearentry]) 52 ("\e[M" [deleteline])
29 ("\e[E" [?\C-j]) 53
30 ("\e[g" [S-backtab]) 54 ;; These won't be set up by either
31 ("\e[?1i" [S-print]) 55 ("\eOm" [kp-subtract])
32 ("\e[4h" [S-insert]) 56 ("\eOl" [kp-separator])
33 ("\e[4l" [S-delete]) 57 ("\eOn" [kp-decimal])
34 ("\e[Q" [S-insertline]) 58 ("\eOM" [kp-enter])
35 ("\e[1Q" [S-deleteline]) 59
36 ("\e[19l" [S-eraseline]) 60 ;; These won't be set up by either either
37 ("\e[19h" [S-erasepage]) 61 ("\e[K" [eraseline]) ;; Not an X keysym
38 ("\e[V" [S-page]) 62 ("\e[J" [erasepage]) ;; Not an X keysym
39 ("\eS" [send]) 63 ("\e[2J" [clear]) ;; Not an X keysym
40 ("\e5" [S-send]) 64 ("\e[P" [delete]) ;; Not an X keysym
41 ("\eOm" [kp-subtract]) 65 ("\e[U" [page]) ;; Not an X keysym
42 ("\eOl" [kp-separator]) 66 ("\e[g" [S-tab]) ;; Not an X keysym
43 ("\eOn" [kp-decimal]) 67 ("\e[2N" [clearentry]) ;; Not an X keysym
44 ("\eOM" [enter]) 68 ("\e[2K" [S-clearentry]) ;; Not an X keysym
45 ("\eOP" [kp-f1]) 69 ("\e[E" [?\C-j]) ;; Not an X keysym
46 ("\eOQ" [kp-f2]) 70 ("\e[g" [S-backtab]) ;; Not an X keysym
47 ("\eOR" [kp-f3]) 71 ("\e[?1i" [S-print]) ;; Not an X keysym
48 ("\eOS" [kp-f4]))) 72 ("\e[4h" [S-insert]) ;; Not an X keysym
73 ("\e[4l" [S-delete]) ;; Not an X keysym
74 ("\e[Q" [S-insertline]) ;; Not an X keysym
75 ("\e[1Q" [S-deleteline]) ;; Not an X keysym
76 ("\e[19l" [S-eraseline]) ;; Not an X keysym
77 ("\e[19h" [S-erasepage]) ;; Not an X keysym
78 ("\e[V" [S-page]) ;; Not an X keysym
79 ("\eS" [send]) ;; Not an X keysym
80 ("\e5" [S-send]) ;; Not an X keysym
81 ))
82
49;; The numeric keypad keys. 83;; The numeric keypad keys.
50(let ((i 0)) 84(let ((i 0))
51 (while (< i 10) 85 (while (< i 10)
@@ -87,3 +121,5 @@ With a negative argument, select numeric keypad mode."
87 (send-string-to-terminal (if tvi970-keypad-numeric "\e=" "\e>"))) 121 (send-string-to-terminal (if tvi970-keypad-numeric "\e=" "\e>")))
88 122
89(tvi970-set-keypad-mode 1) 123(tvi970-set-keypad-mode 1)
124
125;;; tv970 ends here