マークダウン記法で対応している書式を可能な限り列挙します。 実際に試して動作した記法のみになると思います。
実験した環境はrdiscountというruby向けのmarkdown実装を参考にしています。
Markdownでは、前後を空白行で囲まれていると段落として扱われます。つまり、文章を段落分けする場合は、空行を挿入します。
通常の文章(改行)
通常の文章
のように単純に改行しただけでは、下のように段落わけされていない一つの文章のようになります。
通常の文章 通常の文章
これを段落わけするためには、間に1行分空白行を入れます。
段落1の文章
(間に空行)
段落2の文章
こうするとHTMLのソースとしては以下のようになります。
<p>段落1</p>
<p>段落2</p>
ただ改行しても改行はされません。
改行前の文章
改行後の文章
これは以下のように変換されます。
<p>改行前の文章
改行後の文章</p>
改行を任意の位置に入れるためには行末にスペースを2つ入力します。
改行前の文章(ここに半角スペースを2つ分)
改行後の文章
こうすることで以下のように解釈されます。
<p>改行前の文章<br/>
改行後の文章</p>
基本の書式は以下の通りです。
[リンクのテキスト](リンクのアドレス "リンクのタイトル")
たとえば、以下のように記述すると
[バリアフリーグルメ情報共有Quuzu](http://quuzu.jp "バリアフリーグルメ情報を共有するサイトです")
以下のように変換されます。
<a href="http://quuzu.jp" title="バリアフリーグルメ情報を共有するサイトです">バリアフリーグルメ情報共有Quuzu</a>
ブラウザ上では以下のように見えます。
サイト内の場合は以下のように相対パスでも指定可能です。
[記事一覧](/articles "サイト内の記事一覧です")
これは以下のように変換されます。
<p><a href="/articles" title="サイト内の記事一覧です">記事一覧</a></p>
もっと簡単に以下のように<と>で囲むことでもリンクされます。
<http://quuzu.jp>
参照リンクの記法を用いると、文章中にタグだけを埋め込んで実際のリンクを別で定義することができます。 参照リンクの記法は、文章中のリンクを埋め込みたい場所にアンカーテキストとIDを埋め込むことで実現できます。
アンカーテキストとIDの書式は以下の通りです。
[アンカーテキスト][ID]
さらに文章中の任意の場所にIDに対応するリンクの情報を以下のような書式で記述します。
[ID]: URL title属性
参照リンクの記法は一つの文章に同じリンクが複数ある場合などにかなり便利です。(URLが変更されても1か所変更するだけで同じURLのすべてのリンクを更新することが可能です。)
例えば以下の記述を行うことで、
[Quuzu.jp][quuzu]は[バリアフリー][bf]グルメ情報の検索サイトです。[Quuzu.jp][quuzu]では車椅子で入れるお店などの情報を集めています。
[quuzu]: http://quuzu.jp "バリアフリーグルメ情報の検索サイト"
[bf]: http://ja.wikipedia.org/wiki/バリアフリー "バリアフリー wikipedia"
以下のようなリンク付きの記述を行うことができます。以下の文章の"Quuzu.jp"と"バリアフリー"というキーワードがリンクになっています。
Quuzu.jpはバリアフリーグルメ情報の検索サイトです。Quuzu.jpでは車椅子で入れるお店などの情報を集めています。
行頭を#で始めることで見出しを作ることが出来ます。 #の数で見出しレベルを設定できます。
#見出しレベル1 => h1
##見出しレベル2 => h2
###見出しレベル3 => h3
####見出しレベル4 => h4
#####見出しレベル5 => h5
######見出しレベル6 => h6
見出しレベルはH6まであります。
H1とH2に関してはそれぞれ=(イコール)と-(マイナス)でアンダーラインを引くことでも修飾できます。
見出しレベル1
=============
見出しレベル2
-------------
行頭を>記号で開始すると引用(blockquoteタグ)で囲まれます。
> Markdown は、文書を記述するための軽量マークアップ言語のひとつである。「書きやすくて読みやすいプレーンテキストとして記述した文書を、妥当なXHTML(もしくはHTML)文書へと変換できるフォーマット」として、ジョン・グル―バー(John Gruber)により作成された。
このように記述すると
Markdown は、文書を記述するための軽量マークアップ言語のひとつである。「書きやすくて読みやすいプレーンテキストとして記述した文書を、妥当なXHTML(もしくはHTML)文書へと変換できるフォーマット」として、ジョン・グル―バー(John Gruber)により作成された。
このように引用になります。
先頭を4つ分の半角スペースで開始するとpreタグとcodeタグで括られます。
(スペース4つ)function code_block() {
(スペース4つ) return true;
(スペース4つ)}
は以下のように変換されます.
<pre><code>
function code_block() {
return true;
}
</code></pre>
番号無リスト(ulタグ)は、「*」、「-」、「+」いずれかの記号を先頭におくことでリスト化されます。
* リスト1段目
* リスト2段目
- リスト1段目
- リスト2段目
+ リスト1段目
+ リスト2段目
番号付きのリストは、行頭を数字+ピリオドで開始します。
1. リスト1段目
1. リスト2段目
意図せずリストになってしまうのを回避するためには、バックスラッシュ(円記号)でピリオドをエスケープする必要があります。
1234\. 数字で始まった行
1234. 数字で始まった行
文字列を*(アスタリスク)を2つまたは_(アンダースコア)を2つで囲むと、strongタグで強調されます。
**強調したい文字列**
強調したい文字列
__強調したい文字列__
強調したい文字列
Markdownの本来以下の記法では以下のようにアスタリスク1つやアンダースコア1つでもemタグで強調表示になると思うのですが、このサイトで使用しているRdiscountではうまく強調されませんでした。
*強調したい文字列*
*強調したい文字列*
_強調したい文字列_
_強調したい文字列_
3つ以上のアスタリスク、ハイフン、アンダースコアのみの行は罫線に変換されます。
アスタリスク
***
ハイフン
---
アンダースコア
___
アスタリスク
ハイフン
アンダースコア
テーブル
下のような枠を作ることでテーブルを作ることが出来ます。
|左寄せカラム | 右寄せカラム|センタリングカラム|
|:------------|------------:|:----------------:|
| 左よせ | 右寄せ | センタリング |
| 左よせ | 右寄せ | センタリング |
左寄せカラム | 右寄せカラム | センタリングカラム |
---|---|---|
左よせ | 右寄せ | センタリング |
左よせ | 右寄せ | センタリング |
スペース等は無視されるため以下は同じです。
|左寄せカラム|右寄せカラム|センタリングカラム|
|:---|---:|:---:|
|左寄せ|右寄せ|センタリング|
|左寄せ|右寄せ|センタリング|
ヘッダは必須です。 一部の実装ではヘッダがないとテーブルになりませんでした。
ヘッダ下の以下の部分で左寄せ、右寄せ、センタリングを指定できます。
:----
:---:
----: