]> code.delx.au - gnu-emacs/blob - lisp/language/english.el
Make functions setup-LANGUAGE-environment
[gnu-emacs] / lisp / language / english.el
1 ;;; english.el --- English support
2
3 ;; Copyright (C) 1997 Free Software Foundation, Inc.
4 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
5
6 ;; Keywords: multibyte character, character set, syntax, category
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 the
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 ;; Boston, MA 02111-1307, USA.
24
25 ;;; Commentary:
26
27 ;; We need nothing special to support English on Emacs. Selecting
28 ;; English as a language environment is one of the ways to reset
29 ;; various multilingual environment to the original settting.
30
31 ;;; Code
32
33 (defun setup-english-environment ()
34 "Reset multilingual environment of Emacs to the default status.
35 The default status is as follows.
36
37 The default value of enable-multibyte-characters is t.
38
39 The default value of buffer-file-coding-system is iso-8859-1.
40 The coding system for terminal output is nil.
41 The coding system for keyboard input is nil.
42
43 The order of priorities of coding categories and the coding system
44 bound to each category are as follows
45 coding category coding system
46 --------------------------------------------------
47 coding-category-iso-7 iso-2022-7
48 coding-category-iso-8-2 iso-8859-1
49 coding-category-iso-8-1 iso-8859-1
50 coding-category-iso-else iso-8859-1
51 coding-category-internal internal
52 coding-category-binary no-conversion
53 coding-category-sjis sjis
54 coding-category-big5 big5
55 "
56 (interactive)
57 (setq-default enable-multibyte-characters t)
58 (if (local-variable-p 'enable-multibyte-characters)
59 (setq enable-multibyte-characters t))
60
61 (setq coding-category-internal 'internal
62 coding-category-iso-7 'iso-2022-7
63 coding-category-iso-8-1 'iso-8859-1
64 coding-category-iso-8-2 'iso-8859-1
65 coding-category-iso-else 'iso-8859-1
66 coding-category-sjis 'sjis
67 coding-category-big5 'big5
68 coding-category-binary 'no-conversion)
69
70 (set-coding-priority
71 '(coding-category-iso-7
72 coding-category-iso-8-2
73 coding-category-iso-8-1
74 coding-category-iso-else
75 coding-category-internal
76 coding-category-binary
77 coding-category-sjis
78 coding-category-big5))
79
80 (setq-default buffer-file-coding-system 'iso-8859-1)
81 (set-terminal-coding-system nil)
82 (set-keyboard-coding-system nil)
83
84 (setq sendmail-coding-system nil
85 rmail-file-coding-system nil)
86 )
87
88 (defun describe-english-support ()
89 "Describe how Emacs support English."
90 (interactive)
91 (describe-language-support-internal "English"))
92
93 (set-language-info-alist
94 "English" '((setup-function . setup-english-environment)
95 (describe-function . describe-english-support)
96 (tutorial . "TUTORIAL")
97 (charset . (ascii))
98 (sample-text . "Hello!, Hi!, How are you?")
99 (documentation . "\
100 There's nothing special you should care to handle English in Emacs.
101 You can use English both with enable-multibyte-characters t and nil.")
102 ))
103
104 (register-input-method "English"
105 '("quail-dvorak" quail-use-package "quail/latin"))
106
107 ;;; english.el ends here