emacs の markdown-mode と pandoc でちょっとだけ快適にブログを書く

Markdown形式でブログを書いていますが、なかなかスムーズにできません。

  1. emacs(fundamental-mode) で書いて
  2. はてなブログの編集画面にコピペして
  3. プレビューして見直し。おかしかったら1に戻る…
  4. 投稿

みたいな事をやっていたのですが、もうちょっとなんとかならんのかという事で、 改善方法を調べてみました。

emacsmarkdown-mode を入れる

まずは Markdown 用のモードを入れます。

M-x list-packages とすると、 「markdown-mode」というものが見付かったので インストールします。

これで特に何もしなくても *.md ファイルを開くと markdown-mode になります。 gfm-mode (Github Flavored Markdown) というモードも使えます。 はてなブログの場合はこちらの方があってるように思いました。

gfm-mode を関連付ける場合は下記の設定を init.el に追加します。

(add-to-list 'auto-mode-alist '("\\.md\\'" . gfm-mode))

pandoc でプレビューできるようにする

ブラウザでプレビューするために html に変換するツールを入れます。

の3つを試して、今回は pandoc を使う事にしました。 (他は github 風のコードブロックをうまく処理できませんでした)

brew でインストールできます。

brew install pandoc

emacs からのプレビューで pandoc を使うように init.el に下記を追加します。

(setq markdown-command "pandoc")

C-c C-c p で markdown-mode からプレビューできるようになりました。

CSS で見やすくする

そのままでは少し見にくいと感じたので、 CSS で見やすくします。

ここ から github 風の CSS をもらいました。 (そのままでは pandoc の出力する html にうまく適用されないので編集しました。 探せばそのまま使えるものがたくさんありました…)

pandoc にオプションを追加して css へのリンクを埋め込むようにします。

(setq markdown-command "pandoc -c ~/.pandoc/github-markdown.css")

ちょっとだけ快適になりました

ちょっとだけですが。

  • C-c C-c p 一発(3発?)でプレビューできます
  • Tab, Shift-Tab 本文の表示/非表示(見出しのみ)ができます
  • 選択範囲だけプレビューできます。(私は草稿を1つのファイルにまとめているので重宝)

このへんが特に気にいってます。

Markdown の書き方ですがこちらのページにいつもお世話になっています。

igcn.hateblo.jp