| < 2007年5月 > | ||||||
|---|---|---|---|---|---|---|
| 29 | 30 | 1 | 2 | 3 | 4 | 5 |
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | 1 | 2 |
次の月: 2007年6月
| < 2007年5月 > | ||||||
|---|---|---|---|---|---|---|
| 29 | 30 | 1 | 2 | 3 | 4 | 5 |
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | 1 | 2 |
Windows 版 iTunes で管理していた音楽ファイルの山を、Mac に持ってきたら盛大に文字化けることがある。
原因は、Mac 版 iTunes が、mp3 ファイルのタグに保存されている ASCII 文字列を、「ISO-Latin-1 から ASCII に変換」してから表示するため。
この変換と逆の変換は、iTunes の「ID3 タグを変換...」で指定できるので、とりあえず読めるようにはできる。しかし、変換すると(当然だけど)Windows 版 iTunes やほかのプレイヤーでは正常に表示されない。
Unicode として保存してしまえば問題はないので、ちょこっとプログラムを書いてみた。mp3-uniencode
これで 10GB もあるファイルを延々変換、これで解決。あぁ、疲れる。
ちなみに、mp3 のストリーミングを Mac の iTunes で再生すると、タイトルとかの日本語が文字化ける。これも同じ問題。
テーブルは解析済みなので、あとはストリーミングサーバ側で、User-Agent に iTunes が来たら「まともに表示されるように」逆変換してやればいい。なんて泥臭い実装なんだろう。
携帯電話を変えました。3年弱のつきあいの A5405SA から、W51SA に。Java で暴れられたり、HTTPS なページでやりたい放題できそうなところに惹かれて。
でまぁ、手始めにウチの https ページを開いて、裏にある管理用コンテンツで遊ぼうと思ったわけですよ。
そしたら、まぁ、接続したときに「この証明書大丈夫?」的ないつもの警告が出ます。これは普通。というか出ないと困ります。で、証明書は OK なんで、「受け入れる」ように指示すると、本体ごと落ちました。
最初は買ったばっかりだったから、電池?とかいろいろ疑ってやったんですが…。はぁ…。
で、それでおとなしく引き下がるわけがなくて、いろいろチェックしてみたのです。すると、ウチの SSL 鍵、4096 ビットもあったんですネ。生成時、よっぽど暇だったんでしょう。
この鍵を捨てるのはもったいないので(ぇ)、ほかのポートにほかの短めの鍵を生成して割り当ててみると、見事動作。
SSL のライブラリにバグとか、大丈夫なのかね、これ…。
ちなみに、開発のほうは変な方向に進んでて困ってます。明日は iTunes と戦闘の予定。…予定。
boost を触ったあとに Cocoa を使ってると、どうも NSIterator *iterator; とか寝ぼけたことを書いてて困る。
IRC で Wake on LAN という話題が出たので、Luna にすっかり仕事を奪われてる serenia を寝かせることに。あぁ、かわいそうに(誰のせいだ
Wake on LAN の設定は "Magic Packet" に。"Magic Packet and Pattern Matching" は、0xFF*6+MAC*16 な Magic パケット以外にも反応するようで、ほかのマシンを起動すると勝手に起きたりするので却下。
起こすためのソフトは Perl でー…と思ったら、MAC アドレスに含まれる 0x00 のせいか、どうもうまく扱えない。面倒なので C でさくっと。一応ファイルも置いてみる。wakeonlan.c
あとは .tcshrc に alias を指定して環境完成。ほんとは widget かなんかから起こせると便利なんだけど、まぁ、暇なときにでも。
iTunes のストリーミング、タイトル情報(メタ情報)が文字化けて困る。Windows では正常なのに、なんで Mac はダメなんだ…。
いろいろ試したものの、UTF-8、UTF-16BE/LE、EUC-JP、Shift-JIS、ISO-2022-JP、全部ダメ。ここまできれいに全滅してると、最上位ビット落としてるんじゃ…?とか思っちゃう。2回エンコードとかは面倒だからやりたくないし…(不可逆だと困るしね)
Windows で正常に表示される mp3 ファイルも文字化けたりするから、文字コードの処理自体が違うんだろうけど…。
日記書いてたら落ちた。luna が。システムログ見ても何も書いてないし……なんだったんだろう。マシンとしては起きてるけど、ディスプレイは落ちてるし、プロセスは全部止まってる感じ。panic かなぁ。
というか、未だに懲りずにブラウザ上で書いてるなぁ…。https は「戻る」とかやっちゃうと、フォームの中身が飛ぶことがあって怖い…。(テキスト編集中に 何か+← とか押してよく orz)
Created on Apr 4 2002 とか書いてある、設定の管理クラス CCPreference を修正・整理中。読んでると、当時の自分にしてはがんばったじゃないか、とか思う。
しかし「このメソッド名はどうなのよ」とか「あ、ここ手抜き修正だ」とか、ボロがいっぱい。場当たり的修正の跡はさすがにヒドイ。
ちなみに、Interface Builder でインターフェースを作って、チェックボックスとかテキストフィールドに tag 番号をつけ、それと Property List ファイルに tag 番号と設定の名前と種類を表す string とのペアを記述すれば、あとは自動で全部やってくれることが目標。
再利用を前提として設計をするのは大変だし、無駄も多い。けど、(再利用のときに改良できる程度に)読みやすくしておくのは無駄にならないから、やって損はない、かな。
いろんな意味で。とりあえず、夜行バスがトリガーを引いてくれたアレルギーには、そろそろ静まって頂きたい今日この頃です。
ゴールデンウィークは某イベントに参加してきました。そこそこ楽しかったですが、お休みが吹き飛んだのは許しがたい。
あまりに疲れた&腹立たしいので、ちょこちょことサボることにしました(ぉぃ
サーバで動いてる FTP に繋がらない〜という報告が。しかし、使ってる環境すべてから問題なく通る。外から直接でも。
約3時間ほど、友人の助けを借りて調査の結果、PASV でローカルアドレスを吐いてることを発見。ports から ProFTPD をインストール、MasqueradeAddress を指定して解決。
ちなみに、私の環境で問題が出なかったのは、全部コマンドラインの ftp を使ってたからで、EPSV が使われたためでした。気づかないってば… orz