CP932 は基本的には Shift_JIS としてデコードすれば良いのですが、IBM 拡張文字
(115区〜119区)が含まれていると化けてしまいます。
これを Meadow で取り扱う方法です。
以下のような設定で、autodetect できるかもしれません。
(when (require 'cp932 nil t)
(setq coding-category-ccl 'cp932)
(set-coding-priority
(progn
(delq 'coding-category-ccl coding-category-list)
(let ((e (memq 'coding-category-raw-text coding-category-list)))
(setcar e 'coding-category-ccl)
(setcdr e (cons 'coding-category-raw-text (cdr e))))
coding-category-list)))
`cp932-conversion-map-with-nec-character' を利用する場合 (デフォルト)、 IBM 拡張文字を NEC 選定 IBM 拡張文字や NEC 特殊文字に変換します。 そのため、ファイルを編集して保存すると、IBM 拡張文字のバイト列は 保持されません。
(cp932-set-conversion-map cp932-conversion-map) を評価して `cp932-conversion-map' を利用する場合、IBM 拡張文字を JIS X 0212 に変換します。 encode には対応していないため、編集後 CP932 での保存はできません。
なお、以前の実装では IBM 拡張文字を JIS X 0208 の空いている領域に配置していました。このため、ファイルを編集しても IBM 拡張文字はそのままのバイト列を維持していました。その代わりに フォントの encoding を設定する必要がありました。また、 un-jisx0208ex 等を用いても、 IBM 拡張文字を Unicode で保存することはできませんでした。