Mercurial > emacs
annotate lisp/language/japanese.el @ 46505:005d282a48ed
(decode-char): Use utf-8-translation-table-for-decode.
(encode-char): Use ucs-mule-to-mule-unicode.
author | Dave Love <fx@gnu.org> |
---|---|
date | Wed, 17 Jul 2002 19:20:01 +0000 |
parents | fbdf4317e25f |
children | 33d53d287ee4 fad0f879877f |
rev | line source |
---|---|
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
35332
diff
changeset
|
1 ;;; japanese.el --- support for Japanese -*- coding: iso-2022-7bit; -*- |
17052 | 2 |
3 ;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. | |
18377
8b4a66c66dd6
Change copyright notice.
Richard M. Stallman <rms@gnu.org>
parents:
18309
diff
changeset
|
4 ;; Licensed to the Free Software Foundation. |
17052 | 5 |
6 ;; Keywords: multilingual, Japanese | |
7 | |
8 ;; This file is part of GNU Emacs. | |
9 | |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
12 ;; the Free Software Foundation; either version 2, or (at your option) | |
13 ;; any later version. | |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
17071 | 21 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
23 ;; Boston, MA 02111-1307, USA. | |
17052 | 24 |
25 ;;; Commentary: | |
26 | |
27 ;; For Japanese, character sets JISX0201, JISX0208, JISX0212 are | |
28 ;; supported. | |
29 | |
30 ;;; Code: | |
31 | |
19283
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
32 (make-coding-system |
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
33 'iso-2022-jp 2 ?J |
42152 | 34 "ISO 2022 based 7bit encoding for Japanese (MIME:ISO-2022-JP)." |
19283
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
35 '((ascii japanese-jisx0208-1978 japanese-jisx0208 |
29141
16b7fc8a65d2
(iso-2022-jp): Exclude katakana-jisx0201
Kenichi Handa <handa@m17n.org>
parents:
24332
diff
changeset
|
36 latin-jisx0201 japanese-jisx0212) nil nil nil |
20159
dce0d588d203
Give proper SAFE-CHARSET argument in each
Kenichi Handa <handa@m17n.org>
parents:
19554
diff
changeset
|
37 short ascii-eol ascii-cntl seven) |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
38 '((safe-charsets ascii japanese-jisx0208-1978 japanese-jisx0208 |
29141
16b7fc8a65d2
(iso-2022-jp): Exclude katakana-jisx0201
Kenichi Handa <handa@m17n.org>
parents:
24332
diff
changeset
|
39 latin-jisx0201 japanese-jisx0212) |
22564
4836a83d3578
(iso-2022-jp): Delete spurious quote.
Richard M. Stallman <rms@gnu.org>
parents:
21462
diff
changeset
|
40 (mime-charset . iso-2022-jp))) |
19283
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
41 |
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
42 (define-coding-system-alias 'junet 'iso-2022-jp) |
17088
76d2eb70aa0b
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
43 |
17052 | 44 (make-coding-system |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
45 'iso-2022-jp-2 2 ?J |
42152 | 46 "ISO 2022 based 7bit encoding for CJK, Latin-1, and Greek (MIME:ISO-2022-JP-2)." |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
47 '((ascii japanese-jisx0208-1978 japanese-jisx0208 |
29143
6a44aa94971a
(iso-2022-jp-2): Exclude katakana-jisx0201 to conform to RFC1554.
Kenichi Handa <handa@m17n.org>
parents:
29141
diff
changeset
|
48 latin-jisx0201 japanese-jisx0212 |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
49 chinese-gb2312 korean-ksc5601) nil |
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
50 (nil latin-iso8859-1 greek-iso8859-7) nil |
43538
fbdf4317e25f
(iso-2022-jp-2): Add init-bol flag.
Jason Rumney <jasonr@gnu.org>
parents:
42152
diff
changeset
|
51 short ascii-eol ascii-cntl seven nil single-shift nil nil nil init-bol) |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
52 '((safe-charsets ascii japanese-jisx0208-1978 japanese-jisx0208 |
29143
6a44aa94971a
(iso-2022-jp-2): Exclude katakana-jisx0201 to conform to RFC1554.
Kenichi Handa <handa@m17n.org>
parents:
29141
diff
changeset
|
53 latin-jisx0201 japanese-jisx0212 |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
54 chinese-gb2312 korean-ksc5601 |
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
55 latin-iso8859-1 greek-iso8859-7) |
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
56 (mime-charset . iso-2022-jp-2))) |
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
57 |
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
58 (make-coding-system |
18203
0745f30aec66
Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents:
17993
diff
changeset
|
59 'japanese-shift-jis 1 ?S |
42152 | 60 "Shift-JIS 8-bit encoding for Japanese (MIME:SHIFT_JIS)." |
20159
dce0d588d203
Give proper SAFE-CHARSET argument in each
Kenichi Handa <handa@m17n.org>
parents:
19554
diff
changeset
|
61 nil |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
62 '((safe-charsets ascii japanese-jisx0208 japanese-jisx0208-1978 |
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
63 latin-jisx0201 katakana-jisx0201) |
24327
6f70c8b3ea9a
(japanese-shift-jis): Add charset-origin-alist property.
Kenichi Handa <handa@m17n.org>
parents:
23158
diff
changeset
|
64 (mime-charset . shift_jis) |
6f70c8b3ea9a
(japanese-shift-jis): Add charset-origin-alist property.
Kenichi Handa <handa@m17n.org>
parents:
23158
diff
changeset
|
65 (charset-origin-alist (japanese-jisx0208 "SJIS" encode-sjis-char) |
6f70c8b3ea9a
(japanese-shift-jis): Add charset-origin-alist property.
Kenichi Handa <handa@m17n.org>
parents:
23158
diff
changeset
|
66 (katakana-jisx0201 "SJIS" encode-sjis-char)))) |
17052 | 67 |
18520
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
68 (define-coding-system-alias 'shift_jis 'japanese-shift-jis) |
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
69 (define-coding-system-alias 'sjis 'japanese-shift-jis) |
17052 | 70 |
71 (make-coding-system | |
18203
0745f30aec66
Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents:
17993
diff
changeset
|
72 'japanese-iso-7bit-1978-irv 2 ?j |
42152 | 73 "ISO 2022 based 7-bit encoding for Japanese JISX0208-1978 and JISX0201-Roman." |
19283
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
74 '((ascii japanese-jisx0208-1978 japanese-jisx0208 |
43b3f86776e4
Make coding system iso-2022-jp instead of
Kenichi Handa <handa@m17n.org>
parents:
18577
diff
changeset
|
75 latin-jisx0201 japanese-jisx0212 katakana-jisx0201 t) nil nil nil |
20159
dce0d588d203
Give proper SAFE-CHARSET argument in each
Kenichi Handa <handa@m17n.org>
parents:
19554
diff
changeset
|
76 short ascii-eol ascii-cntl seven nil nil use-roman use-oldjis) |
dce0d588d203
Give proper SAFE-CHARSET argument in each
Kenichi Handa <handa@m17n.org>
parents:
19554
diff
changeset
|
77 '(ascii japanese-jisx0208-1978 japanese-jisx0208 latin-jisx0201)) |
17052 | 78 |
18520
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
79 (define-coding-system-alias 'iso-2022-jp-1978-irv 'japanese-iso-7bit-1978-irv) |
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
80 (define-coding-system-alias 'old-jis 'japanese-iso-7bit-1978-irv) |
17088
76d2eb70aa0b
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
81 |
17052 | 82 (make-coding-system |
18203
0745f30aec66
Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents:
17993
diff
changeset
|
83 'japanese-iso-8bit 2 ?E |
42152 | 84 "ISO 2022 based EUC encoding for Japanese (MIME:EUC-JP)." |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
85 '(ascii japanese-jisx0208 katakana-jisx0201 japanese-jisx0212 |
20159
dce0d588d203
Give proper SAFE-CHARSET argument in each
Kenichi Handa <handa@m17n.org>
parents:
19554
diff
changeset
|
86 short ascii-eol ascii-cntl nil nil single-shift) |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
87 '((safe-charsets ascii latin-jisx0201 japanese-jisx0208 japanese-jisx0208-1978 |
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
88 katakana-jisx0201 japanese-jisx0212) |
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
89 (mime-charset . euc-jp))) |
17052 | 90 |
18520
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
91 (define-coding-system-alias 'euc-japan-1990 'japanese-iso-8bit) |
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
92 (define-coding-system-alias 'euc-japan 'japanese-iso-8bit) |
383d11185239
Swap args to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents:
18377
diff
changeset
|
93 (define-coding-system-alias 'euc-jp 'japanese-iso-8bit) |
17088
76d2eb70aa0b
Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents:
17071
diff
changeset
|
94 |
17052 | 95 (set-language-info-alist |
22983
7a010b8c0d99
("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents:
22564
diff
changeset
|
96 "Japanese" '((setup-function . setup-japanese-environment-internal) |
21375 | 97 (exit-function . exit-japanese-environment) |
21462
a7ab22b5cfb3
Tutorial file name changed to TUTORIAL.ja.
Kenichi Handa <handa@m17n.org>
parents:
21375
diff
changeset
|
98 (tutorial . "TUTORIAL.ja") |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
99 (charset japanese-jisx0208 japanese-jisx0208-1978 |
35332
95ff316255a5
("Japanese"): Add japanese-jisx0213-1 and
Kenichi Handa <handa@m17n.org>
parents:
33778
diff
changeset
|
100 japanese-jisx0212 latin-jisx0201 katakana-jisx0201 |
95ff316255a5
("Japanese"): Add japanese-jisx0213-1 and
Kenichi Handa <handa@m17n.org>
parents:
33778
diff
changeset
|
101 japanese-jisx0213-1 japanese-jisx0213-2) |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
102 (coding-system iso-2022-jp japanese-iso-8bit |
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
103 japanese-shift-jis japanese-iso-7bit-1978-irv) |
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
104 (coding-priority iso-2022-jp japanese-iso-8bit |
24332
29c0557957ba
(iso-2022-jp-2): New coding system.
Kenichi Handa <handa@m17n.org>
parents:
24327
diff
changeset
|
105 japanese-shift-jis iso-2022-jp-2) |
22983
7a010b8c0d99
("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents:
22564
diff
changeset
|
106 (input-method . "japanese") |
7a010b8c0d99
("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents:
22564
diff
changeset
|
107 (features japan-util) |
20739
5f2c7f919bbf
Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents:
20159
diff
changeset
|
108 (sample-text . "Japanese ($BF|K\8l(B) $B$3$s$K$A$O(B, (I:]FAJ(B") |
17841
084d922fcd78
Coding system names changed as follows:
Kenichi Handa <handa@m17n.org>
parents:
17769
diff
changeset
|
109 (documentation . t))) |
17052 | 110 |
33778 | 111 (provide 'japanese) |
112 | |
17052 | 113 ;;; japanese.el ends here |