annotate lisp/term/keyswap.el @ 46505:005d282a48ed

(decode-char): Use utf-8-translation-table-for-decode. (encode-char): Use ucs-mule-to-mule-unicode.
author Dave Love <fx@gnu.org>
date Wed, 17 Jul 2002 19:20:01 +0000
parents 8f952e921136
children 33d53d287ee4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17517
8f952e921136 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 14170
diff changeset
1 ;;; keyswap.el --- swap BS and DEL keys
2138
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
2
14170
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
3 ;; Copyright (C) 1992 Free Software Foundation, Inc.
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
4
2138
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
5 ;; Author: Eric S. Raymond <esr@snark.thyrsus.com>
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
6 ;; Keywords: terminals
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
14170
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
23 ;; Boston, MA 02111-1307, USA.
2138
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
24
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
25 ;;; Commentary:
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
26
14170
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 2138
diff changeset
27 ;; This package is meant to be called by other terminal packages.
2138
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
28
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
29 ;;; Code:
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
30
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
31 (let ((the-table (make-string 128 0)))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
32 (let ((i 0))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
33 (while (< i 128)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
34 (aset the-table i i)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
35 (setq i (1+ i))))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
36 ;; Swap ^H and DEL
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
37 (aset the-table ?\177 ?\^h)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
38 (aset the-table ?\^h ?\177)
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
39 (setq keyboard-translate-table the-table))
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
40
8fb60be055ec Initial revision
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
diff changeset
41 ;;; keyswap.el ends here