[bash関数版]はてなフォトライフアップロード&クリップボードへはてな記法コピー

はてなフォトライフアップロード&クリップボードはてな記法コピーをbashの関数で作ってみた

必要なもの

base64,sed,imagemagic,xclip,openssl,wget
なのでubutntuならばwget,imagemagicとxclipをインストールすればいける。

使い方

fotolifeコマンドをターミナルで実行しマウスカーソルが十字になったら
1.ウインドウ全体ならば対象ウィンドウをクリック
2.領域ならばドラッグ
以上を行うとクリップボードはてな記法が入ってるのでそれをはてダにでもペースト

ソース

以下を~/.bashrcにコピー

function fotolife () {
    local id=はてなID
    local pass=パスワード
    local file=/tmp/fotolife$$.xml
    local img=/tmp/fotolife$$.jpg
    local now=`date -u -Iseconds|sed 's/+0000/Z/'`
    local nonce=`printf "%04x%04x" $RANDOM $RANDOM`
    import $img
    cat <<EOF >$file
<entry xmlns="http://purl.org/atom/ns#">
  <title>$(date +%Y%m%d%H%M%S)</title>
  <content mode="base64" type="image/jpeg">$(base64 $img)</content>
</entry>
EOF
    wget --header="X-WSSE: UsernameToken Username=\"$id\", PasswordDigest=\"$(echo -n $nonce$now$pass|openssl dgst -sha1 -binary|base64)\", Nonce=\"$(echo -n $nonce|base64)\", Created=\"$now\"" http://f.hatena.ne.jp/atom/post --post-file=$file -S -O - 2>&1|grep hatena:syntax| sed 's/^[^>]\+>/[/;s/<[^>]\+>/]/' | xclip
    xclip -o | xclip -selection clipboard
    rm $file $img
}

ruby版はこちら > マウスでドラッグした領域をはてなフォトライフに投稿し、クリップボードにフォトライフ記法のアドレスを入れる - 計算機と戯れる日々

追記 2009/03/11 15:05:16:

postのタイトル(=up後のaltになる文字列)をdateにした。