2012年9月16日日曜日

Emacsからbloggerへ記事を投稿する




実行環境






  • Mac OS X 10.7.4


  • GNU Emacs 23.4.1






googleclのインストール




ターミナルで以下のコマンドを実行
sudo port install googlecl
Ubuntuならapt-get でできるかも(やってないけど)





googlecl.elのインストール




https://github.com/rileyrg/org-googlecl
からZIPをダウンロードし,適当なところに展開し,ファイルのパスをload-pathに追加する.






Emacsの設定




.emacs に以下の設定を追加する.
(require 'org-googlecl)
(setq googlecl-blogname "ブログの名前")
(setq googlecl-username "gmailのアドレス(hogehoge@gmeil.com)")





投稿方法




Emacs上で投稿したい記事(見出し)にカーソルを合わせ
M-x org-googlecl-blog
を実行する.
カーソルを合わせている見出しの部分木がブログとして認識される.





余分な行間への対策




以上の手順を踏めば投稿はできるのですが,行間が無駄に大きく見栄えが悪いです.
これは,(参考URL(2)曰く)出力結果のhtmlが余分に<p>タグを出力しているかららしいです.
ということで,googlecl.elを改造します.
googlecl.elの135行目あたりの

(with-temp-file tmpfile
(insert bhtml)
(goto-char (buffer-end 1))


(with-temp-file tmpfile
(insert (replace-regexp-in-string
"<p>\n*\\(\\(.*\n\\)+?\\)</p>"
"\\1" bhtml))
(goto-char (buffer-end 1)))
と書き換えます.
おそらく正規表現を用いて,出力結果のhtmlの<p>部分を変換してると思われます.





おわりに




この記事は上記の通りに行って投稿した記事です.
今後は,もう少し見栄えがよくなるようにしてみたいです.
あと,プレビューできないのも困るので,なにかいい方法があればいいな…と思ってます.






--
My Emacs Files At GitHub