annotate admin/charsets/mule-charsets.el @ 102459:37cbfaa1822f

* macros.texi (Compiling Macros): Omit misleading sentence, which implied that macros can only be used in the same file they are defined. (Backquote): Remove obsolete information about Emacs 19.
author Chong Yidong <cyd@stupidchicken.com>
date Tue, 10 Mar 2009 00:43:07 +0000
parents ce88a631c161
children afce89bcee41
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
1 ;; mule-charsets.el -- Generate Mule-orignal charset maps.
100971
ce88a631c161 Add 2009 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 94832
diff changeset
2 ;; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
3 ;; National Institute of Advanced Industrial Science and Technology (AIST)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
4 ;; Registration Number H13PRO009
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
5
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
6 ;; This file is part of GNU Emacs.
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
7
94832
eb2d9dfc8486 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 91419
diff changeset
8 ;; GNU Emacs is free software: you can redistribute it and/or modify
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
9 ;; it under the terms of the GNU General Public License as published by
94832
eb2d9dfc8486 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 91419
diff changeset
10 ;; the Free Software Foundation, either version 3 of the License, or
eb2d9dfc8486 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 91419
diff changeset
11 ;; (at your option) any later version.
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
12
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
13 ;; GNU Emacs is distributed in the hope that it will be useful,
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
16 ;; GNU General Public License for more details.
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
17
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
18 ;; You should have received a copy of the GNU General Public License
94832
eb2d9dfc8486 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 91419
diff changeset
19 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
eb2d9dfc8486 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 91419
diff changeset
20
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
21
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
22 (if (or (< emacs-major-version 21)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
23 (< emacs-minor-version 3)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
24 (and (= emacs-minor-version 3)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
25 (string< emacs-version "21.3.50")))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
26 (error "Use Emacs of version 21.3.50 or later"))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
27
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
28 (defun func (start end)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
29 (while (<= start end)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
30 (let ((split (split-char start))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
31 (unicode (encode-char start 'ucs)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
32 (if unicode
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
33 (if (nth 2 split)
91419
0151f4281d67 Update copyright years and GPL version.
Glenn Morris <rgm@gnu.org>
parents: 89916
diff changeset
34 (insert (format "0x%02X%02X 0x%04X\n"
88123
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
35 (nth 1 split) (nth 2 split) unicode))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
36 (insert (format "0x%02X 0x%04X\n" (nth 1 split) unicode)))))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
37 (setq start (1+ start))))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
38
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
39 (defconst charset-alist
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
40 '(("MULE-ethiopic.map" . ethiopic)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
41 ("MULE-ipa.map" . ipa)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
42 ("MULE-is13194.map" . indian-is13194)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
43 ("MULE-sisheng.map" . chinese-sisheng)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
44 ("MULE-tibetan.map" . tibetan)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
45 ("MULE-lviscii.map" . vietnamese-viscii-lower)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
46 ("MULE-uviscii.map" . vietnamese-viscii-upper)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
47
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
48 (setq file (car command-line-args-left))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
49 (or (stringp file)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
50 (error "Invalid file name: %s" file))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
51 (setq charset (cdr (assoc file charset-alist)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
52 (or charset
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
53 (error "Invalid charset: %s" (car command-line-args-left)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
54
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
55 (with-temp-buffer
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
56 (map-charset-chars 'func charset)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
57 (write-file file))
89916
e0e4e6a0599f Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents: 88123
diff changeset
58
e0e4e6a0599f Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents: 88123
diff changeset
59 ;;; arch-tag: 515989d7-2e2d-41cc-9163-05ad472fede4