emacsで文字コード指定してからファイル開く
C-x ENTER c
で文字コード選んでから C-x C-f
やっぱり
NEXT モジュールつかわないと挙動がおかしい。Catalyst は no strict 'refs'
してモジュールをいろんな名前空間に読んでるからいまだによくわからない。
もっとソース読まなくちゃ。
ふむ
NEXT モジュールを使わず
sub new {
my $self = shift;
$self->config($_[-1]);
$self->SUPER::new(@_);
}
としたほうがよさげ。
Catalyst設定をばらばらに書くのが嫌
これをすべて MyApp の config で行うには MyApp::(M|V|C)::Foo などというコンポーネントモジュールの new を以下のように定義してやれば良い。
sub new {
my $self = shift;
$self->config($_[-1]);
$self->NEXT::new(@_);
}
このようにしておけば MyApp で
MyApp->config(
'M::Foo' => {
some => 'settings',
},
);
などとすれば MyApp::M::Foo の設定を MyApp 内で行える。Config::YAML と併用すれば外部ファイルの使用もOK。
emacsにyaml-modeあれば使う気になるんだけどなぁ。。
だめだ
下記方法だとupdate時にはmtimeは更新されない。mtime timestamp default NOW()
と同じということ。
SQLiteでMySQLのtimestamp not nullみたいな挙動をさせる
create table sessions (
id varchar(32) not null,
a_session text,
mtime timestamp default CURRENT_TIMESTAMP
);
ref: http://www.sqlite.org/lang_createtable.htmlより。version 3.1.0 以上。
正規表現の「?」
人のプログラムに kmd?\.sonymusic
みたいな正規表現書いたら km(d|)\.sonymusic
と直されていた。わかりにくかったのかな。
Markdown書式でclmemo
を書くようにする。そのうちchalowみたいのを書く。