Markdownと一言で言っても、基本的なものの他に拡張の入ったものもあるし、あと、はてなブログ独自の書き方もある。
はてなブログの場合、基本的な記法に加え、GitHubでの拡張であるGitHub Flavored Markdownも使える感じ。
それに、過去記事を埋め込んだり、動画を貼り付けたりと、はてなブログ独自の書き方も使える。 (なんと、で数式を書くことも出来る!)
ということで、まずは基本的な記法と、GitHub Flavored Markdownについて、まとめてみた。
見出し
↑こんな感じで見出しを出したい場合、Markdownでは次のように書く。
Markdown # 見出し1 ## 見出し2 ### 見出し3 #### 見出し4 ##### 見出し5 ###### 見出し6
実際の見え方見出し1
見出し2
見出し3
見出し4
見出し5
見出し6
ちなみに、よく使われる見出し1や見出し2については別の書き方も出来て、
Markdown 見出し1 ======= 見出し2 -------
という書き方も可能。
プレーンテキストだと、この書き方の方が見やすいかも。
なお、はてなブログの場合、記事の見出しとしては見出し3以降を使うように設計されているっぽいので、見出し1や見出し2は使わない方がいいかもしれない。
改行と段落
改行の取り扱い
Markdownでは、普通に改行しただけでは、実際の見た目は改行されない。 (半角スペースが1つ入るっぽい)
Markdown 1行目。 2行目。
実際の見え方 1行目。 2行目。
これはおそらく、英文の特徴にあった仕様で、和文の場合、ちょっと微妙だなぁ、というのが個人的な感想。
というのも、和文の場合、漢字を使う関係上、文字の密度が高いので、文が改行されずにずっと続くと、ゴミゴミしているように見えるんだよね・・・ (Textileの場合、改行はちゃんと改行として表示されるので、すごく見やすいのだけど)
強制改行
なので、強制的に改行を行う場合、ちょっと特殊なことをしてあげないといけない。
Markdownで強制的に改行を行いたい場合、行末に半角スペースを2つ入れることになってる。
Markdown 1行目。␣␣ 2行目。 (※␣は半角スペースの意味)
実際の見え方 1行目。 2行目。
ただ、正直なところ、Markdownのこの仕様だけはホントに嫌い。
半角スペースが入ってるかどうかなんてパッと見で分からないし、何よりも不自然。
いっそ、のようにバックスラッシュ2つとかの方が、まだマシだと思う。
段落
Markdownで段落を新しくしたい場合、空行を一行以上入れることになってる。
Markdown 1段落目。 2段落目。
実際の見え方1段落目。
2段落目。
Markdownで和文を書く場合、それがいいかどうかは別として、全部段落にしてしまった方が潔いかもしれない・・・ (文書の構造化とは、一体何だったのか・・・)
テキストの修飾
強調表示
テキストを強調したい場合、強調したいテキストをアスタリスク(*)で挟むか、アンダースコア(_)で挟む。
そうすると、通常は斜体で表示される。
Markdown *テキストを強調* _テキストを強調_
実際の見え方 テキストを強調 テキストを強調
より強い強調を表したい場合、アスタリスクやアンダースコアを2つにする。
そうすると、通常は太字で表示される。
Markdown **テキストを強調** __テキストを強調__
実際の見え方 テキストを強調 テキストを強調
さらに強い強調を表したい場合、アスタリスクやアンダースコアを3つにする。 (※これはGitHub Flavored Markdownによる拡張)
そうすると、通常は太字の斜体で表示される。
Markdown ***テキストを強調*** ___テキストを強調___
実際の見え方 テキストを強調 テキストを強調
なお、アスタリスクとアンダースコアの使い分けに関しては特に取り決めはないのだけど、GitHub Flavored Markdownによる拡張では、プログラムでの変数を表現したりするときに便利なように、単語を繋ぐアンダースコアでは強調表示にならないようになってる。
これが地味に便利。
Markdown send_message_buffer()メソッド ※参考 send*message*buffer()メソッド
実際の見え方 send_message_buffer()メソッド ※参考 sendmessagebuffer()メソッド
打ち消し線
GitHub Flavored Markdownによる拡張では、テキストを打ち消し線で消したい場合、打ち消したいテキストをチルダ(~)2つで挟む。
Markdown ~~打ち消し線~~
実際の見え方打ち消し線
リンク
Markdownでリンクを貼りたい場合、次のようにする。
Markdown [リンクのテキスト](リンクするアドレス)
実際の見え方 リンクのテキスト
なお、GitHub Flavored Markdownによる拡張では、URLを貼ると自動でリンクが貼られるようになっている。
Markdown https://yamaimo.hatenablog.jp/
実際の見え方 https://yamaimo.hatenablog.jp/
リスト
順序なしリスト
箇条書きなどに使える順序なしリストを書くには、先頭にプラス(+)やマイナス(-)、あるいはアスタリスク(*)をつけ、空白に続けてリストのアイテムを書いていく。 (混ぜてもOK)
Markdown + foo + bar + baz - foo - bar - baz * foo * bar * baz + foo - bar * baz
実際の見え方
- foo
- bar
- baz
- foo
- bar
- baz
- foo
- bar
- baz
なお、リストの前後には空行が必要なので、注意。
順序付きリスト
手順などを書くときなどに使える順序付きリストを書くには、先頭に数字とドット(.)を書き、空白に続けてリストのアイテムを書いていく。 (実は、数字はちゃんと順番になってなくてもいい)
Markdown 1. 一つ目 2. 二つ目 3. 三つ目 1. 一つ目 1. 二つ目 1. 三つ目
実際の見え方
- 一つ目
- 二つ目
- 三つ目
- 一つ目
- 二つ目
- 三つ目
入れ子のリスト
リストを入れ子にしたい場合、サブアイテムをインデントしてあげればいい。
Markdown + foo + foo_hoge + foo_huga + bar + bar_hoge + bar_huga + baz + baz_hoge + baz_huga 1. 一つ目 1. 入れ子の1 2. 入れ子の2 2. 二つ目 1. 入れ子の1 2. 入れ子の2 3. 三つ目 1. 入れ子の1 2. 入れ子の2 1. 一 - いち - ひとつ 2. 二 - に - ふたつ 3. 三 - さん - みっつ
実際の見え方
- 一
- いち
- ひとつ
- 二
- に
- ふたつ
- 三
- さん
- みっつ
引用
引用をしたい場合、メールと同じで、>で行を始める。
そして、メールと同じで、二重にすれば入れ子の引用になる。
Markdown >引用になる。 >>ここは入れ子の引用になる。
実際の見え方引用になる。ここは入れ子の引用になる。
水平線
3つ以上のハイフン(-)やアスタリスク(*)、アンダースコア(_)だけを並べると、水平線になる。 (あいだには空白を入れてもいい)
Markdown --- * * *
実際の見え方
コード
インラインコード
インラインでコードを書きたい場合、バッククォート(`)で挟む。
Markdown ここで`select()`を呼び出す。
実際の見え方
ここでselect()
を呼び出す。
コードブロック
コードのかたまりを書きたい場合は、4つ以上の半角スペースを行頭に置く。
Markdown int main(void) { printf("Hello, world!\n") return 0; }
実際の見え方int main(void) { printf("Hello, world!\n") return 0; }
GitHub Flavored Markdownによる拡張では、バッククォート(`)を3つ並べた行で挟むことで、コードブロックを書くことも出来るようになっている。
Markdown ``` int main(void) { printf("Hello, world!\n") return 0; } ```
実際の見え方int main(void) { printf("Hello, world!\n") return 0; }
シンタックスハイライト
GitHub Flavored Markdownによる拡張を使った場合、コードブロックの開始を表すバッククォート3つの後ろに言語を指定することで、シンタックスハイライトがされるようになる。
Markdown ```c int main(void) { printf("Hello, world!\n") return 0; } ```
実際の見え方int main(void) { printf("Hello, world!\n") return 0; }
これは見やすくていいね。
表組みについてまだ書けてないけど、長くなったので今日はここまで!