annotate etc/unicode/mule-ucs/README @ 4369:ef9eb714f0e4

Add ascii-case-table, #'with-case-table; make iso8859-1.el more comprehensible. 2007-12-30 Aidan Kehoe <kehoea@parhasard.net> * subr.el (with-case-table): New. Idea and implementation taken from GNU's code of April 2007, before GPL V3 was implied. Thank you GNU. * iso8859-1.el (ascii-case-table): New. Idea taken from GNU. * iso8859-1.el : Change Jamie's implicit compile-time call to a macro literal into something comprehensible to and maintainable by mortals, using to cl.el's #'loop. * iso8859-1.el (ctl-arrow): Initialise it to something more comprehensible.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 30 Dec 2007 16:18:33 +0100
parents a29c4eef8f00
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
779
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
1 The files in this directory were converted from data in the mule-ucs
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
2 package (mule-ucs/lisp/reldata/*), using this code:
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
3
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
4 (defun convert-mule-ucs-file (start end)
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
5 (interactive "r")
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
6 (with-output-to-temp-buffer "*mule-ucs-convert*"
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
7 (save-excursion
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
8 (goto-char start)
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
9 (while (re-search-forward "(\\?\\(.\\) \\. \"\\(.*\\)\") ;+ \\(.*\\)$"
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
10 end t)
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
11 (let ((ch (string-to-char (match-string 1)))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
12 (codepoint (match-string 2))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
13 (name (match-string 3)))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
14 (if (= 1 (charset-dimension (char-charset ch)))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
15 (princ (format "0x%x %s # %s\n" (char-octet ch) codepoint name))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
16 (princ (format "0x%x%x %s # %s\n" (char-octet ch 0) (char-octet ch 1) codepoint name))))))))
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
17
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
18 Each file is named after the XEmacs charset it represents. The CNS files
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
19 contain more codepoints than those in unicode-consortium/ because they list
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
20 codepoints above 0xFFFF, those handled by surrogates (supported starting in
a29c4eef8f00 [xemacs-hg @ 2002-03-18 09:40:27 by ben]
ben
parents:
diff changeset
21 Windows 2000, I think, but not yet by XEmacs).