これで全部ではないし、どちらかといえばPandocユーザーズガイド日本版に記載されているものはそれを読むほうが早いので、記載されていないものを中心にあまり知られていないものを集めてみた。

上付き文字 (superscript)

^ではさむ。

下付き文字 (subscript)

~ではさむ。

打ち消し

~~で挟む

ヘッダーのIDを制御する

日本語を使用している場合やかぶる場合、あるいは主導でヘッダーへのフラグメントを書く場合などは名前をつけたいもの。

これでこのh1ヘッダのIDはHelloWorldになる。

divとspan

ユーザーズガイドに記載されていない機能。

div

3つ以上のコロンをフェンスブロックのように使用する。

span

[]形式。

特にspanに関しては{}を伴わないのは危険かもしれない。

任意にID/クラス/属性を書く

ユーザーズガイドに記載されていない機能。

{...}という形式でヘッダやコードブロックに限らずIDを明示することができる。 #IDによるIDと、.classによるクラス表記ができるほか、attr_name="attr_value"という形で属性も書くことができる。

これはインラインコード, コードブロック, リンク, 画像, ヘッダ, div, spanなどで利用できる。

順序つきリストにラベルをつける

順序つきリストマーカーに(@)という形式があり、(@label)と書くことができる。 そして(@label)として参照できる。

結果

シンタックスハイライトニング

フェンスブロックで言語名を書けばよい。 一応、ユーザーズガイドにはないZshなんかも対応している。

クラスとして言語が指定された場合もそれを認識する。

なお、対応している言語を指定したときだけsourceCodeというクラスが振られるようになっている。

コードに行番号をつける

ユーザーズガイドに記載されていない機能。

コードブロックにnumberSourceというクラスが設定されていると行番号をつける。 numberSourceをつけていなくても必要な情報自体はついているので、CSSを改変すれば必須ということもない。

定義リスト

dtは普通に先頭からはじめて、dd側を:に続けてインデントする。

まずddが一行なのであれば、空行をあけずに書けば良い。

複数の段落に渡るような場合は空行をあける。 ddの最初の行は:にスペース3つ、以降はスペース4つ。

ラインブロック

いわゆるVerb。

単に|ではじめるだけ。

リストにブロックレベルのコンテンツを含む

定義リストと同じように継続するものが4つのスペースではじまっていると、それは複数のブロックレベル要素を含むものとみなしてくれる。

このため、4つのスペースでコードブロックを表している場合、これをリストの一部だとみなしてしまう。

コメントをいれれば良い、とガイドにはあるのだが、これはHTML以外で困る。 タブを使えば解決するのだが、いくらなんでもスペースでインデントしてからタブを重ねるのは嫌という人もいるだろう。 であれば、フェンスブロックを使えば良い。

YAML front matter

Markdownの先頭にYAMLを置くことでメタデータを書くことができる。 title, subtitle, author, date, keywordsはofficialなもの。

テーブルキャプション

ユーザーズガイドに記載されていない機能。

方法その1。手前に:で始まる行を置く。

もうひとつはTable:という行を後置する。

コードブロックにキャプションをつける

captionという属性を書くとdata-captionが定義されるので、

とCSSに書いておけば良い。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください