diff options
| author | Richard M. Stallman | 1994-01-05 23:56:57 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1994-01-05 23:56:57 +0000 |
| commit | c8b836f65e07583447282bdb78c45d9984a81627 (patch) | |
| tree | 1e858ebb0ce051432ccec8db9db673f4de5b1633 | |
| parent | 007c61fa1ee1932d5cdb459256eeeed587640c35 (diff) | |
| download | emacs-c8b836f65e07583447282bdb78c45d9984a81627.tar.gz emacs-c8b836f65e07583447282bdb78c45d9984a81627.zip | |
entered into RCS
| -rw-r--r-- | lisp/term/internal.el | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/lisp/term/internal.el b/lisp/term/internal.el new file mode 100644 index 00000000000..164b54e4efb --- /dev/null +++ b/lisp/term/internal.el | |||
| @@ -0,0 +1,84 @@ | |||
| 1 | ;; internal.el -- setup support for PC keyboards and screens, internal terminal | ||
| 2 | |||
| 3 | ;; Copyright (C) 1993 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | ;; Author: Morten Welinder <terra@diku.dk> | ||
| 6 | ;; Version: 1,01 | ||
| 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 | ;; screen setup -- that's easy! | ||
| 25 | (standard-display-8bit 127 254) | ||
| 26 | ;; --------------------------------------------------------------------------- | ||
| 27 | ;; keyboard setup -- that's simple! | ||
| 28 | (set-input-mode nil nil 0) | ||
| 29 | (define-key global-map [mouse-1] 'mouse-set-point) | ||
| 30 | (define-key function-key-map [backspace] "\177") ; Normal behaviour for BS | ||
| 31 | (define-key function-key-map [delete] "\C-d") ; ... and Delete | ||
| 32 | (define-key function-key-map [tab] [?\t]) | ||
| 33 | (define-key function-key-map [linefeed] [?\n]) | ||
| 34 | (define-key function-key-map [clear] [11]) | ||
| 35 | (define-key function-key-map [return] [13]) | ||
| 36 | (define-key function-key-map [escape] [?\e]) | ||
| 37 | (define-key function-key-map [M-backspace] [?\M-\d]) | ||
| 38 | (define-key function-key-map [M-delete] [?\M-\d]) | ||
| 39 | (define-key function-key-map [M-tab] [?\M-\t]) | ||
| 40 | (define-key function-key-map [M-linefeed] [?\M-\n]) | ||
| 41 | (define-key function-key-map [M-clear] [?\M-\013]) | ||
| 42 | (define-key function-key-map [M-return] [?\M-\015]) | ||
| 43 | (define-key function-key-map [M-escape] [?\M-\e]) | ||
| 44 | (put 'backspace 'ascii-character 127) | ||
| 45 | (put 'delete 'ascii-character 127) | ||
| 46 | (put 'tab 'ascii-character ?\t) | ||
| 47 | (put 'linefeed 'ascii-character ?\n) | ||
| 48 | (put 'clear 'ascii-character 12) | ||
| 49 | (put 'return 'ascii-character 13) | ||
| 50 | (put 'escape 'ascii-character ?\e) | ||
| 51 | ;; --------------------------------------------------------------------------- | ||
| 52 | ;; We want to do this when Emacs is started because one day it will depend | ||
| 53 | ;; on the country code. | ||
| 54 | (let* ((i 128) | ||
| 55 | (modify (function | ||
| 56 | (lambda (ch sy) | ||
| 57 | (modify-syntax-entry ch sy text-mode-syntax-table) | ||
| 58 | (if (boundp 'tex-mode-syntax-table) | ||
| 59 | (modify-syntax-entry ch sy tex-mode-syntax-table)) | ||
| 60 | (modify-syntax-entry ch sy (standard-syntax-table)) | ||
| 61 | ))) | ||
| 62 | (downs (car (standard-case-table))) | ||
| 63 | (ups (car (cdr (standard-case-table)))) | ||
| 64 | (chars "A AEEEIIIOOUĢUY AĄIĒOĢUĪĨ")) | ||
| 65 | (while (< i 256) | ||
| 66 | (funcall modify i "_") | ||
| 67 | (setq i (1+ i))) | ||
| 68 | |||
| 69 | (setq i 0) | ||
| 70 | (while (< i (length chars)) | ||
| 71 | (let ((ch1 (aref chars i)) | ||
| 72 | (ch2 (aref chars (1+ i)))) | ||
| 73 | (funcall modify ch1 "w") | ||
| 74 | (funcall modify ch2 "w") | ||
| 75 | (aset ups ch1 ch2) | ||
| 76 | (if (> ch2 127) | ||
| 77 | (aset downs ch2 ch1)) | ||
| 78 | (setq i (+ i 2)))) | ||
| 79 | (let ((table (list downs ups nil nil))) | ||
| 80 | (save-excursion | ||
| 81 | (mapcar (lambda (b) (progn (set-buffer b) (set-case-table table))) | ||
| 82 | (buffer-list))) | ||
| 83 | (set-standard-case-table table)) | ||
| 84 | ) | ||