Pelican では reST 形式でテキストファイルを作成してその中身が HTML として作成されます。Emacs で autoinsert を使ってメタデータのテンプレートが自動で入るようにしたり していますがさらにお手軽に reST のテキストを書けるようにしたいと思い、少し Emacs をいじっていました。
- open-junk-file を流用して reST ファイルを作成する
- key-chord を設定して df 同時押しで↑を実行する
やったことは簡単で、まず open-junk-file.el をコピーしてリネームします。適当に open-rest-file.el としておきました。 ファイルの中身を開いて open-junk-file という文字列をすべて open-rest-file に置換します。
init.el に設定を書きます。ファイルの保存先ディレクトリとファイル名の形式を指定しましょう。
;; open-rest-file
;; open-junk-file をコピー
;; http://d.hatena.ne.jp/rubikitch/20080923/1222104034
(require 'open-rest-file)
(setq open-rest-file-format "~/Dropbox/Projects/osanaiorg/content/%Y-%m%d_%H%M.rst" )
M-x open-rest-file で実行できることを確認してから、key-chord を設定します。
;; df 同時押しで M-x open-rest-file を実行
(key-chord-define-global "df" 'open-rest-file)
これで単純に D と F を同時に押すと所定のディレクトリに日時をファイル名にした .rst のファイルが作成され、前述の autoinsert によってテンプレートにした内容が自動で挿入された状態でバッファが開きます。だいぶ便利になりました。