2006年08月22日
BLOG THIS!スクリプト
MovableTypeの画像アップロードのインターフェースが、しょぼい。1枚1枚、「ファイルを参照」してアップロードする必要があるうえに、サムネールを作るかどうかなど、毎回指定しないといけない。こういうGUIは、見慣れないシステムで1度きりしかやらない作業には最適だけど、繰り返し繰り返しやるような作業には向かない。
なので、スクリプトを書いて画像ビューアーから呼び出せるようにした。
GImageViewで画像を閲覧しているときに、適当にファイルを1つ、または複数選択して右クリック。メニューの外部プログラムで開くから、自分で追加した「BLOG THIS!」というメニューを選ぶ。
すると、次のスクリプトが呼ばれて、800×600ドットの縮小した画像と、320×240ドットのさらに縮小したサムネール表示用の画像を作成して、しかるべきサーバーのディレクトリに、それらをftpしてくれる。このとき、画像ファイル名を埋め込んだHTMLタグを、指定ファイルに吐き出す。Emacsの中から、「M-x insert-tags」とやれば、そのタグが展開される。
●~/bin/blogthis.sh #!/bin/bash rm ~/Desktop/tmp-img/* cp $@ ~/Desktop/tmp-img/ cd ~/Desktop/tmp-img/ for i in `ls *jpg` do convert -geometry 320x240 $i ~/Desktop/tmp-img/thumb-$i mogrify -geometry 800x600 $i ~/Desktop/tmp-img/$i echo "<p><table cellpadding=0 cellspacing=0 border=0 valign=top> <caption align=bottom>hoge hoge</caption> <tr> <td> <a href=\"http://d-code.org/blog/archives/$i\"><img src=\"http://d-code.org/blog/archives/thumb-$i\"></a> </td> </tr> </table></p>" >>~/Desktop/tmp-img/tags.txt done lftp <<END open [your.ftpsite.org] user [username] [password] cd /home/d-code2/www/blog/archives mput *jpg quit END rm *jpg ●.emacsに追加 ;; 画像のタグファイルを入れる (defun insert-tags () (interactive) (insert-file "/home/ken/Desktop/tmp-img/tags.txt"))
こうやって単純作業を自動化するためのツールや方策が、自然な形で豊富に用意されている。それがUnix的な土壌の魅力だと思う。
投稿者 ken : 2006年08月22日 11:00