annotate admin/charsets/mule-charsets.el @ 91071:ef6966714dd4

*** empty log message ***
author Jason Rumney <jasonr@gnu.org>
date Fri, 26 Oct 2007 23:50:51 +0000
parents e0e4e6a0599f
children 0151f4281d67
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.
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
2 ;; Copyright (C) 2003
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
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
8 ;; GNU Emacs is free software; you can redistribute it and/or modify
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
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
10 ;; the Free Software Foundation; either version 2, or (at your option)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
11 ;; any later version.
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
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
19 ;; along with GNU Emacs; see the file COPYING. If not, write to the
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
20 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
21 ;; Boston, MA 02111-1307, USA.
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
22
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
23 (if (or (< emacs-major-version 21)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
24 (< emacs-minor-version 3)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
25 (and (= emacs-minor-version 3)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
26 (string< emacs-version "21.3.50")))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
27 (error "Use Emacs of version 21.3.50 or later"))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
28
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
29 (defun func (start end)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
30 (while (<= start end)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
31 (let ((split (split-char start))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
32 (unicode (encode-char start 'ucs)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
33 (if unicode
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
34 (if (nth 2 split)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
35 (insert (format "0x%02X%02X 0x%04X\n"
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
36 (nth 1 split) (nth 2 split) unicode))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
37 (insert (format "0x%02X 0x%04X\n" (nth 1 split) unicode)))))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
38 (setq start (1+ start))))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
39
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
40 (defconst charset-alist
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
41 '(("MULE-ethiopic.map" . ethiopic)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
42 ("MULE-ipa.map" . ipa)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
43 ("MULE-is13194.map" . indian-is13194)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
44 ("MULE-sisheng.map" . chinese-sisheng)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
45 ("MULE-tibetan.map" . tibetan)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
46 ("MULE-lviscii.map" . vietnamese-viscii-lower)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
47 ("MULE-uviscii.map" . vietnamese-viscii-upper)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
48
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
49 (setq file (car command-line-args-left))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
50 (or (stringp file)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
51 (error "Invalid file name: %s" file))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
52 (setq charset (cdr (assoc file charset-alist)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
53 (or charset
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
54 (error "Invalid charset: %s" (car command-line-args-left)))
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
55
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
56 (with-temp-buffer
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
57 (map-charset-chars 'func charset)
375f2633d815 New directory
Kenichi Handa <handa@m17n.org>
parents:
diff changeset
58 (write-file file))
89916
e0e4e6a0599f Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents: 88123
diff changeset
59
e0e4e6a0599f Changes from arch/CVS synchronization
Miles Bader <miles@gnu.org>
parents: 88123
diff changeset
60 ;;; arch-tag: 515989d7-2e2d-41cc-9163-05ad472fede4