掲示板などに書き込む際、半角カタカナを入力したら化けてしまった、ということは良く聞く話。なんでこうなるのか、という原因を説明しているサイトもたくさんあるので、今回はそこもはしょって、実際にどうすればよいのかという話をちょこっとだけ説明します。
Internet上で配布されているBBSスクリプトなどは、汎用性を持たせるためにどんな文字コードでも動作するようになっています。そして内部のデータ形式だけ文字コードを固定すれば、スクリプト自体の文字コードを変換(スクリプトによっては、出力に使用する文字コードを指定できるものもあります)してやるだけで、あとはShift_JISだろうとEUC-JPだろうと動作するためです。もちろんデータファイルの文字コードは固定されていますので、別の文字コードで出力するスクリプトにもそのまま流用できます。
ほとんどのスクリプトにおいて、これを実現するためにjcodeという日本語コード変換ライブラリを利用していますが、このjcodeのconvert関数に渡すとき、入力された文字コードがどれなのかが分からないため、自動判定で渡します。
このとき、入力された文字が半角カタカナのみの文章(あるいは半角・全角が混ざった短い文章)の場合、jcodeは文字コードを正常に識別できなくなり、結果文字化けが発生する、ということです。 これはjcodeの問題ではなく、半角カタカナの文字コードが原因で発生します。
これを回避するには、jcodeに自動判別で渡さなければよい、つまり入力される文字コードも、出力される文字コードも固定すれば良いわけです。(スクリプトによっては出力に使用する文字コードを指定しているのにもかかわらず、jcodeに渡すときに自動判定にしているものもあります)
具体的には、
&jcode'convert(文字列へのポインタ, 'sjis');
と、出力文字コードは指定しているのに入力文字コードを指定していない場合、以下のように入力文字コードも固定してしまいます。
&jcode'convert(文字列へのポインタ, 'sjis', 'sjis');
こうすることで、半角カタカナの文字化けを回避することができるようになります。
ちなみにtackynoteの場合は322行目を(メール送信機能を使用する場合は1307行目、1310行目、1339行目も)、tackynotespの場合は496行目、519行目を(同じくメール送信機能を使用する場合は1953行目、1956行目、1985行目も)、それぞれ変更してあげてください。
というわけで初回で見てきました。
15分しかないのでどうなることやら…と思っていましたが、最初5分はムービー、その後10分ほど歌詞付きの「きみのためなら死ねる メインテーマ」を歌って終了という、かなりコンパクトな流れ。コンパクトといっても、もともとのコンセプトがミニミニライブなのでこんなもんじゃないでしょうか。
初回は100人弱が集まっていましたが、微妙な盛り上がり加減でした(笑) (それでも最後のほうではちゃんと Rub It! と掛け声がかかっていましたが)
ところでスーパーラバーズの中に社長が居た説があるんですが、これ本当ですかね?(→
本当でした。おまけに
ITmediaにもリンク。)
報告ということで。
ヨドバシで予約したので、せっかくのお祭りだし…ってことで朝6時50分に攻めようと思ったものの、気合が足らず新宿駅に7時過ぎ到着。(※ビックは当初6時55分ってTVCFで告知がありましたが、当日は50分になってました)
着いたのは7時半ごろだったと思いますが、本当にガラガラでした(笑) (→各種ニュースを見る限り、発売直前はそれなりの人数が行列作っていたようですね。ある意味遅れて正解だったのかも^^;)
当日購入も受け付けていたくらいなので、在庫は多くはなくてもそれなりにあるのかもしれません。(週末まではちょっと厳しいと思いますけれども…)
とりあえずNDSにまわるメイドインワリオを突っ込んでみましたが、ちゃんと動きました(笑)
少し前に引越ししたというエントリを書きましたが、今回業者さんに頼んで引越しをしたんですね。2年前に羽村から杉並に越したときは○リさん○ークの○越社だったんですが、今回は○カイ○越○ンターを選択、引越しをお願いしたのですが…
これがまた手際が悪いわ、ちゃんと梱包しないわで最悪でした。配送物品にコンピュータがあるのにエアキャップも無いってのはどういうことでしょうか。ホームページには、「電化製品は毛布などでくるみます」みたいなことが書いてありますが、ほとんどはダンボールに入れられただけでした。
しかもそれで57,750円取られ、散々でした。(ちなみに前回は1月の引越しで31,500円) あれですね。TVCFにだまされてはいけないという典型的な例ですね。
とまあ引越し業者に憤怒したのもつかの間、今度は家具を購入するため○印○品に注文。ここから配送を行う業者は○ovingというところらしいのですが、ここがまた「一番遅い便で午後2時~午後4時、一番早い便で午前9時半~午後1時半です」とかサービス精神のカケラもないことを言うわけですよ。当然仕事してるわけで、結局休みの日に持ってきてもらうことにしました…
後者はどうにも出来ないので、さっさと(検閲削除^^;)って感じなんですが、前者についてはネットなどで調べれば分かると思いますので、皆様はこういった目に遭われませんようにご注意を…
今年ももう最後の月ですね。なんとなく、ではありますが、年間を通じて大きめの地震が多かったような気がします。(特に後半戦に集中していますが…)
さて、年末といえば年末商戦ですが、今年はNDS対PSPという構図が既に出来上がってますね。PSPは先日の楽天スーパーオークションで、30,000円という非常にやる気の無い価格で入札してみました。結果はかなり酷いことになってましたが、まあ入手できなくても別にどうでも、という感じだったりします。^^; (というか30数万も出して欲しいものかどうか、と思うのですが)
個人的には、”おもちゃ”であることを貫いたNDSを推したいのですが、兎にも角にも今後のソフト次第ということで。
”ポータブルプレーヤー”のPSPと”おもちゃ”のNDS、どちらも面白いことになりそうです。
タイトルどおり、一週間ぶりの更新となってしまい申し訳ありません。この一週間何をしていたかというと、引越しに明け暮れておりました。
本来引越しは休みの日にドンとやってしまうのが一番楽だしスッキリするんですが、休日は引越し代金も高くなってしまうので意地でも平日に、ということを考えていたら、今週は午後出社(夜22時まで)という勤務だったため、午前中に引越し→午後会社というのを毎日繰り返していました。(おかげで毎日リポD投入^^;)
で、土曜日は休みだったのでようやく片づけが終わり、こうやって更新も出来るようになったというワケです。(メインマシンは一番最後に完了したのでなおさらだった、という)
あと免許の書き換えとか細かい処理が残っているので、しばらくは落ちつかなそうですが、またちょくちょく更新していきますのでよろしくお願いいたします。
松平健が「キボンヌ」って…
«Prev ||
1 |
2 |
3 |...|
35 |
36 |
37 |...|
39 |
40 |
41 ||
Next»