ファイルを開いたら、org2blogのマイナーモードを起動する
- 2014.12.30
- Emacs

この日記はorg2blogを使って書いています。
何しろ、org-modeのフォーマットで書けますし、コードとかもhtmlizeによってハイライトしてくれて、とても便利です。
普段の使い方としては、一つの記事に一つのorgファイルが対応するようにしていて、時間が空いた時などにツラツラと書くようにしてます。Orgファイルを開くだけで良いので、サーバに待たされることもありません。書きあがるまでOrgファイルとして管理しておき、書きあがり次第、記事をアップ。ブログが普及する前の前世代的な運用ですが、こっちの方がサーバやネットワークの反応にイライラすることもなく性に合っている気がします。
ただ、ちょっと不満だったのがorg2blogがorg-mode上のマイナーモードとして動作することです。書きかけのOrgファイルを開いて記事を完成させ、さあアップロード!という段になり、org2blog/wp-modeが有効になっておらず、腰折られたことが度々ありました。
org2blog用に作ったorgファイルは自動的にorg2blog/wp-modeを有効にしておきたいものです。
独自の拡張子をつけて、auto-mode-alistでマイナーモードを起動
すでに、同じようなことを考えている方がいました。
org2blog(Emacsのブログエディタ) | 日暮途遠(Linux)
こちらの方はorg2blog用に拡張子を設定して auto-mode-alist
で org2blog/wp-mode
を有効にしています。
org2blog用のorgファイルが一目でわかるし、良い方法ですね。
Local Variables の eval 行でマイナーモードを起動
もう一つの方法は、Local Variables でファイルローカルな変数を定義するというものです。 Emacsでは、ファイルごとにローカルな変数を持つことができます。詳しくはinfoをどうぞ。
(Info-goto-node "(emacs) Specifying File Variables")
org2blogでは、Orgファイルのテンプレートを定義する変数 org2blog/wp-buffer-template
があるので、そのeval行でマイナーモードを起動させます。
(setq org2blog/wp-buffer-template "#+DATE: %s #+OPTIONS: toc:nil num:nil todo:nil pri:nil tags:nil ^:nil TeX:nil #+CATEGORY: %s #+TAGS: #+DESCRIPTION: #+TITLE: %s \n \n # Local Variables: # eval: (org2blog/wp-mode) # End:\n")
Local Variablesは他にもいろいろと応用がききます。yasnippetのスニペットとして登録しておくといろいろと便利かもしれません。
-
前の記事
Emacsのimage-modeでimagemagickの力が封印されている件 2014.12.29
-
次の記事
雪のくじゅうを登った 2015.01.05