annotate lisp/language/english.el @ 172:a38aed19690b

Added tag r20-3b12 for changeset 929b76928fce
author cvs
date Mon, 13 Aug 2007 09:47:55 +0200
parents 929b76928fce
children acd284d43ca1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
159
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
1 ;;; english.el --- English support
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
2
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
3 ;; Copyright (C) 1997 Free Software Foundation, Inc.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
4 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
5
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
6 ;; Keywords: multibyte character, character set, syntax, category
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
7
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
9
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
13 ;; any later version.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
14
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
18 ;; GNU General Public License for more details.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
19
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
23 ;; Boston, MA 02111-1307, USA.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
24
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
25 ;;; Commentary:
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
26
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
27 ;; We need nothing special to support English on Emacs. Selecting
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
28 ;; English as a language environment is one of the ways to reset
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
29 ;; various multilingual environment to the original settting.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
30
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
31 ;;; Code
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
32
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
33 (defun setup-english-environment ()
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
34 "Reset multilingual environment of Emacs to the default status.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
35 The default status is as follows.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
36
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
37 The default value of enable-multibyte-characters is t.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
38
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
39 The default value of buffer-file-coding-system is iso-8859-1.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
40 The coding system for terminal output is nil.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
41 The coding system for keyboard input is nil.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
42
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
43 The order of priorities of coding categories and the coding system
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
44 bound to each category are as follows
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
45 coding category coding system
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
46 --------------------------------------------------
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
47 coding-category-iso-7 iso-2022-7
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
48 coding-category-iso-8-2 iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
49 coding-category-iso-8-1 iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
50 coding-category-iso-else iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
51 coding-category-internal internal
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
52 coding-category-binary no-conversion
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
53 coding-category-sjis sjis
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
54 coding-category-big5 big5
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
55 "
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
56 (interactive)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
57 (setq-default enable-multibyte-characters t)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
58 (if (local-variable-p 'enable-multibyte-characters)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
59 (setq enable-multibyte-characters t))
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
60
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
61 (setq coding-category-internal 'internal
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
62 coding-category-iso-7 'iso-2022-7
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
63 coding-category-iso-8-1 'iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
64 coding-category-iso-8-2 'iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
65 coding-category-iso-else 'iso-8859-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
66 coding-category-sjis 'sjis
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
67 coding-category-big5 'big5
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
68 coding-category-binary 'no-conversion)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
69
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
70 (set-coding-priority
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
71 '(coding-category-iso-7
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
72 coding-category-iso-8-2
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
73 coding-category-iso-8-1
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
74 coding-category-iso-else
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
75 coding-category-internal
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
76 coding-category-binary
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
77 coding-category-sjis
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
78 coding-category-big5))
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
79
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
80 (setq-default buffer-file-coding-system 'iso-8859-1)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
81 (set-terminal-coding-system nil)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
82 (set-keyboard-coding-system nil)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
83
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
84 (setq sendmail-coding-system nil
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
85 rmail-file-coding-system nil)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
86 )
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
87
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
88 (defun describe-english-support ()
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
89 "Describe how Emacs support English."
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
90 (interactive)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
91 (describe-language-support-internal "English"))
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
92
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
93 (set-language-info-alist
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
94 "English" '((setup-function . setup-english-environment)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
95 (describe-function . describe-english-support)
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
96 (tutorial . "TUTORIAL")
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
97 (charset . (ascii))
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
98 (sample-text . "Hello!, Hi!, How are you?")
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
99 (documentation . "\
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
100 There's nothing special you should care to handle English in Emacs.
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
101 You can use English both with enable-multibyte-characters t and nil.")
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
102 ))
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
103
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
104 (register-input-method "English"
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
105 '("quail-dvorak" quail-use-package "quail/latin"))
171
929b76928fce Import from CVS: tag r20-3b12
cvs
parents: 159
diff changeset
106 (register-input-method "British"
929b76928fce Import from CVS: tag r20-3b12
cvs
parents: 159
diff changeset
107 '("quail-british" quail-use-package "quail/latin"))
159
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
108
3bb7ccffb0c0 Import from CVS: tag r20-3b6
cvs
parents:
diff changeset
109 ;;; english.el ends here