Meadowで’〜'(波ダッシュ)等を正しく扱うためのメモ.ちょっと前まで他の人がページでまとめてたけど,ページが消えてたのでGoogleのキャッシュに残ってる内にこちらに残しておく事に.
前提条件としてMule-UCSをインストールしておき,~/.emacsに以下のコードを書いておく事.
(require 'un-define)
(require 'jisx0213)
(set-language-environment "Japanese")
次に/packages/lisp/mule-ucs/lisp/reldata/ujisx0201.elと/packages/lisp/mule-ucs/lisp/reldata/ujisx0208.elと/packages/lisp/mule-ucs/lisp/reldata/ujisx0212.elを「JISコード」で開いて,以下の様に訂正する.
文字 | 変更前 | 変更後 |
\ | (92 . “0x00A5”) ;; YEN SIGN | (92 . “0x005C”) ;; REVERSE SOLIDUS |
~ | (126 . “0x203E”) ;; OVERLINE | (126 . “0x007E”) ;; TILDE |
文字 | 変更前 | 変更後 |
\ | (?\ . “0x005C”) ;; REVERSE SOLIDUS | (?\ . “0xFF3C”) ;; FULLWIDTH REVERSE SOLIDUS |
〜 | (?〜 . “0x301C”) ;; WAVE DASH | (?〜 . “0xFF5E”) ;; FULLWIDTH TILDE |
‖ | (?‖ . “0x2016”) ;; DOUBLE VERTICAL LINE | (?‖ . “0x2225”) ;; PARALLEL TO |
− | (?− . “0x2212”) ;; MINUS SIGN | (?− . “0xFF0D”) ;; FULLWIDTH HYPHEN-MINUS |
¢ | (?¢ . “0x00A2”) ;; CENT SIGN | (?¢ . “0xFFE0”) ;; FULLWIDTH CENT SIGN |
£ | (?£ . “0x00A3”) ;; POUND SIGN | (?£ . “0xFFE1”) ;; FULLWIDTH POUND SIGN |
¬ | (?¬ . “0x00AC”) ;; NOT SIGN | (?¬ . “0xFFE2”) ;; FULLWIDTH NOT SIGN |
文字 | 変更前 | 変更後 |
¦ | (?¦ . “0x00A6”) ;; BROKEN BAR | (?¦ . “0xFFE4”) ;; FULLWIDTH BROKEN BAR |
˜ | (?˜ . “0x007E”) ;; TILDE | (?˜ . “0x02DC”) ;; SMAL TILDE |
次に以下のコマンドでバイトコンパルをしておく.
> cd meadow\packages\lisp
> cd Mule-UCS
> meadow -q --no-site-file -batch -l mucs-comp.el
> cd lisp
> cd jisx0213
> meadow -batch -q --no-site-file -l x0213-comp.el
ついでに,実際にテキストにある文字と表示される文字とで違う場合があるので,それの訂正.~/.emacsに以下を追加.
;; ;;; Mule-UCS の設定
;; ;; (set-language-environment) の前に設定します
(setq un-define-safe-charsets-for-coding-systems
'(ascii
japanese-jisx0208
korean-ksc5601
chinese-gb2312
chinese-big5-1
chinese-big5-2
latin-iso8859-1
latin-iso8859-2
latin-iso8859-3
latin-iso8859-4
cyrillic-iso8859-5
greek-iso8859-7
hebrew-iso8859-8
latin-iso8859-9
ipa
japanese-jisx0212
chinese-cns11643-1
chinese-cns11643-2
chinese-cns11643-3
chinese-cns11643-4
chinese-cns11643-5
chinese-cns11643-6
chinese-cns11643-7
latin-jisx0201
katakana-jisx0201
thai-tis620
ethiopic
indian-is13194
chinese-sisheng
vietnamese-viscii-lower
vietnamese-viscii-upper
mule-unicode-0100-24ff
mule-unicode-2500-33ff
mule-unicode-e000-ffff
))
(require 'un-define)
;(setq bitmap-alterable-charset 'tibetan-1-column)
(require 'un-tools)
(require 'jisx0213)
(un-define-change-charset-order
'(ascii
japanese-jisx0208
korean-ksc5601
chinese-gb2312
chinese-big5-1
chinese-big5-2
latin-iso8859-1
latin-iso8859-2
latin-iso8859-3
latin-iso8859-4
cyrillic-iso8859-5
greek-iso8859-7
hebrew-iso8859-8
latin-iso8859-9
ipa
japanese-jisx0212
chinese-cns11643-1
chinese-cns11643-2
chinese-cns11643-3
chinese-cns11643-4
chinese-cns11643-5
chinese-cns11643-6
chinese-cns11643-7
latin-jisx0201
katakana-jisx0201
thai-tis620
ethiopic
indian-is13194
chinese-sisheng
vietnamese-viscii-lower
vietnamese-viscii-upper
mule-unicode-0100-24ff
mule-unicode-2500-33ff
mule-unicode-e000-ffff
))