「$」をエスケープする必要があったらしい。以下、posttdiary専用アカウントに設置した .mailfilter の中身。
cc "|/home/vvvvvv/www/ds14050/diary/posttdiary.rb --image-path /home/vvvvvv/www/ds14050/diary/images/ --image-url http://vvvvvv.sakura.ne.jp/ds14050/diary/images/ --image-format '\$1' --use-subject http://vvvvvv.sakura.ne.jp/ds14050/diary/update.rb user pass"
しかし、ファイル名に日本語を使った画像がコピーされない問題が残っている。テストするたびパケ代がかさむのだよ。早く解決してくれたまえ。
画像添付テスト〜
画像添付テスト〜
\ 画像添付テスト
posttdiary.rbは添付ファイルヘッダのファイル名(name=〜)から拡張子だけを取り出して使ってるけど、ファイル名がMIMEエンコードされてると拡張子が取り出せなくて処理をスキップしてた。ので、いったんファイル名を全部取って NKFを通して(デコードして)から拡張子を得ることにした。
しかーし、画像の前に「\」が見えるでしょう。これ間違いなく --image-format で $ の前にある \ だと思うんだけど。でもこの \ を削ると画像が挿入されないのだよね。
画像添付テスト
最終的な .mailfilterはコレ↓
cc "|/home/vvvvvv/www/ds14050/diary/posttdiary.rb --image-path /home/vvvvvv/www/ds14050/diary/images/ --image-url http://vvvvvv.sakura.ne.jp/ds14050/diary/images/ --image-format \"\$1\" --use-subject http://vvvvvv.sakura.ne.jp/ds14050/diary/update.rb"
解決はしたが釈然としない。結局 \ は必要なのか?不要なのか? 無ければ問題。付ければ余計。
.mailfilterがどういう解釈をされるのか? getoptlongがオプションをどう解釈するのか? わからないことが多すぎる。
その為だけに image.rbプラグインを新たに使用可能にするのも面倒だ。ディレクトリ構造を規定することになるけど相対パスにすることで解決したことにしとこうか。でも相対パスにすると squeeze.rbの出力する *.htmlから画像を参照できなくなるな。そもそも相対パスじゃWikiスタイルが imgタグに変換してくれないじゃないか。プラグインだな。仕方ないな。