狐の王国


2007年02月12日(月) [過去の今日]

#3 unzipのファイル名がばける

たまにunzipで解凍したファイルの名前が化けることがある。Shift_JISでもUTF-8でもEUC-JPでもISO-2022-JPでもない妙なコードになる。 たぶんunzipのバグでマルチバイトなファイル名の取り扱いに問題があるんだと思うが、さすがにCで書かれたものをおっかけてる暇も無い。

で、CPANを探したら Archive::Zip を見つけたので、 ここらへん とArchive::Zip(3pm)を見ながら適当に書いてみた。

#!/usr/bin/perl
use strict;
use warnings;
use utf8;

use Archive::Zip qw/:ERROR_CODES/;
use Encode::Guess qw/ascii euc-jp shiftjis 7bit-jis utf8/;
use File::Basename;
use File::Path;
use Term::ReadKey;

my $encoding = $ENV{LANG} =~ /euc-?jp/i ? 'euc-jp' : 'utf-8';
binmode STDOUT, ":encoding($encoding)";
binmode STDERR, ":encoding($encoding)";


my $file = $ARGV[0];
my $zip = new Archive::Zip;

$zip->read($file) == AZ_OK or die "Cannot read $file\n";

my $str;
foreach my $f ($zip->members)
{
    $str .= $f->fileName;
}

my $dec = Encode::Guess->guess($str);
ref $dec or die "Cannot recognize files charset\n";

ReadMode 3;

foreach my $f ($zip->members)
{
    my $utf8file = $dec->decode($f->fileName);
    my $outfile = Encode::encode($encoding, $utf8file);
    $outfile =~ s/\/\.\.+//g;

    my $outdir = dirname($outfile);
    mkpath $outdir if (!-d $outdir);

    if(-f $outfile) {
        print "$utf8file exist. overwrite?(Y/n)";
        my $char = ReadKey();
        if ($char eq 'n') {
            print "\n$utf8file skip!\n";
            next;
        }
    }
    print "extract " . $utf8file . " ...";
    $zip->extractMember($f->fileName, $outfile);
    print "done.\n";
}

むう、日記に張るにはちと長いかな。まあいいや。

とりあえずこれで普通に解凍できるってことは、zipファイルには問題無しだな。やっぱunzipのバグかー。どこにそんなバグあるんだろ。debianのsid環境なんだが、etchにも同じバージョン入ってるのかな。だとしたらリリース前にBTSしないとまずいかなあ。

しかし再現データ作れないんだよな……。Shift_JISのファイル名ってだけなら別に問題無いみたいだし……。

(@996)

この記事のURI

#2 オーラやら前世とカルト教団

ゴールデンタイムにオーラやら前世やら、本気ですか? という記事。

うーん、別にTV番組のことなどどうでもいいのだが、霊能者とカルト教団を同一視しちゃうってのはどうなんだろ。

霊の存在というのは宗教的ではあるが、宗教以前の日本人の世界観の中に深く入り込んでる存在だと思う。だから子供たちは心霊写真が大好きだし、墓に手をあわせるのもよいことだとされている。それは霊の存在を感覚的に肯定してるからだろう。

そういう日本人の世界観にあるものを否定しないとカルト教団のテロが再発するっていうなら、それは日本民族の欠陥としか言いようが無い。

非科学的なものを捨て去った世界がいかにどうしょうもない世界か、理解しているならいいんだけどね。

って「ニセ科学」ってカテゴリーで書いてるのか、この人。そもそも科学以外を全部ニセ科学でくくってるのか?

(@711)

この記事のURI

#1 たまに壊れるext3

cronのレポートメール見てみたら、なぜかfj日報が出てきたもんでびっくりしましたよ?

どうもファイルシステムがおかしいみたいなので、再起動してfsck。なんか自動だと失敗しやがるんで手でやるはめに。

そしたらちゃんとcronのリポートメールが読めた。うーん、何で壊れたんかなあ。やっぱし2.6.18使ってるのがわるいのか? debianパッチ当ててないはずだが。

そろそろ2.6.20にしたほうがいいかのう。

(@056)

この記事のURI

2006年02月12日() [過去の今日]

#4 agile

アジャイルって昨今の流行語の中で一番よくわかってなかったのだが、けっこう素で実践してる部分が多い。それが自分に取っては普通だったからそうしてたまでなんだけども、誤解を受ける場面もけっこうあった。

そんときこれを見せてあげれば、わかりやすく説明できたのかなあとちょっと後悔も入るんだが、まあ過ぎたことはしょうがないな。次の機会にでも、ちょっと説明してみようかなあ。

(@691)

この記事のURI

#3 pangoが犯人だった

こないだから困ってたFirefoxでボールドが出ない問題は、Pangoという奴がenableになってたせいだった。はずしてコンパイルし直したら動いた。

で、このPango、IRCで教わったのだが、ギリシャ語の「Παν」(Pan、すべての)と日本語の「語」を組み合わせて作った造語だそうで。「Παν語」、つまりすべての語という名の通り、国際化テキストレンダリングのフレームワーク提供を目指してるらしい。 Pango プロジェクトでその様子が見えるが、まあせっかくなんだからいいものになってもらいたいなあ。

しかし、今現在は泣ける程に要らない……。どうにかならんのかな……。

(@679)

この記事のURI

#2 firefox のボールド問題

お? mozilla-japan.orgから落してきた1.5.0.1バイナリではきちんとboldも出るな。てことはdebian patchかビルド法に問題があるのか?

(@524)

この記事のURI

#1 Sageの未読スタイル

ボールドになってるので、ボールドが出なくなってしまった今のFirefoxでは未読がさっぱりわからなくて不便すぎる。UserContent.cssで上書きできるかと思ったができないし、しょうがないのでSageのソースを拾ってきて改変。

当該箇所はsage.jarの中のskin/classic/sage.css。

#rssItemListBox > listitem {
  font-weight:  bold;
}

#rssItemListBox > listitem[visited="true"] {
  font-weight:  normal;
}

こんなふうになってるので、

#rssItemListBox > listitem {
  font-weight:  bold;
  background-color: #9beee7;
}

#rssItemListBox > listitem[visited="true"] {
  font-weight:  normal;
  background-color: white;
}

こんな感じにしてみた。

うーん、わかりやすいけど見にくいな……。デザインセンスかもん……。

(@398)

この記事のURI

2005年02月12日() [過去の今日]

#2 写真付き年賀状を盗んだロリコンのアルバイト配達員(39)逮捕、10歳女児に文通を迫る

ひでえ話。確かに郵便って個人情報だだ漏れだし、写真もあるとなればなあ……。

セキュリティってこういうところから気をつけなきゃいけないから難しい。大量にいる配達員全員粒揃いになんてできないしなあ。

(@910)

この記事のURI

#1 萌え〜〜

昼間小学校3年と4年になる親戚の姉妹が来ていて、一緒にテレビを見ていたところ、 石塚英彦 が秋葉原の街で食い倒れをやっていた。

よし、まずはケバブだな。そしておでん缶、最後はメイド喫茶で締めだっ! とか思ってたらケバブはスルー。おでん缶はチチブ電器のおじいさんまで出てきて面白かったが、蔵前橋通りのほうまでいったはしっこの店ばっかでイマイチ。

しかし、やはり外せないと思ったのかメイド喫茶はいってくれたね。一緒にいたヲタクさんたちもノリノリで「萌え〜〜〜〜」を連発。いしちゃんも「萌え〜〜〜〜〜」とか叫んでて大笑い。

が、それを見ていた子供たち、意味もわからず「萌え〜〜〜〜〜〜!!」と叫びまくり。おいおい、将来大丈夫か。お兄ちゃんちょっと心配ですよ?

(@723)

この記事のURI

2004年02月12日(木) [過去の今日]

#2 PHPコーディング規約

むう、 PHP Coding Standard ってのと、 PEAR 標準コーディング規約 ってのがあるらしい。

俺は基本的に GNU コーディング規約 を参考に perl でも書いてたので、比較的近い雰囲気の PHP Coding Standard を使いたいのだが、どうもEmacsのphp-modeはPEAR標準に合わせて作られてるらしい。おかげで波括弧のインデントがおかしくなっちゃったりして、かなり悲しい。

むー、どうしたもんかなあ。

(@611)

ぐふ:

波括弧一つ間違えてただけだった……。どうりで変な動きすると……。

はい、php-modeでもGNUコーディング規約通りのコードが書けます、ああ、とっても使いやすいよ! ありがとうphp-mode!

(@624)

この記事のURI

#1 php-elisp

そろそろPHPでも覚えるかと導入してみたphp-elispだが、手元のemcwsで動かない。まあ、/usr/localに突っ込んでstartup.elでdebian-startupをかましてるという乱暴な使い方をしてるのでこういうトラブルもしょうがないのではあるが……。

原因は簡単な事で、まずload-pathが通ってなかったこと、autoloadの際に "php-elisp/php-mode" という指定になってたため、php-mode.elcが読み込めなかったこと。debian配布のemacs21は/usr/share/emacs21/site-lispにもpathが通ってるってことだろうか。

んー、よくわからん。とりあえず/etc/emacs/site-start.d/50php-elisp.elのload-pathを追加するところのコメントを外し、同じファイルのautoloadの"php-elisp/php-mode"を"php-mode"に変更して起動できた。

(@358)

この記事のURI

2003年02月12日(水) [過去の今日]

#2 Y!BB

ここしばらく、ログがBOOTPのリクエストパケットで埋まってる。なんでそんなものがくるのか謎。MACアドレスもバラバラだし、最近出て来たルータにDHCPより先にBOOTPのリクエスト投げるのがあるんかな?

それにしちゃ数が多いなあ……。

(@554)

この記事のURI

#1 今年のF1マシンはF2002の真似か?

なにげにウェブをうろついていたら、 今年のF1マシンがF2002の真似であるとは言い切れない という主張をしている人を見付けた。

このへんはしょうがないんだよなあ。速いマシンを見れば参考になる所を探し出すのはデザイナーにとっても習性みたいなもんだろうし、プライドよりも結果がナンボの世界だしね。それにいいところは素直に採り入れる、というのも一つのデザイナーとしての手腕だろう。ジョン・バーナードの作った96年のフェラーリなんぞ、オリジナリティを追求したのかひどい有り様だった。

また同じレギュレーション下にあれば導き出される答えも一つ、というのも間違ってはいないはず。現状のF1のレギュレーションは厳しすぎるから、あまり選択の余地もないんだろうね。そして似たりよったりのデザインが出てくると。

もう少し、デザイナーの思想や好みやセンスが現れてくるようなレギュレーションにして欲しいなと、いつも思うのである。

(@535)

書き忘れ:

そういうわけだから、真似だと批判するのもばかげてるし、真似じゃないと反論するのもくだらないと思うのだ。真似はレギュレーション違反じゃないんだし、速けりゃそれでいいのだよ。

(@541)

この記事のURI

2002年02月12日(火) [過去の今日]

#2 devfsd入れ忘れ

なんていう馬鹿な事をやってしまいました。それも友人のマシンで(笑)
カーネルにdevfsサポート入れて、devfsd入れずにリブートすると、起動しなくなるのね(;-;)
対処方が分からず右往左往、すっかり迷惑かけてしまった。結局、/をremountして、/usr、/varなんかのもんもmountして、devfsdのパッケージをCDからdpkg -iしてなんとかなりました。libc6にしか依存してないから、普通に入ったね。
いやー、あせったあせった。
(@455)

この記事のURI

#1 おたく度チェック

なぐら先生の日記 でハッケソ。

グラフ 結果値
(単位:パワー )
マニア度  79パワー
危険度  81パワー
萌え度  90パワー
煩悩度  74パワー
さわやか度  31パワー
迷惑度  65パワー
潜在能力  86パワー


あなたのマニア度は79パワー 。普通のマニア度です。
あなたは知らず知らずのうちに何かのマニアになってしまうかもしれません。
しかし、人間何かに関心を持つのは非常に良い事。
この程度のマニア度は丁度良いのかも。


あなたの危険度は81パワー です。普通ですね。
このままいけば何事も無くすごせるでしょう。

あなたの萌え度は90パワー !つねに萌え萌えです。
あなたはおそらく、ゲームやアニメ、漫画を見るたびに「○○ってかわいく
(かっこよく)ない?」
とか言ってる事でしょう。気持ちは私もよくわかります。しかし、もっと現実を
見つめて下さい。
確かに現実の異性は自分の思った通りにいかないかもしれませんが、それもまた一興。
きっとゲームよりも面白い事でしょう。

あなたのさわやか度は31パワー です。さわやかとはちょっと縁遠いかも。
知らないうちにファッション等、人目を気にしなくなっているのでは?
もちろん、外見なんて自分が気にしなければいいのです。人間は中身!
しかし、外身を気にするのもたまにはいいかと思いますよ。


あなたの迷惑度は65パワー 。普通といえる数値です。
あなたは他人が迷惑だと思うであろう事もきちんとわかっている
分別ある人間です。この調子で進んでくださいね。


あなたの煩悩度は74パワー 。一般人レベルです。
人間が生きていく上で、煩悩や欲はある程度必要なものなので
これくらいは丁度良いでしょう。オタクとしては少ないかも?


あなたの潜在能力は86パワー 。一般人レベルです。
あなたのオタクとしての潜在能力はほぼ普通の人と同じです。
これからの生活次第でどうとでもなるでしょう。
オタクになるかそうでないかはあなた次第。さぁ、どうしますか?

なんかひどい事言われてるよーな気もしないでもないが……
一番気になるのは、最終問題。

<最終問題>あなたは将来何になりたいですか?
実業家
先生
声優
漫画家・イラストレーター
サラリーマン
格闘家
父親(母親)
マ○チをメイド、あ○りを嫁さんにして一生暮したいッス!(他のキャラでも可)

他に選択肢無いんかいっ!!!
(@114)

この記事のURI

最近の記事

以上、6 日分

タイトル一覧


カテゴリ分類
Powered by hns-2.19.8, HyperNikkiSystem Project

過去にこの日記が置いてあったcgi.misao.gr.jpは廃止されました。それによって記事へのURIが変わってしまっています。cgi.misao.gr.jpをwww.misao.gr.jpと置き換えるだけで同じ記事にアクセスできるはずです。

Sugano "狐志庵" Yoshihisa(E) @ 美紗緒ネットワーク <koshian@misao.gr.jp>
日記管理ページ