“The GUI Loft”のサイトが消滅?

Perl で GUI を構築するときに便利なアプリ、「The GUI Loft」を公開していたサイトがドメインの期限切れにより見えなくなっている。業務で必要だったので青くなったが、幸いゴミ箱から発見できたので置いておこう。

Loft_binary.zip のダウンロード

https://blog.delphinus.dev/2010/03/gui-programming-with-win32-gui-loft.html


その後、公式サイトが復活したようなので、Loft_binary.zip へのリンクは削除しておきました。


解凍したフォルダを再圧縮したものなので、オリジナルとは多少異なっている恐れがあることをお断りしておく。

Whois で調べてみると、1 月 5 日にはドメインが失効していたらしい。このまま消えちゃうのかなあ(以下のリンク先は、URL の末尾が「.com」になっているので FW によっては弾かれるかも知れません。)

2011-01-13_130146.png

vim-ref で perldoc その他を読む

2010-11-05_203439.png

vimプラグインでよりよいコーディングを
http://tech.kayac.com/archive/vim-plugin-coding.html

上のリンクを読んで、vim-ref を導入してみた。各種言語のドキュメントや、モジュールのソースが簡単に開けるようになって便利だ。詳しい使い方はリンク先を参照して貰うとして、Windows 版 Vim だと次のエラーが出てうまく使えないことがあった。

Continue reading

【Perl】DateTime::Calendar::Japanese::Era のバグ?

前回の記事の最後に書いたとおり、DateTime::Calendar::Japanese::Era の挙動がなんかおかしい。有り体に言って、明治より前の元号を指定すると正常に動かないのだ。例えば、こんなスクリプトを書くと……

#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use DateTime::Format::Strptime;
use DateTime::Calendar::Japanese::Era;
binmode STDOUT => ":utf8";

my @ary = qw!
    1861/4/27
    1861/4/28
    1864/4/24
    1864/4/25
    1865/6/22
    1865/6/23
    1868/10/22
    1868/10/23
!;

my $fmt = new DateTime::Format::Strptime(
    pattern => "%Y/%m/%d",
);

for my $i ( @ary ) {
    my $d = $fmt->parse_datetime( $i );
    my $era = DateTime::Calendar::Japanese::Era
        ->lookup_by_date( datetime => $d );
    printf "%s => %s%d年\n", $i, $era->name, $d->year - $era->start->year + 1;
}

Continue reading

【Perl】Excel 形式の和暦日付に変換する

Excel で和暦の日付は次のように表される。

書式: [年号][年].[月].[日]
例  : H22.10.26
      S64.1.7

これを Perl で扱おうと思って DateTime オブジェクトを扱うスクリプト書いた。

#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use DateTime::Format::Strptime;

my $fmt = new DateTime::Format::Strptime(
    pattern => "%Y/%m/%d",
);

my $平成 = $fmt->parse_datetime( "1989/1/8" );
my $昭和 = $fmt->parse_datetime( "1926/12/25" );
my $大正 = $fmt->parse_datetime( "1912/7/30" );
my $明治 = $fmt->parse_datetime( "1868/10/23" );

sub to_jp {
    my $d = shift;
    $d or return "";
    my $y = $d >= $平成 ? "H" . ( $d->year - $平成->year + 1 ) :
        $d >= $昭和 ? "S" . ( $d->year - $昭和->year + 1 ) :
        $d >= $大正 ? "T" . ( $d->year - $大正->year + 1 ) :
        $d >= $明治 ? "M" . ( $d->year - $明治->year + 1 ) :
        $d->year;
    sprintf "%s.%d.%d", $y, $d->month, $d->day;
}

for my $i (qw! 2010/10/26 1989/1/7 !) {
    my $dt = $fmt->parse_datetime( $i );
    print to_jp( $dt ) . "\n";
}
$ perl test.pl
H22.10.26
S64.1.7

Continue reading

Perl5.12 で mod_perl をインストール

Perl 5.12 で mod_perl をインストールしたときの記録。Apache のバグ(?)によってすんなりとはいかなかった。

https://blog.delphinus.dev/2010/10/mod-perl-with-perl512.html

参考リンクの通りにインストールしていると、mod_perl の Makefile.PL でエラーが発生した。

[  error] '/usr/sbin/apxs -q NOTEST_CPPFLAGS' failed:
[  error] Use of assignment to $[ is deprecated at /usr/sbin/apxs line 97.

エラーメッセージでググると、これは Apache のソースを書き換える必要があるらしい。

Mailing List Archive: ModPerl: ModPerl
perl 5.12 / mod_perl
http://www.gossamer-threads.com/lists/modperl/modperl/101605

Diff of /httpd/httpd/trunk/support/apxs.in
http://svn.apache.org/viewvc/httpd/httpd/trunk/support/apxs.in?r1=807930∓r2=932791&diff_format=h

以下は、CentOS 5.5 上でインストールしてみた記録だ。

Continue reading

【Perl】WWW::Mechanize と Web::Scraper で PASMO の利用履歴を得る(その2)

【Perl】WWW::Mechanize と Web::Scraper で PASMO の利用履歴を得る(その1)
https://blog.delphinus.dev/2010/10/get-pasmo-history-with-perl.html

前回に引き続き、ページの解析を行う。まずは Firebug をインストールしておこう。

Firebug :: Add-ons for Firefox
https://addons.mozilla.org/ja/firefox/addon/1843/

Continue reading

【Perl】WWW::Mechanize と Web::Scraper で PASMO の利用履歴を得る(その1)

101002-0002.png

定期券を PASMO に切り替えたらネットで利用履歴が見られることを知った。以下の URL を開いてログインすると、上に挙げたようなページ(内容は適当にいじってある。)が開く。

マイページ PASMO 履歴照会サービス ログイン
https://www.pasmo-mypage.jp/loginwebform.aspx

ここから利用履歴を得るスクリプトを書いてみよう。とりあえず実行結果はこんな感じ。

Continue reading