ついに職場でcmailが使えなくなってしまいました。
まぁ、許可されたメーラーしか使えない以上しょうもないのですが。。。
でも、複雑なメーラーにすれば、むしろそれだけミスを誘発するからまずそうな気もしますが。
というのは建前で!!
私にとっては Becky! は敵性ソフトのひとつだったんです!!
いえ、ユーザーの方々には申し訳ないんですが。。。
昔、散々RFCに対応していないメーラーへの対応で泣かされたものなぁ。。。
インターネットの技術は急激に成長したから、当初規定されていたルールはどんどん不法建築で増殖していったので、規格通り作ろうとしていた方は大変だったのですね。(遠い目)
いや、一番のアレはM$のアレだったんですが。。
アレが独自規格をガンガン作ってくれたもので、それに対応するために他のメーラーも追従したわけで。
そういう意味では Becky! はその対応をしっかりしていたソフトなんですが。。
昔は(今も基本は)7bitエンコーディングなんですよね。1バイト(8bit)使えないという。
まぁ、多分、パリティービットの分を残していたからなんだと思いますけど。
そうすると、基本はASCII配列になります。半角カナとかは8bitエンコーディングじゃないと対応できないので、入ってきません。
7bitエンコーディングを基本としたJIS規格を元にした iso-2022-jp がメールの世界における日本語の基本コードでした。
ただ、iso-2022-jp は日本語と半角英数の区切りのためにエスケープコードを必要としていました。(すみません。記憶で書いてます。)
そこを、シームレスに扱うために、文字コード表の一部をシフトさせたコードとしたものがいわゆるShift-JIS。(JISといいながらJIS規格ではない。今はそのスーパーセットとしてCP932が使われてますけど。)
で、そのShift-JISの中に、悪の根源、半角カナや丸付き数字やローマ数字が入っていましたが、M$がシステムのコーディングシステムとしてShift-JISを採用したことから悲劇が始まるわけで。
良くも悪くも、Windows 95の騒ぎがなければインターネットがここまで家庭に普及するのはもっと先のことだったろうし、Windows 95がなければネット界での様々な規格の混乱も生まなかっただろうと。
ちなみに、UNIX系では伝統的にEUCコードというのを使っていましたね。確かこれもiso-2022-jpの文字セットをシフトして得られたはず。
MacもShift-JISを採用していたんですが、文字セットが微妙に違っていて、丸付き数字やローマ数字の対応が違っていたりしました。
(だから、DOS <-> Mac でテキストのやりとりをすると文字が違って表示されることになった。)
20世紀末のネット界ではまだインターネットはUnixの方が強かったと記憶しています。
Windows環境でもMeadowの普及で疑似Unix環境が使えました。
で、Emacsを用いたメール環境は結構あったんですよね。
Emacs標準のrmailやMHを使ってる人はあまりいなかったでしょうが、MewやGnusやwanderlustを使っている人はかなりいました。cmailもその中で細々と続いてきた勢力のひとつです。(ほとんど知られていませんが、あのRubyの まつもとゆきひろ 氏が一時期メンテナーを務めていました。cmailはver.2系列なんですけど、ver.2系列の元々のコードを書いたのが氏でした。)
cmailや初期のGnusの派生物、それにwanderlustはAPEL+SEMI/FLIMというelispのアプリを使ってmime処理や日本語処理を実現していました。
まぁ、そこらへんは全部おまかせ、というのがcmailのスタンスだったので、フィードバッックはしても、基本おまかせだったんですがね。(そのかわり、表示や操作性に関してのブラッシュアップは絶えず続けられていました。)
SKKも当初は単独で動いていたのですが、オリジナルから独立してDDSKKになるあたりでAPELに依存することとなりました。
Emacsのelispのバージョンの規格の違いを吸収するためでした。
Emacsは元々日本語機能は持ってなくて、古くはNEmacs、その後Muleとして多言語処理が追加され、その開発者がAPEL+SEMI/FLIMの開発にも係わっていました。
mime機能はやがてEmacs本家に取り込まれて本家のGnusはAPEL+SEMI/FLIMを必要としなくなりましたが、それらの維持は続けられました。それこそ、先程の「変」な日本語の対応や、日本語ファイル名や日本語タイトルなどにも対応しなくてはいけなかったからです。
本家EmacsのMule対応方法も色々と紆余曲折を経ていたようなので、その文字列処理関連の対応で当時のelisp界隈はてんてこまいでした。
(実際のところ、私の環境では添付ファイルの日本語ファイル名とか、半角カナとか丸付き数字とかローマ数字やらには、比較的最近のFLIM/SEMIといくつかの追加の設定をすることでようやっと実現できたばかりでした。)
EmacsそのものはUTF-8(Unicode)に対応していたし、Unix環境でのEmacs上のcmailも比較的簡単に 8bitエンコーディングの文字列を扱えるようになっていました。
でも、NTEMACS上でそれを実現するのはかなり大変だったんですよおぉぉ。
ようやっと環境が安定してきたところでのこの仕打ちだったので、かなりテンション下がってます。。。
あー。
Unicode導入のときもかなり揉めましたね。
UTF-8はiso-2022-jpと文字セットの並びが違うんじゃなかったっけかな?
(間違っていたらすみません。)
昔からShift-JISとEUCとJISコードの間での変換はnkfコマンドとか使って比較的簡単にできました。perlでも一時期jcode.plがもてはやされましたよね。
Unicodeは当初は周囲からかなり無茶な文字の統一方法だと批判を浴びたのですが、規格のバージョンが上がるにつれて、文字セットの全部取り状態になってきていて、いつのまにか世界の共通コードとなっています。
MeadowもUnicode対応のツールが存在していたんですよね。
21世紀になってからは、もはやインターネットの世界はWindowsの独壇場になっていて、Shift-JISから内部コードをUnicodeに換えたWindowsの規格がデファクトスタンダードとなっていったのでした。
今でこそ、Windowsのシェアが下がってきていますが、今の混沌としたネットの規格の乱立の要因のひとつは確実にM$にあるよなぁ。。。
と、まぁ、ずっとcmailを使い続けるために戦ってきていたのが、敵の軍門に下らなくてはいけなくなったので、忸怩たる思いです。。。
とりあえず、Virtual box上のUbuntuの中でしばらくcmailを生かしていこうと思います。。。