マークダウン de マークアップ
よいこのみんな!今回はみんなが大好きなMarkdownのおはなしだよー!え、Markdownって何かって?
Markdown(マークダウン)は軽量マークアップ言語の1つである。
Markdown - Wikipedia
マークアップ言語、ものすごく大ざっぱに言うと、はてな記法みたいなものですね。学生時代にLatexで論文かいた人も多いのではないでしょうか。
Here at GitHub, we love Markdown. We use it everywhere: to render the wikis, issues, pull requests, and all user-generated comments. We even encourage developers to write their READMEs in this awesome markup language. In fact, we use it so much that we've learnt a few lessons on Markdown parsing the hard way.
Rolling out the Redcarpet · GitHub
我らがGithubもいたるところでMarkdown使えますよー、と。そういえばREADMEは単なるテキストファイルなのに、Github上ではとても見やすく表示される。さらにwikiはもちろん、issuesやpull requestsでも使える。極め付けはCommentにまで。README、wikiはそうだろうけど。他でも使えるとは知らなかった。ちょっとやってみたくなってきたでしょう。というわけで、基本的な記法をご紹介。それぞれ This Gist のリンクでどう見えるかを確認できます。
きほんてきなMarkdown記法
見出し
行頭に#を置くと見出しとして扱われる。#の個数が見出しのレベルに対応。レベル1とレベル2だけはそれぞれ専用の記法があって、上記のように次の行に=ないし-が並べられる。なるほど、これならプレーンテキストの状態でも目立ってパッと見でわかりやすい。
強調
なるほど。はさむわけですよ。
引用
シンプル。
リスト
記号はどれでもいいのね。
ちなみに、ひとつの項目が複数行にわたるのもサポートされている。
スペース4つあるいはタブ1つでインデントする。
番号付きリスト
見た目通り。プレーンテキストでもわかりやすいし、この記法では記号どれだっけ?と悩まなくていい。
リンク
ふむ。書きやすいかもしれない。
画像
脚注
ふむふむ。脚注のリンクがつく場所が明確。
水平線
1行の中に、3つ以上のハイフンやアスタリスク・アンダースコアだけを並べると水平線が作られる。ハイフンやアスタリスクのあいだには空白を入れてもよい。以下の行はすべて水平線を生成する
http://ja.wikipedia.org/wiki/Markdown#.E6.B0.B4.E5.B9.B3.E7.B7.9A
おもしろい。でもどれか一つ覚えればいいよね。
コード
エスケープするのは ` でかこむ。
整形済みテキストの場合は次のようにスペース4つかタブ1つでインデントする。
あれ?コードって、思ってたコードと違う?シンタックスハイライトとかないの?とか思ったはず。それを解決したのが冒頭で引用したGithubブログのエントリの内容。
Redcarpet
Four space indentation is now no longer required when including code, backtraces and other text in a comment, issue, Gist or any other Markdown-enabled text. Instead, simply create a fenced block with ```. An optional language identifier after the backticks will syntax highlight the code in that language.
https://github.com/blog/832-rolling-out-the-redcarpet
もはやコードを書くときにスペース4つなんていらない。```で囲むだけでいい。シンタックスハイライトもしてくれる。
はてな記法でいう g:hatenadiary:keyword:ソースコードを色付けして記述する(シンタックス・ハイライト) ですな。
もとブログのコメント欄では、だれしも”とりあえず使ってみましたー”なコメントを残していて面白い。
まとめ
使い方をざっと見てみて、Markdownの特徴としてプレーンテキストの状態での読みやすさが挙げられる感じ。さらにGithubでは多用されるであろうシンタックスハイライトがRedcarpetによって、さらに便利に使える。今までREADMEをちゃんと書いたことなかったけど、これからは何か書いてみようかなと思った次第。