Mercurial > emacs
annotate admin/charsets/mule-charsets.el @ 107273:d049b1b866d4
Merge from mainline.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Mon, 08 Feb 2010 22:13:26 +0000 |
parents | 1d1d5d9bd884 |
children | 376148b31b5e |
rev | line source |
---|---|
88123 | 1 ;; mule-charsets.el -- Generate Mule-orignal charset maps. |
106815 | 2 ;; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
88123 | 3 ;; National Institute of Advanced Industrial Science and Technology (AIST) |
4 ;; Registration Number H13PRO009 | |
5 | |
6 ;; This file is part of GNU Emacs. | |
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 | 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 | 12 |
13 ;; GNU Emacs is distributed in the hope that it will be useful, | |
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 ;; GNU General Public License for more details. | |
17 | |
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 | 21 |
103386
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
22 (if (not (or (and (= emacs-major-version 21) (= emacs-minor-version 4)) |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
23 (= emacs-major-version 22))) |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
24 (error "Use Emacs of version 21.4 or any of version 22")) |
88123 | 25 |
26 (defun func (start end) | |
27 (while (<= start end) | |
28 (let ((split (split-char start)) | |
29 (unicode (encode-char start 'ucs))) | |
30 (if unicode | |
31 (if (nth 2 split) | |
91419
0151f4281d67
Update copyright years and GPL version.
Glenn Morris <rgm@gnu.org>
parents:
89916
diff
changeset
|
32 (insert (format "0x%02X%02X 0x%04X\n" |
88123 | 33 (nth 1 split) (nth 2 split) unicode)) |
34 (insert (format "0x%02X 0x%04X\n" (nth 1 split) unicode))))) | |
35 (setq start (1+ start)))) | |
36 | |
37 (defconst charset-alist | |
38 '(("MULE-ethiopic.map" . ethiopic) | |
39 ("MULE-ipa.map" . ipa) | |
40 ("MULE-is13194.map" . indian-is13194) | |
41 ("MULE-sisheng.map" . chinese-sisheng) | |
42 ("MULE-tibetan.map" . tibetan) | |
43 ("MULE-lviscii.map" . vietnamese-viscii-lower) | |
44 ("MULE-uviscii.map" . vietnamese-viscii-upper))) | |
45 | |
103386
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
46 (defconst header |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
47 (format |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
48 "# Generated by running amdin/charsets/mule-charsets.el in Emacs %d.%d.\n" |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
49 emacs-major-version emacs-minor-version)) |
88123 | 50 |
103386
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
51 (dolist (elt charset-alist) |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
52 (with-temp-buffer |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
53 (insert header) |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
54 (map-charset-chars 'func (cdr elt)) |
afce89bcee41
Mostly re-written to generate all MULE-*.map files.
Kenichi Handa <handa@m17n.org>
parents:
100971
diff
changeset
|
55 (write-file (car elt)))) |
89916
e0e4e6a0599f
Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents:
88123
diff
changeset
|
56 |
e0e4e6a0599f
Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents:
88123
diff
changeset
|
57 ;;; arch-tag: 515989d7-2e2d-41cc-9163-05ad472fede4 |