Mercurial > hg > xemacs-beta
annotate lisp/iso8859-1.el @ 5015:d95c102a96d3
cleanups for specifier font stages, from ben-unicode-internal (preparation for eliminating shadowed warnings)
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-02-08 Ben Wing <ben@xemacs.org>
* faces.c:
* faces.c (face_property_matching_instance):
* faces.c (ensure_face_cachel_contains_charset):
* faces.h (FACE_FONT):
* lisp.h:
* lisp.h (enum font_specifier_matchspec_stages):
* objects-msw.c:
* objects-msw.c (mswindows_font_spec_matches_charset):
* objects-msw.c (mswindows_find_charset_font):
* objects-tty.c:
* objects-tty.c (tty_font_spec_matches_charset):
* objects-tty.c (tty_find_charset_font):
* objects-xlike-inc.c:
* objects-xlike-inc.c (XFUN):
* objects-xlike-inc.c (xft_find_charset_font):
* objects.c:
* objects.c (font_instantiate):
* objects.c (FROB):
* specifier.c:
* specifier.c (charset_matches_specifier_tag_set_p):
* specifier.c (call_charset_predicate):
* specifier.c (define_specifier_tag):
* specifier.c (Fdefine_specifier_tag):
* specifier.c (setup_charset_initial_specifier_tags):
* specifier.c (specifier_instance_from_inst_list):
* specifier.c (FROB):
* specifier.c (vars_of_specifier):
* specifier.h:
Rename the specifier-font-matching stages in preparation for
eliminating shadowed warnings, some other related fixes from
ben-unicode-internal.
1. Rename raw enums:
initial -> STAGE_INITIAL
final -> STAGE_FINAL
impossible -> NUM_MATCHSPEC_STAGES
2. Move `enum font_specifier_matchspec_stages' from
specifier.h to lisp.h.
3. Whitespace changes to match coding standards.
4. Eliminate unused second argument STAGE in charset predicates
that don't use it -- the code that calls the charset predicates
is now smart enough to supply the right number of arguments
automatically.
5. Add some long(ish) comments and authorial notices, esp. in
objects.c.
6. In specifier.c, change Vcharset_tag_lists from a vector over
leading bytes to a hash table over charsets. This change is
unnecessary currently but doesn't hurt and will be required
when we merge in Unicode-internal.
7. In specifier.c, extract out the code that calls charset predicates
into a function call_charset_predicate().
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Mon, 08 Feb 2010 16:51:25 -0600 |
parents | 0cee1ff42db4 |
children | 57a64ab2ae45 308d34e9f07d |
rev | line source |
---|---|
4103 | 1 ;;; iso8859-1.el --- Set case table for Latin 1 |
428 | 2 |
3540 | 3 ;; Copyright (C) 1992, 1997, 2006 Free Software Foundation, Inc. |
428 | 4 |
5 ;; Author: Jamie Zawinski <jwz@jwz.org> | |
6 ;; Created: 19-aug-92 | |
7 ;; Maintainer: XEmacs Development Team | |
8 ;; Keywords: internal, dumped | |
9 | |
10 ;; This file is part of XEmacs. | |
11 | |
12 ;; XEmacs is free software; you can redistribute it and/or modify it | |
13 ;; 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 ;; XEmacs is distributed in the hope that it will be useful, but | |
18 ;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
20 ;; General Public License for more details. | |
21 | |
22 ;; You should have received a copy of the GNU General Public License | |
23 ;; along with XEmacs; see the file COPYING. If not, write to the Free | |
24 ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA | |
25 ;; 02111-1307, USA. | |
26 | |
3540 | 27 ;;; Synched up with: Not in FSF. |
428 | 28 |
29 ;;; Commentary: | |
30 | |
3540 | 31 ;; Sets the case table for the ISO-8859/1 character set. |
4369
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
32 ;; Provides ascii-case-table, for use in environments where multilingual |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
33 ;; case-insensitive processing is inappropriate. |
428 | 34 |
35 ;;; Code: | |
36 | |
4369
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
37 (defvar ascii-case-table |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
38 (loop |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
39 for lower from (char-int ?a) to (char-int ?z) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
40 and upper from (char-int ?A) to (char-int ?Z) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
41 with table = (make-case-table) |
4417
0cee1ff42db4
Correct the initialisation of ascii-case-table.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4371
diff
changeset
|
42 do (put-case-table-pair (coerce upper 'character) |
0cee1ff42db4
Correct the initialisation of ascii-case-table.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4371
diff
changeset
|
43 (coerce lower 'character) |
4369
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
44 table) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
45 finally return table) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
46 "Case table for the ASCII character set.") |
428 | 47 |
4369
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
48 (loop |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
49 for (upper lower) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
50 in '((?\xC0 ?\xE0) ;; A WITH GRAVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
51 (?\xC1 ?\xE1) ;; A WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
52 (?\xC2 ?\xE2) ;; A WITH CIRCUMFLEX |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
53 (?\xC3 ?\xE3) ;; A WITH TILDE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
54 (?\xC4 ?\xE4) ;; A WITH DIAERESIS |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
55 (?\xC5 ?\xE5) ;; A WITH RING ABOVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
56 (?\xC6 ?\xE6) ;; AE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
57 (?\xC7 ?\xE7) ;; C WITH CEDILLA |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
58 (?\xC8 ?\xE8) ;; E WITH GRAVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
59 (?\xC9 ?\xE9) ;; E WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
60 (?\xCA ?\xEA) ;; E WITH CIRCUMFLEX |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
61 (?\xCB ?\xEB) ;; E WITH DIAERESIS |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
62 (?\xCC ?\xEC) ;; I WITH GRAVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
63 (?\xCD ?\xED) ;; I WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
64 (?\xCE ?\xEE) ;; I WITH CIRCUMFLEX |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
65 (?\xCF ?\xEF) ;; I WITH DIAERESIS |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
66 (?\xD0 ?\xF0) ;; ETH |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
67 (?\xD1 ?\xF1) ;; N WITH TILDE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
68 (?\xD2 ?\xF2) ;; O WITH GRAVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
69 (?\xD3 ?\xF3) ;; O WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
70 (?\xD4 ?\xF4) ;; O WITH CIRCUMFLEX |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
71 (?\xD5 ?\xF5) ;; O WITH TILDE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
72 (?\xD6 ?\xF6) ;; O WITH DIAERESIS |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
73 (?\xD8 ?\xF8) ;; O WITH STROKE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
74 (?\xD9 ?\xF9) ;; U WITH GRAVE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
75 (?\xDA ?\xFA) ;; U WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
76 (?\xDB ?\xFB) ;; U WITH CIRCUMFLEX |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
77 (?\xDC ?\xFC) ;; U WITH DIAERESIS |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
78 (?\xDD ?\xFD) ;; Y WITH ACUTE |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
79 (?\xDE ?\xFE)) ;; THORN |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
80 with case-table = (standard-case-table) |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
81 do (put-case-table-pair upper lower case-table)) |
428 | 82 |
4369
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
83 ;; Everything Latin-1 and above should be displayed as its character value |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
84 ;; by default. |
ef9eb714f0e4
Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4103
diff
changeset
|
85 (setq-default ctl-arrow #xA0) |
428 | 86 |
4371
9fdac4a4ae62
Provide 'iso8859-1 again; one file (iso-syntax.el) uses it in the packages.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4369
diff
changeset
|
87 ;; Shouldn't be necessary, but one file in the packages uses it: |
9fdac4a4ae62
Provide 'iso8859-1 again; one file (iso-syntax.el) uses it in the packages.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4369
diff
changeset
|
88 (provide 'iso8859-1) |
9fdac4a4ae62
Provide 'iso8859-1 again; one file (iso-syntax.el) uses it in the packages.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4369
diff
changeset
|
89 |
428 | 90 ;;; iso8859-1.el ends here |