PC-Blues # 031ケータイとの闘い (前編)

  すっかり普及してしまったケータイである。普及率は50%というから、二人に一人はもっている計算である。四人家族ならなんと一家に二台もあるらしい。廊下の電話台の上に一台だけという時代は過ぎ去ってしまったか。かつては「ケイタイ?ヘンな省略をするんじゃない。それじゃあ携帯チリ紙だか、携帯ラジオだか、携帯食糧だか、携帯燃料だか、携帯コンロだか、携帯肩揉み機だか、携帯発電機だか、携帯自転車だか、携帯爆撃機だか、携帯原子力発電所だか、わからんではないか。ケイデンとでもいひたまへ」などと誰もがウソぶいたものだけれども、これではリレー(継電器)と間違われるのがオチなのであった。しかし、京阪電車も京王電車も京阪神急行電気鉄道もケイデンとはなぜか言わない。国鉄も国電というと山手線と中央線・新宿-神田間あたりだけのような気がする。って今ではJRでした。北海道では電車とはいわずに汽車というのが慣行である。

  ところでこの携帯電話であるが、子供がガキの分際で持ってたりするのである。なんで子供なんかに電話など持たせるのかというと親としては連絡がとれないと困るということらしい。確かにデパートで迷子になった場合など威力を発揮しそうな気もする。そういうことなら、親の携帯電話としか通話できないがその代わり通話料がタダとか格安とかいうトランシーバーなど売り出せばあるいはヒットするかもしれない。が、そうなると子供が常時携帯したりはしなくなるだろうからやっぱりダメかもしれない。ここらへんは子供もいなければ、携帯電話を使ったこともないのでよくわからないのだが。いずれ「君、携帯電話ももってないのかね、困るねえ」といわれる世の中がくるのかもしれない。

  かくていまではウェブ閲覧も携帯電話である。確かに携帯電話を常時持つとなると青空文庫でも日本語テキスト・イニシアティヴでも読み放題である。これは便利かもしれない。視認性では文庫本に劣るだろうがこれひとつで芥川でも万葉集でもOKである。電車で携帯電話を使うのはメイワクであるからスィッチを切れというはなしもある。心臓ペースメーカーを誤動作させるというはなしもあるが、実際にそういう事故があったとは聞いたことがないし、携帯電話のマイクロパワーで誤動作するペースメーカーというのは余程の欠陥品じゃなかろうか。でもみんなが使えばやっぱり凄いことになるのかしれない。札幌の電車には電子メイルを夢中になって書く少女少年がうじゃうじゃいるがわたしは別に困らない。たまには携帯電話に向かって大音声をはりあげているオヤジがいてうるせえと思わないでもないが、なーに混んだ電車なんか、もともと静かなところではありえない。面白そうなハナシは立ち聞きさせていただいている。本や新聞を読むのは良くて、ウェブサイトを読んでいけないということはなかろう。

  そう思ってわがサイトを見てみるとどうも、ケータイでは読めないらしい。まず文字コードの問題がある。当サイトはEUC-JPといってUNIX系では結構標準的な文字コードを使っていたのだが、ケータイではShift_JISといってWindowsやMacでおなじみの文字コードしかダメなものも多いらしい。かつてはJ-skyでファンメイルをくれた人がいたし、i-modeで日本史クイズが途中まで表示できたという教えてくれた人がいたので以前は表示そのものはできたらしいのだが、最近の機械のほうがむしろ表示できなくなっているようである。画像とかマルチメディア系コンテンツへの対応の一方で文字コードの対応は弱くなっているらしい。

  というわけで、EUCのコンテンツをShift_JISに変えることにした。いつのまにやらファイルが増えて180ほどになっている。ひとつひとつ書き直してはいられないのでスクリプトを組んでみた。

#!/bin/sh
# その場しのぎなシェルスクリプト。ディレクトリィ内のeucなhtmlを
#全部一度にsjis化します。いろいろ不具合なパターンも予想されるので
#汝の責任において使用すべし。なお事前バックアップは必須。
# 要、sh sed nkf 
ls *.html|sed "s/\(.*\).html/nkf -s \1.html > \1.tmp/" >sh_sjis
ls *.html|sed "s/\(.*\).html/mv \1.tmp \1.html/" >tmp2html
sh sh_sjis 
sh tmp2html 
echo "s/charset=EUC-JP/charset=Shift_JIS/" >scr
echo "s/charset=euc-jp/charset=Shift_JIS/" >>scr
ls *.html|sed "s/\(.*\).html/sed -f scr \1.html > \1.tmp/" >sh_c
har
sh sh_char 
sh tmp2html 
rm sh_sjis sh_char tmp2html scr


同じことを考えている人は御参考にでも。何をやっているのかわからない人はたぶん使わないほうがよい。エラーの処理がまるでないうえに一時ファイルについては同名ファイルが存在した場合上書きしてしまう。おまけにcharsetの書き変えは

s/charset=EUC-JP/charset=Shift_JIS/
s/charset=euc-jp/charset=Shift_JIS/

これだけで、これ以外のパターンだと放置される。なお<META http-equiv="content-type" content="text/html;charset=EUC-JP">(EUCコードの場合)などのcharset=の指定はあくまで補助的なもので、本来 .htaccessに

 AddType "text/html; charset=iso-2022-jp" html

(JISコードの場合) などとやるそうである。 charsetパラメタの勧め: HTMLにおける文字符号化スキームの明示方法参照。 (後編へつづく)

[前へ] [次へ]
[Home] [目次]

2002/10/23