Commit | Line | Data |
---|---|---|
463f5630 | 1 | ;; mule-charsets.el -- Generate Mule-orignal charset maps. |
5df4f04c | 2 | ;; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 |
463f5630 KH |
3 | ;; National Institute of Advanced Industrial Science and Technology (AIST) |
4 | ;; Registration Number H13PRO009 | |
5 | ||
6 | ;; This file is part of GNU Emacs. | |
7 | ||
9ad5de0c | 8 | ;; GNU Emacs is free software: you can redistribute it and/or modify |
463f5630 | 9 | ;; it under the terms of the GNU General Public License as published by |
9ad5de0c GM |
10 | ;; the Free Software Foundation, either version 3 of the License, or |
11 | ;; (at your option) any later version. | |
463f5630 KH |
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 | |
9ad5de0c GM |
19 | ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
20 | ||
463f5630 | 21 | |
1a3cbf35 KH |
22 | (if (not (or (and (= emacs-major-version 21) (= emacs-minor-version 4)) |
23 | (= emacs-major-version 22))) | |
24 | (error "Use Emacs of version 21.4 or any of version 22")) | |
463f5630 KH |
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) | |
835a3da7 | 32 | (insert (format "0x%02X%02X 0x%04X\n" |
463f5630 KH |
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 | ||
1a3cbf35 KH |
46 | (defconst header |
47 | (format | |
48 | "# Generated by running amdin/charsets/mule-charsets.el in Emacs %d.%d.\n" | |
49 | emacs-major-version emacs-minor-version)) | |
463f5630 | 50 | |
1a3cbf35 KH |
51 | (dolist (elt charset-alist) |
52 | (with-temp-buffer | |
53 | (insert header) | |
54 | (map-charset-chars 'func (cdr elt)) | |
55 | (write-file (car elt)))) | |
21e99729 MB |
56 | |
57 | ;;; arch-tag: 515989d7-2e2d-41cc-9163-05ad472fede4 |