Post from Emacs (2)

先日の記事 で WordPress.com の記事を Emacs から投稿するのに org2blog.el を使ってみたことを書いた。第一印象で、これは使いやすそうだ、と思ったが、いくつか Emacs から記事を書いてみてこれは 最初に感じた以上に便利 だ。記事はすべてローカルにも保存されるので、あとからの編集は楽だし、反対に、思いついたことをメモしておいてローカルに保存しておいたものを後に推敲しそのままアップすることも簡単だ。Dropbox などで記事を共有しておけば、外出先で(携帯電話からであれ、Mobile PC からであれ)メモしておいたものも、あとで見直して他のマシンからサーバーにアップできる(私は ~/Dropbox/org/blog 以下に記事を保存することにした)。

また、既存の Org ファイルに、 #+TITLE, #+OPTIONS, #+TAGS, #+CATEGORY, #+DESCRIPTION, #+DATE を加えたり、既存の記事の ID を #+POSTID として加えることで、そのファイルの内容を記事としてアップできる。さらに、Org ファイルの Subtree だけ抽出して投稿することもできる。

M-x org2blog/wp-post-subtree

この場合その Subtree のタグがそのまま記事のタグとして用いられる。他のプロパティーも property drawer を使用することで指定可能で(M-x org-insert-property-drawer)1、投稿日時は POST_DATE として指定できる。また、タイトルはヘッドラインが使用されるが、 TITLE として別に設定することもできる。

* Test for posting subtree                                             :test:
  :PROPERTIES:
  :TITLE: TEST
  :POST_DATE: [2011-06-09 木 06:57]
  :OPTIONS:  toc:nil num:nil todo:nil pri:nil tags:nil ^:nil TeX:nil
  :CATEGORY: TEST
  :ID:
  :END:

  これはテストです。

この Subtree をポストする機能は、メモ取りツール Org-Capture なんかと一緒に使えばかなり便利なのではないか2。例えば設定ファイル(init.el)に、

(require 'org-capture)
(setq org-capture-templates
      '(("b" "Blog" entry (file+headline "~/Dropbox/org/blog.org" "Drafts")
             "* %?n :PROPERTIES:n :OPTIONS:  toc:nil num:nil todo:nil pri:nil tags:nil ^:nil TeX:niln :POST_DATE: %Un :CATEGORY: miscn :ID:n :END:n %in")
        ))

(define-key global-map "C-cc" 'org-capture)

と書いおく。何か記事とすべき内容が思い浮かべば、すぐに C-c c で org-capture を呼び出して b でブログ用のメモファイルを選択する。すると以下のようテンプレートが挿入される。

**  
  :PROPERTIES:
  :OPTIONS:  toc:nil num:nil todo:nil pri:nil tags:nil ^:nil TeX:nil
  :POST_DATE: [2011-06-09 木 07:00]
  :CATEGORY: misc
  :ID:
  :END:

書き終われば C-c C-c ですばやく保存する。あとは必要あれば取り貯めたメモのうち実際に投稿したいところだけ適宜修正して M-x org2blog/wp-post-subtree でポストする。私自身実際にこのような使い方はまだ実践していないが、ともかくも Org2blog.el はこのように便利に使用できそうだ。

関連記事

2 thoughts on “Post from Emacs (2)

  1. Pingback: Post from Emacs | Amrta

  2. Pingback: 色々 Org Capture する | Amrta

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s