Emacsでのはてなブログ投稿環境を整える
普段メモはemacsのorg-modeにて書いているため はてなブログの記事を書く際にもorg-modeを使って書きたい。 そのための環境を整える。
これらを使う
org-modeの文章 => org-export(ox-pandoc) => Markdown(github flavored) => はてなブログへ投稿
という環境を構築するために必要なものをリストアップ。
Github Flavored Markdown に変換することで、はてなでもプログラムのコード等埋め込めることを 確認できたので当面はこれでいく。 まだまだ調査不足で満足いく環境にはなっていないのでその内再度環境整備したい。
インストール
ox-pandoc
https://github.com/kawabata/ox-pandoc
package.elやel-get等を使って入れる。省略。
pandoc
macOSの場合
brew install pandoc
自分でビルドする方法等他にもたくさんあるが今回使ったのはHomebrewのpandoc.
その他OSの場合/その他インストール方法は http://pandoc.org/installing.html を参照。
hatena-blog-mode
自宅環境用のlocal領域にインストール。cloneする場所は自分の好きなところでOK. 個人的に複数の環境で共有したくない/する必要のない設定絡みは~/.emacs.d/local以下に 配置してgit管理の対象から外すようにしている。
cd ~/.emacs.d/local git clone https://github.com/fnwiya/hatena-blog-mode
色々探してみたが最終的にはこのページを参考。このページの通り設定する。
使い方
M-x org-export-dispatch(C-c C-e) => p => g
でMarkdownに変換。必要に応じてMarkdownを修正する。
M-x hatena-blog-write
=> hatena-new-entry.mdバッファが開くため変換したMarkdownの内容を貼り付ける。
M-x hatena-blog-post
=> タイトル、カテゴリを入力、下書きかどうかを選択。
色々な記法をテスト
コードを埋め込み
#+begin_src scala val a = "hello" println(a) #+end_src
で
val a = "hello" println(a)
#+begin_src python import os a = 'hello' print(a) print(os.listdir()) #+end_src
で
import os a = 'hello' print(a) print(os.listdir())
* レベル1 レベル1テキスト ** レベル2 レベル2テキスト *** レベル3テキスト レベル3テキスト **** レベル4テキスト レベル4テキスト ***** レベル5テキスト レベル5テキスト ****** レベル6テキスト レベル6テキスト
で
レベル1
レベル1テキスト
レベル2
レベル2テキスト
レベル3テキスト
レベル3テキスト
レベル4テキスト
レベル4テキスト
レベル5テキスト
レベル5テキスト
レベル6テキスト
レベル6テキスト
その他参考
こういうのもある
org-modeの文書をはてな記法に変換するox-hatena.el http://akisute3.hatenablog.com/entry/2013/08/23/150311