2008-01-01から1年間の記事一覧

日本語メール送信

perl-users.jpのメールの送信 - モダンなPerl入門を手本にメール送信してみたらGMailで文字化けしたので添削。(あとでSVNにコミットするかなしました。) attributesにcharasetを指定して文字化け対策をしたら直った。 #!/usr/local/bin/perl use strict; u…

MacOS X 10.5のPerlのライブラリは古い。

家で使ってるMacを再インストールして、プロジェクトをSVNリポジトリからチェックアウト。 っで走らせてみたら、今まで動いてたはずのプロジェクトがメソッドがないって怒られてる。 単純に、ライブラリがサポートしなくなったのかと思ったけどCPANでドキュ…

MySQL5(MacPorts経由)とcpanのDBD::mysqlをインストール

Mac上でDBD::mysqlを入れるときにハマったのでメモ。 症状 MySQL5をMacPortsでインストールしたときに、cpanからDBD::mysqlがインストールできない。 原因 MacPortsのMySQL5のコマンドがmysql5とか、普通の名前と違う! 対処 以下のようにcpanでoを使うとい…

DBIx::Classで普通のSQL

別件で調べてたら分かったのでメモ。DBIx::Class使ってても普通のSQLが使える、 DBIx::Class::Storage::DBIを使えばできる。 my $schema = $c->model('Xxxxxx')->schema; my $dbh = $schema->storage->dbh; my $sth = $dbh->prepare("UPDATE files SET conte…

CatalystでURL最適化

Catalyst::DispatchType::Chainedを使うとスッキリしたURLで組める。似たような事はRegexやLocalRegexでも出来るけどこっちの方が重複するようなコードが軽減できる。 Chained属性に指定したPrivate Names(コントローラーのメソッド名)を使って処理をつなげ…

DBIx::ClassとSQLiteで複数のカラムをDISTINCTするとエラーする

DISTINCTで複数のカラムを指定するとエラーした。以下のようにして、複数のカラムをDISTINCTするコード $c->stash->{employees} = [$schema->resultset('Employee')->search( {'name' => {'LIKE' => '%hoge%'} }, { select => {distinct => [qw(me.name, me.…

[Flash] FlashLite2.0のloadVariablesの制限

loadVariablesとは 指定したファイルから変数を読み込む関数 Flash CS3 ドキュメンテーション loadVariables 関数 loadVariables(url:String, target:Object [, method:String]) : Void パラメータ url:String 変数が存在する絶対 URL または相対 URL。呼び…

Flash Lite 初めてやってみた。

Flash自体は2年に1回くらい触ってるくらいで、ほとんど知らない俺がFlash liteなんてやってみました。普通のFlash感覚で作ってハマった。 Flash liteをDocomo端末で見るにはインライン再生とインタラクティブ再生なんて言うのがあるんですねー。 知らんか…

クロージャ

Perlのクロージャってこうやるのか、 Rubyのブロックのほうがシンプルで好きだな。 sub aaa { my ($args, $method_ref) = @_; $method_ref->($args); } aaa('hogehoge', sub { print @_, "\n"; });

今時風の継承

PerlでのOOPで古くないと思われる実装を調べてみました。 こんな感じかなー。問題なく継承できてるはず。 package Org::Zeon::MS::Dom; use strict; use warnings; use utf8; # Cloneを継承 use parent qw(Clone); sub new { my $class = shift; $class = re…

Catalyst::Plugin::Unicode::Encodingが不思議

内部の文字コードと外部の文字コードを切り替えようとCatalyst::Plugin::Unicode::Encodingを使ってみた。解決しました。 TTを使ってる場合はUTF-8でBOM付きに保存すればOK。コントローラなどで文字列リテラルで日本語を使う場合はdecodeが必要ですけど普通…

コマンドラインで複数のファイルにパイプして処理する方法

bashで複数のファイルを一度に処理して、しかも1行で実行できます。 $ for file in ./tmp/docomo/*.eml ; do cat "$file" | perl UtaKaeruMail.pl; done

自宅サーバにSVN入れてみたけど、家で繋ぐとチェックアウトできないな。

会社で開発サーバ立ち上げに手間取っててSVN入れられないから家のサーバに入れておいたSVNが何かヘン。会社からチェックアウトすると普通に取って来れるけど、家から同じLAN内のサーバに取りいくと取れない。全く接続できないとかじゃなくてチェックアウトし…

MacOSX10.5にPerlMagickを入れる

かなり久々のエントリー。ちょっと海外旅行をしてまして全くプログラムしてませんでした。帰ってすぐに会社でImageMagickを使うことになったので、Macに入れてみたところハマりました。とりあえず、ググってみたところここで回避方法が。バージョンが違った…