annotate lisp/term/keyswap.el @ 13582:3c46cfae4391

(Fexecute_extended_command): Call Fwhere_is_internal just once to handle all the maps.
author Richard M. Stallman <rms@gnu.org>
date Sat, 18 Nov 1995 15:58:54 +0000
parents 8fb60be055ec
children 23cc3f54e536
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2138
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
1 ;; keyswap.el --- swap BS and DEL keys
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
2
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
3 ;; Author: Eric S. Raymond <esr@snark.thyrsus.com>
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
4 ;; Keywords: terminals
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
5
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
6 ;; Copyright (C) 1992 Free Software Foundation, Inc.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
7
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
9
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
13 ;; any later version.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
14
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
18 ;; GNU General Public License for more details.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
19
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
22 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
23
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
24 ;;; Commentary:
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
25
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
26 ;;; This package is meant to be called by other terminal packages.
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
27
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
28 ;;; Code:
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
29
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
30 (let ((the-table (make-string 128 0)))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
31 (let ((i 0))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
32 (while (< i 128)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
33 (aset the-table i i)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
34 (setq i (1+ i))))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
35 ;; Swap ^H and DEL
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
36 (aset the-table ?\177 ?\^h)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
37 (aset the-table ?\^h ?\177)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
38 (setq keyboard-translate-table the-table))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
39
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
40 ;;; keyswap.el ends here