markdown-mode
2008-02-15
Shamon
最近Weblogの記事はMarkdown記法を使って記述している。プレーンなテキストに近いの で特にAuthoring toolなどのサポートは不要な気もするが、何かないかと探してみたと ころ、Emacs向けのmarkdown-modeというのがあったので試してみた。
試した環境は、Windowsで稼働するEmacsクローンのMeadowとMacOSX上のCarbon Emacsの2つ。
インストールはまず、markdown-modeのページからmarkdown-mode.elをダウンロードし、 Emacsのload-pathが通っている適当なディレクトリに配置する。次に、markdown-modeの ページにあるように以下のコードを .emacsに記述し再起動する。
;; markdown-mode
(autoload 'markdown-mode "markdown-mode.el"
"Major mode for editing Markdown files" t)
(setq auto-mode-alist
(cons '("\\.mdml$" . markdown-mode) auto-mode-alist))
;; markdown.php
(setq markdown-command "markdown.php")
以上の設定でEmacsを再起動して、拡張子が.mdmlのファイルを開くと自動的にmarkdown モードになりテキストが記法のシンタックス に従って色付けされるので、 非常にわかりやすい。M-qやauto-fill-modeで整形すると読みやすくなるが、Markdownの タグの途中で改行されると不調なので注意が必要だ。
いくつかのコマンドとショートカットが用意されていてタグを挿入してくれたりする が、Markdownの記法自体がシンプルなのでほとんど使用しない。シンタックスを知って いて色付けしてくれるだけで十分。せいぜい、ANCHORS(c-c- c-a l)でリンクの空フォー ムの作るくらい。あとは、以下に説明するmarkdown.phpなどのフィルターコマンドを使 用できるようになっていれば、COMMANDS(c-c c-c)系を使って生成されるHTMLを確認した り、ブラウザでプレビューを行ったりできる。ただし、ブログの記事などの場合そのま まではHeaderがないためブラウザがエンコードを識別できずバケバケだったりするし、 当然スタイルもつけられていない。まぁ、気休め程度のものだ。
そして、Markdownで記述した記事をHTMLに変換して一応確かめるために、PHP Markdow nを導入する。ダウンロードしzipを解凍 したら、MacOSXの場合markdown.phpを以下の編集する。
1行目に追加
#!/usr/bin/env php
.
.
最後の部分を変更
if ($argc < 2) {
$src = 'php://stdin';
} else {
$src = $argv[1];
}
echo Markdown(file_get_contents($src));
?>
実際には、確認はMarsEdit2などに貼り付けてプレビューで確認したほうが素敵かもしれない。