はじめに

emacsなら、なんでもできると信じている今日このごろなので、WordPressにもEmacsから記事の投稿ができたらいいなと思います。そんななかリサーチしてみたら、選択肢としては、以下のようなものがありました。

こんな感じなので、org2blogをつかってみます。

環境

  • cygwin               1.7.18-1
  • emacs                24.3-1

org2blogのインストール

org2blogとは、Emacsのorg-modeでかかれたドキュメントをWordPress用に変換して投稿するEmac Lispです。

以下の3つが必要。

  • org2blog
  • metaweblog.el
  • xml-rcp.el

githubからorg2blogとmetaweblogをまずは取得。

$ git clone git://github.com/punchagan/org2blog.git
$ git clone git://github.com/punchagan/metaweblog.el.git

org2blogディレクトリをload-pathの通った場所に配置します。例えば .emacsに以下を追記。metaweblog.elも同様にロードパスの通ったところへ。(or2blog配下でよい)

(setq load-path (cons "~/.emacs.d/org2blog/" load-path)) 
(require 'org2blog-autoloads)

xml-rcp.elも以下から取得。ロードパスの通った場所に配置します。

https://launchpadlibrarian.net/40270196/xml-rpc.el

ブログの設定も.emacsに書きます。以下を参考に適当に編集。

(setq org2blog/wp-blog-alist 
       '(("wordpress" 
          :url "https://username.wordpress.com/xmlrpc.php"  ;;xmlrcp.phpのURL
          :username "username"  
          :password "password" 
          :default-title "Hello World" ;; デフォルトタイトル
          :default-categories ("daily") ;;カテゴリを指定 
          :tags-as-categories nil))) ;; タグを指定

設定が終わったら、emacsを再起動。

org2blogの使い方

接続確認をします。ミニバッファで以下を入力し、サーバにログインできます。

M-x org2blog/wp-login

新しい記事を作成するには、以下を入力。

M-x org2blog-new-entry

テンプレートが呼び出さます。

[C-c d]で下書き保存され、[C-c p]で公開されます。

詳しくは、README参照。これは便利だー(^O^)

https://github.com/punchagan/org2blog

[https://www.youtube.com/embed/5cBghog4hn0>}}

 追記

パスワード入力を省略する方法があるようだ。まずは、~/.netrcに以下を追記。

echo "machine myblog login username password yourpassword" > ~/.netrc 

init.elにも以下を追加。

(require 'netrc) ;; or nothing if already in the load-path
(setq blog (netrc-machine (netrc-parse "~/.netrc") "myblog" t))
(setq org2blog/wp-blog-alist
      '(("my-blog"
         :url "https://username.server.com/xmlrpc.php"
         :username (netrc-get blog "login")
         :password (netrc-get blog "password"))))

参考