annotate lisp/iso8859-1.el @ 4372:ebb35ddea76a

Byte-compile menu lambdas; make the menu of available tutorials more readable. 2007-12-31 Aidan Kehoe <kehoea@parhasard.net> * menubar-items.el (default-menubar): Byte compile the specified lambdas. Correct some compile time warnings uncovered by this. * menubar-items.el (tutorials-menu-filter): If a language environment doesn't have an associated POSIX locale specified--which indicates we don't want it used except by those who know what they're doing--don't show its tutorial in the menu. * behavior.el (behavior-menu-filter): Byte compile the lambdas in the generated menu.
author Aidan Kehoe <kehoea@parhasard.net>
date Mon, 31 Dec 2007 21:34:45 +0100
parents b4f4e0cc90f1
children ef9eb714f0e4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4103
b4f4e0cc90f1 [xemacs-hg @ 2007-08-07 23:08:47 by aidan]
aidan
parents: 3540
diff changeset
1 ;;; iso8859-1.el --- Set case table for Latin 1
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3540
efa52de8c279 [xemacs-hg @ 2006-08-04 20:01:05 by aidan]
aidan
parents: 444
diff changeset
3 ;; Copyright (C) 1992, 1997, 2006 Free Software Foundation, Inc.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 ;; Author: Jamie Zawinski <jwz@jwz.org>
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 ;; Created: 19-aug-92
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 ;; Maintainer: XEmacs Development Team
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 ;; Keywords: internal, dumped
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 ;; This file is part of XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 ;; XEmacs is free software; you can redistribute it and/or modify it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 ;; under the terms of the GNU General Public License as published by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 ;; the Free Software Foundation; either version 2, or (at your option)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 ;; any later version.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 ;; XEmacs is distributed in the hope that it will be useful, but
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 ;; General Public License for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 ;; along with XEmacs; see the file COPYING. If not, write to the Free
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 ;; 02111-1307, USA.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26
3540
efa52de8c279 [xemacs-hg @ 2006-08-04 20:01:05 by aidan]
aidan
parents: 444
diff changeset
27 ;;; Synched up with: Not in FSF.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 ;;; Commentary:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 ;; created by jwz, 19-aug-92.
3540
efa52de8c279 [xemacs-hg @ 2006-08-04 20:01:05 by aidan]
aidan
parents: 444
diff changeset
32 ;; Sets the case table for the ISO-8859/1 character set.
efa52de8c279 [xemacs-hg @ 2006-08-04 20:01:05 by aidan]
aidan
parents: 444
diff changeset
33 ;; Used to set the syntax table.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 ;;; Code:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 (defconst iso8859/1-case-table nil
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 "The case table for ISO-8859/1 characters.")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 ;;; This macro expands into
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 ;;; (setq iso8859/1-case-table (purecopy '("..." nil nil nil)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 ;;; doing the computation of the case table at compile-time.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 ((macro
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 . (lambda (&rest pairs)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 (let ((downcase (make-string 256 0))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 (i 0))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 (while (< i 256)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 (aset downcase i (if (and (>= i ?A) (<= i ?Z)) (+ i 32) i))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 (setq i (1+ i)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 (while pairs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 (aset downcase (car (car pairs)) (car (cdr (car pairs))))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 (setq pairs (cdr pairs)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 (cons 'setq
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 (cons 'iso8859/1-case-table
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 428
diff changeset
56 (list
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 428
diff changeset
57 (list 'quote
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 428
diff changeset
58 (list downcase nil nil nil))))))))
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 (?\300 ?\340) ; Agrave
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 (?\301 ?\341) ; Aacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 (?\302 ?\342) ; Acircumflex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 (?\303 ?\343) ; Atilde
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 (?\304 ?\344) ; Adiaeresis
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 (?\305 ?\345) ; Aring
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 (?\306 ?\346) ; AE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 (?\307 ?\347) ; Ccedilla
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 (?\310 ?\350) ; Egrave
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 (?\311 ?\351) ; Eacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 (?\312 ?\352) ; Ecircumflex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 (?\313 ?\353) ; Ediaeresis
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 (?\314 ?\354) ; Igrave
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 (?\315 ?\355) ; Iacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 (?\316 ?\356) ; Icircumflex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 (?\317 ?\357) ; Idiaeresis
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 (?\320 ?\360) ; ETH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 (?\321 ?\361) ; Ntilde
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 (?\322 ?\362) ; Ograve
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 (?\323 ?\363) ; Oacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 (?\324 ?\364) ; Ocircumflex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 (?\325 ?\365) ; Otilde
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 (?\326 ?\366) ; Odiaeresis
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 (?\330 ?\370) ; Ooblique
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 (?\331 ?\371) ; Ugrave
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 (?\332 ?\372) ; Uacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 (?\333 ?\373) ; Ucircumflex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 (?\334 ?\374) ; Udiaeresis
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 (?\335 ?\375) ; Yacute
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 (?\336 ?\376) ; THORN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 )
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 (set-standard-case-table (mapcar 'copy-sequence iso8859/1-case-table))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 (setq-default ctl-arrow 'iso-8859/1)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 (provide 'iso8859-1)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 ;;; iso8859-1.el ends here