annotate lisp/language/english.el @ 22363:d00f146c3e9d

#include sys/file.h (sys_access): Provide our own implementation which recognizes D_OK. (is_exec): New function. (stat): Use it. (init_environment): Set TMPDIR to an existing directory. Abort if none of the usual places is available. (sys_rename): On Windows 95, choose a temp name that includes the original file's base name and use an explicit loop rather than calling mktemp. Only attempt to unlink the newname if the rename fails, rather than second-guessing whether the old and new names refer to the same file.
author Karl Heuer <kwzh@gnu.org>
date Fri, 05 Jun 1998 16:08:32 +0000
parents 9c04115476e6
children dfc5c82b7526
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
1 ;;; english.el --- English support
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
2
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
3 ;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
18377
8b4a66c66dd6 Change copyright notice.
Richard M. Stallman <rms@gnu.org>
parents: 18309
diff changeset
4 ;; Licensed to the Free Software Foundation.
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
5
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
6 ;; Keywords: multibyte character, character set, syntax, category
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
7
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
9
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
13 ;; any later version.
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
14
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
18 ;; GNU General Public License for more details.
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
19
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
23 ;; Boston, MA 02111-1307, USA.
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
24
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
25 ;;; Commentary:
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
26
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
27 ;; We need nothing special to support English on Emacs. Selecting
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
28 ;; English as a language environment is one of the ways to reset
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
29 ;; various multilingual environment to the original settting.
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
30
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
31 ;;; Code
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
32
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
33 (defun setup-english-environment ()
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
34 "Reset multilingual environment of Emacs to the default status.
21767
9c04115476e6 (setup-english-environment): Don't set default-enable-multibyte-characters.
Richard M. Stallman <rms@gnu.org>
parents: 20744
diff changeset
35 This function is called by all the `setup-function's for
9c04115476e6 (setup-english-environment): Don't set default-enable-multibyte-characters.
Richard M. Stallman <rms@gnu.org>
parents: 20744
diff changeset
36 the various supported language environments.
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
37
21767
9c04115476e6 (setup-english-environment): Don't set default-enable-multibyte-characters.
Richard M. Stallman <rms@gnu.org>
parents: 20744
diff changeset
38 The default status is as follows:
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
39
17994
28d45a11ac18 (setup-english-environment): Set several
Kenichi Handa <handa@m17n.org>
parents: 17841
diff changeset
40 The default value of buffer-file-coding-system is nil.
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
41 The coding system for terminal output is nil.
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
42 The coding system for keyboard input is nil.
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
43
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
44 The order of priorities of coding categories and the coding system
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
45 bound to each category are as follows
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
46 coding category coding system
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
47 --------------------------------------------------
20744
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
48 coding-category-iso-7-tight iso-2022-jp
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
49 coding-category-iso-7 iso-2022-7bit
19609
054a789f67ef (setup-english-environment): Set
Kenichi Handa <handa@m17n.org>
parents: 19274
diff changeset
50 coding-category-iso-8-1 iso-latin-1
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
51 coding-category-iso-8-2 iso-latin-1
18792
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
52 coding-category-iso-7-else iso-2022-7bit-lock
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
53 coding-category-iso-8-else iso-2022-8bit-ss2
17841
084d922fcd78 Coding system names changed as follows:
Kenichi Handa <handa@m17n.org>
parents: 17767
diff changeset
54 coding-category-emacs-mule emacs-mule
19609
054a789f67ef (setup-english-environment): Set
Kenichi Handa <handa@m17n.org>
parents: 19274
diff changeset
55 coding-category-raw-text raw-text
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
56 coding-category-sjis japanese-shift-jis
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
57 coding-category-big5 chinese-big5
19609
054a789f67ef (setup-english-environment): Set
Kenichi Handa <handa@m17n.org>
parents: 19274
diff changeset
58 coding-category-binarry no-conversion
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
59 "
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
60 (interactive)
21767
9c04115476e6 (setup-english-environment): Don't set default-enable-multibyte-characters.
Richard M. Stallman <rms@gnu.org>
parents: 20744
diff changeset
61 ;; This function formerly set default-enable-multibyte-characters to t,
9c04115476e6 (setup-english-environment): Don't set default-enable-multibyte-characters.
Richard M. Stallman <rms@gnu.org>
parents: 20744
diff changeset
62 ;; but that is incorrect. It should not alter the unibyte/multibyte choice.
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
63
20744
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
64 (setq coding-category-iso-7-tight 'iso-2022-jp
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
65 coding-category-iso-7 'iso-2022-7bit
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
66 coding-category-iso-8-1 'iso-latin-1
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
67 coding-category-iso-8-2 'iso-latin-1
18792
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
68 coding-category-iso-7-else 'iso-2022-7bit-lock
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
69 coding-category-iso-8-else 'iso-2022-8bit-ss2
17994
28d45a11ac18 (setup-english-environment): Set several
Kenichi Handa <handa@m17n.org>
parents: 17841
diff changeset
70 coding-category-emacs-mule 'emacs-mule
19609
054a789f67ef (setup-english-environment): Set
Kenichi Handa <handa@m17n.org>
parents: 19274
diff changeset
71 coding-category-raw-text 'raw-text
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
72 coding-category-sjis 'japanese-shift-jis
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 18158
diff changeset
73 coding-category-big5 'chinese-big5
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
74 coding-category-binary 'no-conversion)
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
75
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
76 (set-coding-priority
20744
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
77 '(coding-category-iso-7-tight
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
78 coding-category-iso-7
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
79 coding-category-iso-8-2
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
80 coding-category-iso-8-1
18792
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
81 coding-category-iso-7-else
7509c58538a0 (setup-english-environment): Adjusted for the change of coding
Kenichi Handa <handa@m17n.org>
parents: 18377
diff changeset
82 coding-category-iso-8-else
17841
084d922fcd78 Coding system names changed as follows:
Kenichi Handa <handa@m17n.org>
parents: 17767
diff changeset
83 coding-category-emacs-mule
19609
054a789f67ef (setup-english-environment): Set
Kenichi Handa <handa@m17n.org>
parents: 19274
diff changeset
84 coding-category-raw-text
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
85 coding-category-sjis
17994
28d45a11ac18 (setup-english-environment): Set several
Kenichi Handa <handa@m17n.org>
parents: 17841
diff changeset
86 coding-category-big5
28d45a11ac18 (setup-english-environment): Set several
Kenichi Handa <handa@m17n.org>
parents: 17841
diff changeset
87 coding-category-binary))
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
88
19139
e984e35192fd (setup-english-environment): Call set-default-coding-systems.
Kenichi Handa <handa@m17n.org>
parents: 18792
diff changeset
89 (set-default-coding-systems nil)
19922
a59d59d582b7 (setup-english-environment): Don't set
Richard M. Stallman <rms@gnu.org>
parents: 19609
diff changeset
90 ;; Don't alter the terminal and keyboard coding systems here.
a59d59d582b7 (setup-english-environment): Don't set
Richard M. Stallman <rms@gnu.org>
parents: 19609
diff changeset
91 ;; The terminal still supports the same coding system
a59d59d582b7 (setup-english-environment): Don't set
Richard M. Stallman <rms@gnu.org>
parents: 19609
diff changeset
92 ;; that it supported a minute ago.
a59d59d582b7 (setup-english-environment): Don't set
Richard M. Stallman <rms@gnu.org>
parents: 19609
diff changeset
93 ;;; (set-terminal-coding-system-internal nil)
a59d59d582b7 (setup-english-environment): Don't set
Richard M. Stallman <rms@gnu.org>
parents: 19609
diff changeset
94 ;;; (set-keyboard-coding-system-internal nil)
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
95
19274
87673245c178 (setup-english-environment): Do not
Kenichi Handa <handa@m17n.org>
parents: 19139
diff changeset
96 (setq nonascii-insert-offset 0))
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
97
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
98 (set-language-info-alist
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
99 "English" '((setup-function . setup-english-environment)
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
100 (tutorial . "TUTORIAL")
20744
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
101 (charset ascii)
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
102 (coding-priority iso-2022-7bit
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
103 iso-latin-1
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
104 iso-2022-7bit-lock
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
105 iso-2022-8bit-ss2
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
106 emacs-mule
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
107 raw-text
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
108 japanese-shift-jis
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
109 chinese-big5
48d79ef65489 Register coding-priority key in
Kenichi Handa <handa@m17n.org>
parents: 19954
diff changeset
110 no-conversion)
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
111 (sample-text . "Hello!, Hi!, How are you?")
17994
28d45a11ac18 (setup-english-environment): Set several
Kenichi Handa <handa@m17n.org>
parents: 17841
diff changeset
112 (documentation . "\
18158
723b3b1516b6 ("English"): Improve doc string.
Richard M. Stallman <rms@gnu.org>
parents: 17994
diff changeset
113 Nothing special is needed to handle English.")
17767
d93b9414ff2b Make functions setup-LANGUAGE-environment
Kenichi Handa <handa@m17n.org>
parents: 17301
diff changeset
114 ))
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
115
19954
9c37afba82bc (ASCII): Define as alias for English.
Richard M. Stallman <rms@gnu.org>
parents: 19922
diff changeset
116 ;; Make "ASCII" an alias of "English" language environment.
9c37afba82bc (ASCII): Define as alias for English.
Richard M. Stallman <rms@gnu.org>
parents: 19922
diff changeset
117 (set-language-info-alist
9c37afba82bc (ASCII): Define as alias for English.
Richard M. Stallman <rms@gnu.org>
parents: 19922
diff changeset
118 "ASCII" (cdr (assoc "English" language-info-alist)))
9c37afba82bc (ASCII): Define as alias for English.
Richard M. Stallman <rms@gnu.org>
parents: 19922
diff changeset
119
17301
0b94fe381355 Initial revision
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
120 ;;; english.el ends here