現在、howmのメモは、
メモルートディレクトリの下に年次のディレクトリ。
その下に月次のディレクトリ。
その下に1日1ファイル。
という構造になっている。
年次ディレクトリを指定したら、その下にあるファイルを全て処理して欲しい。
このディレクトリ処理を、どうするか。
今のところ、、findコマンドを使って、
find ./2010 -name "[[:digit:]][[:digit:]][[:digit:]][[:digit:]]-[[:digit:]][[:digit:]]-[[:digit:]][[:digit:]]\.howm" -exec howmsplit.scm {} \;
と実行するとしておく。
gaucheはmain関数を定義しておくと、引き数を渡してくれる仕様らしい。
#!/usr/local/bin/gosh
(define (main args)
(if (null? (cdr args))
(print "null"))
(print (car (cdr args))))
こんな感じのことをすれば、findが渡してくれるファイル名を取り出せそう。
タイムヘッダがあるかどうかの判定に使う。
perlの$string =~ /\d\d\d\d/に相当する書き方は、(rxmatch #/\d\d\d\d/ string)で、結果が#fかオブジェクト。
(let1 rxobj (rxmatch #/\d\d\d\d/ "1234")
(print (and rxobj (rxobj 0))))
こんな感じで後方参照できるみたい。