]> code.delx.au - gnu-emacs/blob - lisp/international/latin-1.el
Merge from emacs--rel--22
[gnu-emacs] / lisp / international / latin-1.el
1 ;;; latin-1.el --- set up case-conversion and syntax tables for ISO Latin-1
2
3 ;; Copyright (C) 1988, 1997, 2001, 2002, 2003, 2004, 2005, 2006, 2007
4 ;; Free Software Foundation, Inc.
5
6 ;; Author: Howard Gayle
7 ;; Maintainer: FSF
8 ;; Keywords: i18n
9
10 ;; This file is part of GNU Emacs.
11
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
13 ;; it under the terms of the GNU General Public License as published by
14 ;; the Free Software Foundation; either version 2, or (at your option)
15 ;; any later version.
16
17 ;; GNU Emacs is distributed in the hope that it will be useful,
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 ;; GNU General Public License for more details.
21
22 ;; You should have received a copy of the GNU General Public License
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
24 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
25 ;; Boston, MA 02110-1301, USA.
26
27 ;;; Commentary:
28
29 ;; Written by Howard Gayle. See case-table.el for details.
30 ;; Updated by Erik Naggum.
31
32 ;; The current standard is ISO/IEC 8859-1:1998. As of 1999-05, see
33 ;; <URL:http://czyborra.com/charsets/iso8859.html> and the `final text'
34 ;; <URL:http://anubis.dkuug.dk/jtc1/sc2/wg3/docs/n411.pdf>.
35 ;;; Code:
36
37 (require 'case-table)
38
39 (let ((tbl (standard-case-table))
40 (set-case-syntax-offset
41 (if set-case-syntax-set-multibyte
42 (- (make-char 'latin-iso8859-1) 128)
43 0)))
44 ;; NBSP isn't semantically interchangeable with other whitespace chars,
45 ;; so it's more like punctation.
46 (set-case-syntax 160 "." tbl) ;no-break space
47 (set-case-syntax 161 "." tbl) ;inverted exclamation mark
48 (set-case-syntax 162 "w" tbl) ;cent sign
49 (set-case-syntax 163 "w" tbl) ;pound sign
50 (set-case-syntax 164 "w" tbl) ;currency sign
51 (set-case-syntax 165 "w" tbl) ;yen sign
52 (set-case-syntax 166 "_" tbl) ;broken bar
53 (set-case-syntax 167 "." tbl) ;section sign
54 (set-case-syntax 168 "w" tbl) ;diaeresis
55 (set-case-syntax 169 "_" tbl) ;copyright sign
56 (set-case-syntax 170 "w" tbl) ;feminine ordinal indicator
57 (set-case-syntax-delims 171 187 tbl) ;left-pointing double angle quotation mark
58 (set-case-syntax 172 "_" tbl) ;not sign
59 (set-case-syntax 173 "_" tbl) ;soft hyphen
60 (set-case-syntax 174 "_" tbl) ;registered sign
61 (set-case-syntax 175 "w" tbl) ;macron
62 (set-case-syntax 176 "_" tbl) ;degree sign
63 (set-case-syntax 177 "_" tbl) ;plus-minus sign
64 (set-case-syntax 178 "w" tbl) ;superscript two
65 (set-case-syntax 179 "w" tbl) ;superscript three
66 (set-case-syntax 180 "w" tbl) ;acute accent
67 (set-case-syntax 181 "_" tbl) ;micro sign
68 (set-case-syntax 182 "w" tbl) ;pilcrow sign
69 (set-case-syntax 183 "_" tbl) ;middle dot
70 (set-case-syntax 184 "w" tbl) ;cedilla
71 (set-case-syntax 185 "w" tbl) ;superscript one
72 (set-case-syntax 186 "w" tbl) ;masculine ordinal indicator
73 (set-case-syntax 188 "_" tbl) ;vulgar fraction one quarter
74 (set-case-syntax 189 "_" tbl) ;vulgar fraction one half
75 (set-case-syntax 190 "_" tbl) ;vulgar fraction three quarters
76 (set-case-syntax 191 "." tbl) ;inverted question mark
77 (set-case-syntax-pair 192 224 tbl) ;latin letter a with grave
78 (set-case-syntax-pair 193 225 tbl) ;latin letter a with acute
79 (set-case-syntax-pair 194 226 tbl) ;latin letter a with circumflex
80 (set-case-syntax-pair 195 227 tbl) ;latin letter a with tilde
81 (set-case-syntax-pair 196 228 tbl) ;latin letter a with diaeresis
82 (set-case-syntax-pair 197 229 tbl) ;latin letter a with ring above
83 (set-case-syntax-pair 198 230 tbl) ;latin letter ae
84 (set-case-syntax-pair 199 231 tbl) ;latin letter c with cedilla
85 (set-case-syntax-pair 200 232 tbl) ;latin letter e with grave
86 (set-case-syntax-pair 201 233 tbl) ;latin letter e with acute
87 (set-case-syntax-pair 202 234 tbl) ;latin letter e with circumflex
88 (set-case-syntax-pair 203 235 tbl) ;latin letter e with diaeresis
89 (set-case-syntax-pair 204 236 tbl) ;latin letter i with grave
90 (set-case-syntax-pair 205 237 tbl) ;latin letter i with acute
91 (set-case-syntax-pair 206 238 tbl) ;latin letter i with circumflex
92 (set-case-syntax-pair 207 239 tbl) ;latin letter i with diaeresis
93 (set-case-syntax-pair 208 240 tbl) ;latin letter eth (Icelandic)
94 (set-case-syntax-pair 209 241 tbl) ;latin letter n with tilde
95 (set-case-syntax-pair 210 242 tbl) ;latin letter o with grave
96 (set-case-syntax-pair 211 243 tbl) ;latin letter o with acute
97 (set-case-syntax-pair 212 244 tbl) ;latin letter o with circumflex
98 (set-case-syntax-pair 213 245 tbl) ;latin letter o with tilde
99 (set-case-syntax-pair 214 246 tbl) ;latin letter o with diaeresis
100 (set-case-syntax 215 "_" tbl) ;multiplication sign
101 (set-case-syntax-pair 216 248 tbl) ;latin letter o with stroke
102 (set-case-syntax-pair 217 249 tbl) ;latin letter u with grave
103 (set-case-syntax-pair 218 250 tbl) ;latin letter u with acute
104 (set-case-syntax-pair 219 251 tbl) ;latin letter u with circumflex
105 (set-case-syntax-pair 220 252 tbl) ;latin letter u with diaeresis
106 (set-case-syntax-pair 221 253 tbl) ;latin letter y with acute
107 (set-case-syntax-pair 222 254 tbl) ;latin letter thorn (Icelandic)
108 (set-case-syntax 223 "w" tbl) ;latin small letter sharp s (German)
109 (set-case-syntax 247 "_" tbl) ;division sign
110 ;; The following setting should be suppressed when we are loading
111 ;; this file for setting syntax of multibyte characters.
112 (or set-case-syntax-set-multibyte
113 (set-case-syntax 255 "w" tbl))) ;latin small letter y with diaeresis
114
115 ;; When preloading this file, don't provide the feature.
116 ;; Explicit `require' is used to load this for 8-bit characters.
117 (or set-case-syntax-set-multibyte
118 (provide 'latin-1))
119
120 ;; Don't compile this file: src/Makefile.in instructs make-docfile
121 ;; to look at the .el file!
122 ;; Local Variables:
123 ;; no-byte-compile: t
124 ;; End:
125
126 ;; arch-tag: c2ee6895-edc3-40b2-9518-8c09f1d56c54
127 ;;; latin-1.el ends here