Archive for 3月, 2004

サッカー

水曜日, 3月 31st, 2004

確信できた。戦術とか全然なしでやってるだろ。A代表……グダグダにも程があるような。しっかし、ジーコの考えってのはタレントをそろえさえすれば勝てるんだって感じですか?

今回もインタビューでジーコ監督からどんな指示が?と中田に聞いてたが案の定、そんなのはジーコに聞けみたいな態度だったのが印象的(笑)
ほんと、クレバーな指示がひとつもなかったんだろうなぁ……

正当な使い方(笑)

火曜日, 3月 30th, 2004

” border=”0″>
< $MTPmawsProductName$>


表紙だけで、スルーする男はかなり多いんでしょうね。高校~大学生くらいの男が一番感情移入できる作品なので、そういった層の人に特におすすめです。

Poor man’s aws.pl

火曜日, 3月 30th, 2004

ってことで。Pmaws.plの動作確認。ついでにprocestags.plも同時に導入。はてさてうまくいきますかね。

なんとなくマトリックスレボリューションズを例題に。
画像呼び出し(サムネイル)

” border=”0″>
< $MTPmawsProductName$>

ぶっちゃけたはなし↑買うんだったら↓買うな俺なら。安くなったし(笑)

” border=”0″>
< $MTPmawsProductName$>

続 aws.pl

火曜日, 3月 30th, 2004

さすがに悪戦苦闘するのイヤになったのでXML関連のモジュール使わないのを結局、作った。
コンセプトは「ASINサーチが使えればそれで良いや」ですので機能は貧弱貧弱ゥなプラグイン。MTの日本語パッチ(UTF8版)動いてれば動くでしょう。
[code]
# Poor man’s aws.pl
# (C)2004 MDR
# patched MovableType 2.661(Japanse utf-8)
# this plugin doesn’t need XML::* modules.
# ASIN search
# amazon.co.jp

package MT::Plugin::Pmaws;
use MT::Template::Context;
use LWP::Simple;
use Jcode;

my %q;
$q{’dev-t’} = “Your Developer’s token”
$q{’t'} = ‘objblo-22′;
my @pmaws_tags = qw(url ImageUrlSmall ImageUrlMedium ImageUrlLarge ProductName Asin Manufacturer Availability ListPrice OurPrice );

MT::Template::Context->add_container_tag( Pmaws => \&pmaws );
foreach my $tag ( @pmaws_tags ){
MT::Template::Context->add_tag( ‘Pmaws’.$tag => sub { my $ctx = shift; detail($ctx, $tag)});
}
MT::Template::Context->add_tag( PmawsAssociateUrl => \&associateurl );
sub pmaws
{
my $ctx = shift;
my $arg = shift;
my $res = ”;
my $builder = $ctx->stash(’builder’);
my $tokens = $ctx->stash(’tokens’);
my %detail;
$q{keyword} = $arg->{keyword};
$q{mode} = $arg->{mode};
my $url = ‘http://xml.amazon.co.jp/onca/xml3?’;
$url .= sprintf(”t=%s&dev-t=%s&AsinSearch=%s&type=lite&f=xml&locale=jp”,$q{’t'}, $q{’dev-t’}, $q{’keyword’}, $q{’mode’} );
my $xml = LWP::Simple::get($url);

my $f=0;
foreach my $line ( split /\n/, $xml ){
if( $line =~ /

/ ){ $f=1; %detail->{’url’} = $1;}
if( $f == 1){
if( $line =~ / (.*)< \/ProductName>/ ){ %detail->{’ProductName’} = $1 }
if( $line =~ /([0-9A-Z]+)< \/Asin>/ ){ %detail->{’Asin’} = $1 }
if( $line =~ /(.*)< \/ImageUrlSmall>/ ){ %detail->{’ImageUrlSmall’} = $1 }
if( $line =~ /(.*)< \/ImageUrlMedium>/ ){ %detail->{’ImageUrlMedium’} = $1}
if( $line =~ /(.*)< \/ImageUrlLarge>/ ){ %detail->{’ImageUrlLarge’} = $1}
if( $line =~ /([0-9\/]+)< \/ReleaseDate>/ ){ $detail->{’ReleaseDate’} = $1;}
if( $line =~ /(.*)< \/Manufacturer>/ ){ $detail->{’Manufacturer’} = $1;}
if( $line =~ /(.*)< \/Availability>/ ){ $detail->{’Availability’} = $1;}
if( $line =~ / (\\[0-9, ]+)< \/ListPrice>/ ){ $detail->{’ListPrice’} = $1;}
if( $line =~ /(\\[0-9, ]+)< \/OurPrice>/ ){ $detail->{’OurPrice’} = $1;}
if( $line =~ /(.*)< \/Author>/ ){ $detail->{’Authors’} .= $1.’,';}
}else{;}
if( $line =~ /< \/Details>/ ){$f = 0;}
}
foreach my $tag ( @pmaws_tags ){
$ctx->stash($tag, $detail{$tag});
}
if($q{t}){$ctx->stash(’AssociateUrl’,”http://www.amazon.co.jp/exec/obidos/ASIN/$q{keyword}/$q{t}”)};
defined( my $out = $builder->build( $ctx, $tokens )) or return $ctx->error($ctx->errstr);
$res .= $out;
return $res;
}

sub detail
{
my $ctx = shift;
my $key = shift;
return $ctx->stash($key);
}

sub associateurl
{
my $ctx = shift;
return $ctx->stash(’AssociateUrl’) || ”;
}

1;
[/code]
使い方ー。
$q{dev-t}にDeveloper’s tokenを書き込んで保存。
Pmaws.plとしてpluginディレクトリに入れればOK.
で↓みたいにテンプレートに書く。でRebuild
[code]

< $MTPmawsProductName$>
Posted in Hack? | No Comments »

花見

月曜日, 3月 29th, 2004

いきなり月曜日に花見。会社のだけど。
今日が一番いい感じの花の開き具合なのではなかろうか。

まだまだ続く aws.pl

月曜日, 3月 29th, 2004

実はまだ動作させられてません。基本のXML関連のモジュールが無いとか、かなりのしょんぼりな内容の問題なのは明確なんですが、加えてPerlのバージョンにも難があるようなので、いやはや……といった状況。
MovableTypeを動かすのに使ってるバージョンが5.005なのはいいんですが、ちょっと調べたらpatch level 2でした……今ならpatch level 3じゃないか?

あと、このサーバは仮想root環境だったりするのでいろいろややこしいんですね。
個人的にPerl5.6.1が使いたくて、この環境でmakeしたことがあるんですが……。Perlを使ったCGIプログラム中でモジュールを利用するのに、BEGINで@INCをいじる必要が発生してしまって汎用性がガタ落ち。結果、あちらを立てればこちらが立たずのスパイラルに突入。そんなわけで余計な苦労をするのには、いい加減疲れた。というわけで管理会社提供の環境で整えるかなぁ……と考えてMTは管理会社提供の環境で立ち上げたんですが、どちらにせよいろいろ不便だなぁと世間の厳しさをなんとなく実感してる今日この頃です……。

乱入0の日

日曜日, 3月 28th, 2004

ありえない。
松プリ、土曜日夜にKOFやってる人間も、GGXXやってる人間もいないってのはあり得ないって。結局200円使ってKOF2002の1人プレイを4回ほど。乱入してくる対戦相手もいないからMAX龍虎乱舞の練習しただけ……今日の打率はまぁまぁでした。超烈破弾で返されたのには参ったけど(間合いのせいだけど)。

で、なんとなくやるもの無いかなぁと店内をふらふらっと。先日のゲームやり放題(2ヶ月に1回やるそうな。次回は5月)のとき、とりのがしたカエルくんをGETしようかと一瞬迷ったけど結局やめ。やけに難易度高いんだよコイツ(前回あきらめるまでに、いくら投資したか考えると泣ける……)。で、321氏がコツをがあるというので聞く。が、テンションも実際のところあがってなかったので結局チャレンジはせず。ウシくんだけってのはなんかみっともないので在庫が無くならないうちにそろえたいんですけどねえ。

結局、今日はな~んにも盛り上がりそうないので店をあとに。
車に乗り込み、そういえばと何を血迷ったか平食をナビで検索してる私(笑)。
前回、平食に行ったのはマーヴルVSカプコン2の稼働開始した頃。あれから、どれくらい変わってるのかを確かめてみようかな、と。あと最近、連邦ネタになってたのも行こうかなと思いついたきっかけなのは間違いないです(笑)。

高速(うえ)をつかわなかったんで1時間強で到着。
んー……ふぁんたじっくだ。未だに自販機100円だしさ(笑)
VF4対戦台がずらり。脇に頭文字D3が対戦筐体が。あと麻雀格闘クラブとスロットがいっぱい。VF4のもりあがりっぷりが半端じゃないなぁと感じながらプライズ系の筐体があるエリアをふらふら。
微妙…。
うーむ。結局私何もしてない?

あ、せっかくなのでおでん食べました。5品で300円也。

あ、UFOキャッチャーで工口DVDでもGETすればネタになったかもしれないんだった。
惜しいことをしたかも(笑)

楽遊、のぞきわすれたのが一番の失敗だよな>私(汗)

Perlクイズ

金曜日, 3月 26th, 2004

冷静になって考えた。あーだ、こーだやらなくてもこれだけでよかった。
リソースの無駄遣いしたプログラムばかり組んでちゃいかんね(笑)

[code]
@score = sort {$a < => $b } @score;
for my $n (0..9){
print “$n | “;
foreach( @score ){
if( ($n*10 <= $_) and ($_ < ($n+1)*10) ){
print $_ % 10;
}
}
print “\n”;
}
[/code]

Perlクイズ

金曜日, 3月 26th, 2004

来ました新しいのが。問題はこちらのバックナンバーを参照してください。
うーん。今回のクイズは解法に個人差がものすごくありそうです。
もともと同じ手段をとっているのに異なる書き方ができる言語なんで、正確に伝えるのが難しいんですが今回のは手段が多そう、という意味です。……わかりにくいなぁ。
さて、私の短絡した思考で作った今回の解答がこれ。

題意を満たすサブルーチンBuildTreeを作成。
問題文の最後に追加すれば動作します。
[code]
sub BuildTree
{
my %tree;
for my $i(0..9){ @{$tree{$i}} = ();}
foreach( @score ){
$_ =~ /(\d{0,1})(\d)/;
if( $1 ne ”){
push @{$tree{$1}}, $2;
}else{
push @{$tree{0}}, $2;
}
}
for my $i(0..9){
print “$i | “;
print sort(@{$tree{$i}});
print “\n”;
}
}
BuildTree();
[/code]

最初、問題文中で「use strict」が宣言してあるのを無視してたため、Arrayリファレンスの初期化を忘れてて嵌ったのは内緒。つづけてネタっぽい解答も考えてみようかな。

って次に思いついた方が一般的っぽい解答なのは何故だろう……(汗)
こんなの。
[code]
my %tree;
for (0..9){@{$tree{$_}}=();}
foreach( @score ){
my $q = int($_ / 10);
push @{$tree{$q}}, $_ % 10;
}
foreach( sort keys %tree){
print $_, ” | “, sort(@{$tree{$_}}), “\n”;
}
[/code]

ネタの才能は無いなぁ。やっぱり。

GUNSLINGER GIRL(3)

金曜日, 3月 26th, 2004

ガンスリ連載開始以来、大王本誌の購読してたんですが先々月あたりからやめて単行本購読に切り替えました。付録のおしつけ感に耐えられないってのもあります……。

GUNSLINGER GIRL(3)は最寄りの本屋にて購入をしたんですが、単行本コーナーで4列程度の平積みになっててあからさまに「別格扱い」でした。2巻発売時と比べ、えらい変わり様です。
なにせ2巻は初回入荷分が3、4冊でしたので。しかし、アニメ化以後だからといってもこの辺り(私の住んでるところ。ド田舎)で視聴できた環境の人間は相当限られることは間違いなく、今回の変わり様には正直戸惑いましたねえ。あまりの変わりっぷりだったので。
時期的に、ゲーム同梱DVD(CMだとそう言ってる)を売るためのマーケティングの一環ぽいような気もしないでもないですが。(ぶっちゃけ正解のような気がするので、それはなんか楽しくないですね……)