サルでも分かる、文字コードと改行コードの歴史的経緯: 個人的経験とともに

僕がコンピュータを使うようになって、もう30数年が経過している。別に、だからと言って僕が Guru だという訳ではないのだけど、まあ世間で人が経験する問題には一通りぶちあたっているわけだ。

最近、某所である人の質問に答える機会があった。その方が、どうも文字コードとか改行コードに関して何もご存知でないような感じだったので、最初は愚痴のひとつでもここに書こうかと思ったのだが、僕の感じている不愉快さが増幅されるだけなので、それはやめておくことにする。その代わりに、僕の個人的経験を通して、文字コードと改行コードに関して書いておくことにしようと思う。

僕が日本語をコンピュータ上で本格的に扱うようになったのは、大学に入って PC98 を購入してからのことだった。大学に入った頃から、Macintosh というやつが大学生協に出現し、一種の憧れと妬みを感じながらも、そのあまりにすっきりとしたインターフェイスに羨望の眼差しを向けていたものだった。そのうち、大学3年になって、大学に NeXT が大量導入されて、僕は家で書いた文書を大学の NeXT で LaTeX を使って整形し、レーザープリンタでレポートを出力するようになったわけだ。そのときにぶち当たったのが、この文字コードと改行コードの問題だった。

ざっくり分けると、当時、コンピュータ上で日本語を扱う際に用いられる文字コードには、

と3種類あった(EBCDIC はどうした、とか言われそうだけど、僕はメインフレームはあまり使っていなかったので)。PC98 や Macintosh を使っている人は、それとは知らずに Shift_JIS を使っていたわけだけど、電子メールなどには JIS だった(これは今でも基本的には JIS であるべきなわけだが)し、ワークステーション等では EUC-JP を使うことがあったわけだ。

家でテキストファイルを書いてきて NeXT に持ち込もうとすると、まずはこの文字コードの問題に直面させられた。大学内で誰かが書いたユーティリティで、これの変換ができるようになったわけだけど、そのユーティリティの設定を見て、僕はこれが実は複雑怪奇な問題なのだと理解したのだった。

上の理屈で言うと、PC98 でテキストエディタで書いた文章を Mac に持ち込んでも、特に問題がないように思えるわけだけど、このやりとりをしていると、奇妙な現象に遭遇することになる。Mac で書いたテキストファイルを PC98 上で見ると、改行がなくなって、1行にずらーっとテキストが連なってしまうのである。どういうこと? と調べてみると、文字コードと別に改行コードというのがあって、これが、

  • PC98 等の Microsoft 系システム: CR+LF
  • Macintosh; CR
  • ワークステーション: LF
と、これまた3種類存在するわけだ。つまり、
  • PC98 等の Microsoft 系システム: Shift_JIS で CR+LF
  • Macintosh; Shift_JIS で CR
  • ワークステーション: EUC-JP か JIS で LF
……という状況だったのである。しかも、これらの間では EOF コードに関しても仕様が異なることがあったために、1980年代末から1990年代初頭にかけて、コンピュータで日本語を扱う際には、何か変な文字が行末やファイルの最後に付いていないかどうか、常にチェックする習慣が身についてしまった。

やがて Unicode が登場して、この手のごたごたから解放される……と皆思っていたのだが、そう簡単にいく話ではなかった。改行コードに関しては、Mac は UNIX 流の LF に変更されたけれど、Windows では未だに CR+LF が使われている。それに、昔書かれたファイルを同じシリーズ上のコンピュータで扱おうとしても読めない、という問題に人々が頭を悩ませることになった。

UTF-8 同士でも問題が生じることがある。たとえば僕は Linux 上では BOM なしの UTF-8 を使うことが多いけれど、この通称 UTF-8N と呼ばれるフォーマットでファイルを Windows 上に持ち込んで TeX で処理しようとしても処理できない。何らかの手段(たとえば一度 TeraPad で開いて UTF-8 でセーブしなおすとか)で BOM を付加しなければ、同じ UTF-8 と言えども共用できないのだ。

で、結局何が言いたいのか、というと、この手の話は残念ながらまだしばらくは縁を切れない話であって、道具としてコンピュータを使う以上、この問題から背を向けることはできそうにない、ということだ。私は認めない! とか、私には分からないから何とかしろ! とか言う人がいるわけだけど、そういう人々のために使ってやれる程、僕の生活には余分な時間は満ち溢れていないし、僕以外の人にしたってその辺りは変わらないだろうと思う。

自分が忙しい、と殊更に主張する輩に限って、他人の時間の貴重さには無頓着で、時には横暴ですらある。自分に差し迫った事情があるんだ、と言っておけば、他人が自分の良いように情報を与えてくれるんだ、などと、勘違いも甚しい横暴さを振り回す輩に、愚かにも僕は手を差し延べてしまったりするわけだけど、そういう人の何パーセントかでも良いから、検索でこういう文書を読んで、僕のような愚かな回答者の手を煩わさないでくれることを切望する。いや本当、暴言吐きたくなることもあるんですよ。ええ。

粘着ウクライナ

この blog に度々なされる SPAM 書き込み。最近なかったのが、昨日、今日とたて続けに書かれた。それだけではない。この blog を twitter で拡散するとか何とか、機械翻訳の無茶苦茶な日本語の内容に妙な方向性が見えてきたのだ。

そういうことなら仕方ない。アクセスを全てカットすることにしましょうか。問題の書き込みのアドレスは "4.xrfuwuqi.com" とあった。このドメインはアメリカのサイトが所有しているものだけど、アンダーグラウンドの掲示板などをチェックしてみると、このアドレスを詐称している奴の実際の IP address が "91.200.12.26" であることが分かった。調べると……あー。やっぱり、ウクライナでしたか。

以前から度々行われてきた粘着的な書き込みが、ウクライナのアドレスから行われていたことは分かっていた。これまでは、ドメイン単位でのアクセス制御を行っていたのだが、これはもう限界だ。幸いなことに、ウクライナに知人はいない。ということで、ウクライナの全ての IP address からのアクセスを禁止した。馬鹿な連中だよ。まあ、ウクライナ人かどうかさえ判然とはしないんだが、アクセス禁止後の error.log を見ると、ウクライナからの焦ったようなアクセスの形跡が見てとれる。もうお前らとは遊んでやらん。

突然死、その後

突然死』に書いた事件のその後だが、昨日発注・入金した中国製のバッテリパックがついさっき到着した。装着すると、以前と同じように使えていて、まずは一安心というところである。

それにしても、今回ばかりはちと参った。ちなみに、外したバッテリパックの FRU P/N は 42T4632 で、これは Lenovo が交換対象にしているリストの中には入っていない。うーん。しかし、確かに突然死んだんだよなあ。まあ、X61 共々中古品なので、今まで使えただけでも良かったのかもしれないけれど。

突然死

仕事で使っている Thinkpad X61 だが、出先でちょっとだけバッテリで使った後、職場に来てから AC アダプタにつなぐと、バッテリのサインを示す LED がオレンジ色になって点滅している。訝しく思いながらもバッテリの残量を見ると……充電済になっている。うーん、これはどういうことなのか。

調べてみて初めて知ったのだが、Thinkpad X60/61 シリーズ用のバッテリはしばしば「突然死」を起こすらしい。そういうロットがあって、かつて Lenovo は交換にも応じていたらしいのだが……しかし、ちょっとこれはショックだ。純正の長時間駆動用のバッテリパックだし、このバッテリがないと困ることが多いのだ。

とりあえず amazon で代替品を探す。最近は中国製のこの手のバッテリの互換品はあちこちで出回っているので、その中から手頃な価格のものを発注する。まあ、早ければ明日にでも届くだろう。しかしなあ……ちょっとショックだった。

Profile

T.T.Ueda
Tamotsu Thomas UEDA

茨城県水戸市生まれ。

横山大観がかつて学んだ小学校から、旧水戸城址にある中学、高校と進学。この頃から音楽を趣味とするようになる。大学は、学部→修士→博士の各課程に在籍し、某省傘下の研究所に就職、その2ヵ月後に学位を授与される(こういう経緯ですが最終学歴は博士課程「修了」です)。職場の隣の小学校で起こった惨劇は未だに心に深く傷を残している。

その後某自動車関連会社の研究法人で国の研究プロジェクトに参画、プロジェクト終了後は数年の彷徨を経て、某所で教育関連業務に従事。

New Entries

Comment

Categories

Archives(902)

Link

Search

Free

e-mail address:
e-mail address