設定の features と文書の印で、機能のオン・オフを切り替える
機能の既定を設定で決めるとき、文書を書く人がその文書だけ機能を切り替えるときに実行する。
features を書くfeatures:
print: false
使う側のサーバーが mdmark.config.yaml を読んだオブジェクトを、mount の config に渡す(文書を描く)。
書かなかった機能は既定のままになる。
機能の名前と既定は 機能の既定。
features:
table: false
callout: false
表と注意書きの機能をオフにする。 オフにした記法は、書いた Markdown を普通の Markdown として描く。 記法の機能の名前は 記法の機能。
features:
glossary: false
backlinks: false
glossary は用語のツールチップ、backlinks は被参照の一覧と文書の別名の機能。
glossary をオフにすると、用語集の表は普通の表として描く。
backlinks をオフにすると、末尾の一覧を出さず、文書の別名にだけ一致する語に下線を付けず、ツールチップから「関連文書」の区分を外す。
書き方は 索引と用語集を書く、機能の名前は 用語の機能 と 被参照の機能。
features:
html: false
hints: false
html は <!-- html --> の範囲の html のコードブロックを HTML として描く機能。
オフにすると、印を取り除き、コードブロックをコードのまま描く。
hints は data-hint・図の箱の hint と io・線の tip のツールチップの機能。
オフにすると、ツールチップの中身と印を出さない。線のラベルと箱の名前は出す。
書き方は コードブロックのHTMLを描く、機能の名前は 記法の機能。
features:
views: false
comments: true
views は <!-- view --> の範囲の表を、ボード表示と表形式を切り替えるビューにする機能。
オフにすると、印を取り除き、範囲の表を普通の表として描く(書き方の警告も出さない)。
comments は、読む人が本文の選んだ箇所にコメントを付けられる機能で、既定がオフ。
オンにしたうえで、mount に docId と commentStore を渡したときだけ効く。
書き方は ビューとコメントを使う、機能の名前は 記法の機能 と コメントの機能。
<!-- features: -print -->
+機能 でオン、-機能 でオフにする。
<!-- features: +機能A -機能B --> のように、空白で区切って複数書ける。
印は描いた本文に残らない。
コードブロックと行内のコードの中に書いた印は、印として扱わない。
複数の印は書いた順に重ね、同じ名前が何度も出たら後に書いたものが勝つ。 知らない機能名は無視する。 優先順は 文書を描く仕組み。
即時。mount と update で描くたびに、そのとき描く文書の印で決め直す。
<!-- features: -print --> を書いた文書で、閉じた折り畳み(details)を持つものを描く。
ブラウザの印刷プレビューを開き、折り畳みが閉じたままになっている。
設定で print を false にし、文書に <!-- features: +print --> を書く。
ブラウザの印刷プレビューを開き、折り畳みが開いている。
<!-- features: -table -callout --> を書いた文書で、<!-- table: data --> で囲んだ表と > [!NOTE] の引用を描く。
document.querySelector(".mdmark .mdmark-table") === null && document.querySelector(".mdmark .markdown-alert") === null
true が出る。
表に並べ替えのボタンが無く、引用は注意書きの枠にならず引用のまま描かれている。
<!-- features: -glossary -backlinks --> を書いた文書で、索引を渡し、索引の用語が出る段落を描く。
document.querySelector(".mdmark .mdmark-term") === null && document.querySelector(".mdmark .mdmark-backlinks") === null
true が出る。
用語に下線が付かず、文書の末尾に被参照の一覧が無い。
<!-- features: -html --> を書いた文書で、<!-- html --> で囲んだ html のコードブロックを描く。
document.querySelector(".mdmark .mdmark-html") === null && document.querySelector(".mdmark pre code.language-html") !== null
true が出る。
コードブロックが HTML として描かれず、コードのまま出ている。
<!-- features: -hints --> を書いた文書で、data-hint を持つ要素を埋め込んだ HTML に置いて描く。
document.querySelector(".mdmark [data-hint], .mdmark .mdmark-hint-mark") === null
true が出る。
埋め込んだ HTML は描かれ、ツールチップの印が無い。
<!-- features: -views --> を書いた文書で、<!-- view: group=状態 --> で囲んだ表を描く。
document.querySelector(".mdmark .mdmark-view") === null && document.querySelector(".mdmark table") !== null
true が出る。
ビューの切り替えが無く、表が普通の表で描かれている。
comments を指定しない文書で、commentStore を渡して本文の文字を選ぶ。
コメントのボタンが出ず、commentStore の load も呼ばれない。
<!-- features: +comments --> を書くと、文字を選んだときにボタンが出る。
設定の features と文書の印を消す。
既定のオン・オフに戻る。