2006-11-24 (Fri)
_ [comp] audacious + –enable-chardet + taglib
yazさんから丁寧な解説付き返事をいただく。ありがたや。まとめると、
- chardet を有効にして問題が起こるのは taglib の仕様のせい。
- それを解消するためのパッチが taglib-1.4_wchar.diff。
- taglib-1.4_wchar.diff を taglib に取り込んでもらえれば、chardet を常に有効にしても問題ない。
手元では taglib-1.4_wchar.diff を当てた taglib を使用中なので問題は起きなかったようだ。 なお、taglib の仕様の問題について解説していただいたのをまとめると、
- taglib の API では UTF-8 か latin-1 を指定してタグ文字列を得る。
- taglib は内部表現に UCS-2BE (Universal Character Set coded in 2 octets Big Endian) を使っている。
- UTF-8 が指定されたら内部で UCS-2BE → UTF-8 の変換を行う、latin-1 が指定されたら単に UCS-2BE の下位バイトだけを返す。
- chardet ではタグ文字列を得るのに latin-1 を指定する。もしタグ文字列が UCS や UTF-8 の場合、UCS-2BE の上位バイトも使う可能性があるので、文字情報が損われる。
- taglib-1.4_wchar.diff は latin-1 を指定されたときに上位バイトをチェックし、上位バイトに 0 以外の値があれば文字列を UTF-8 に変換して返すようにする。taglib はタグ文字列に Unicode 系の文字が使われているときのみ UCS-2BE の上位バイトを使うので、この変換は必ず有意な UTF-8 文字列を生成する。
ということだそうだ。 audacious libtag != bmpx libtag? というのも見つけた。
2006-11-23 (Thu)
_ [debian] 続・incoming.debian.org で Content-Type: text/pgp
privoxy の action に
{ +content-type-overwrite{text/plain} }
incoming.debian.org/.*\.changes$
としてやると見えるようになった。こんな対処でいいのか知らないけど。
_ [debian] 続・audacious + –enable-chardet
yazさんに事情伺いのメールしてみた。 taglib のほうのからみもあるのかなあ。
2006-11-22 (Wed)
_ [debian] ptex-jisfonts 2-19
ようやく xdvik-ja と vfdata-morisawa5 がそれぞれ 22.84.8-j1.22-2 から 22.84.10-j1.33-1 に、0.0.20020122-11 から 0.0.20020122-12 に上げられるようになった。 vfontmap のフォーマットが変わっていたらしい。
_ [debian] incoming.debian.org で Content-Type: text/pgp
いつのまにか *.changes が Content-Type: text/pgp で返ってくるようになってる、前からだったのかもしれないけど。どちらにせよ、見ようとするとダウンロードになってしまう。これを Fx 内で表示させるようにするにはどうすればいいんだろ。