見出し画像

そもそもmarkdownとは

方言が多い問題は、ちょっと、置いておくとして
また、最近流行っている理由はAIに聞いて下さい

そもそもmarkdownとは

開発者自身の情報では、下記によると

概要・導入

  • Markdownは、ウェブ執筆者向けのテキスト→HTML変換ツール

  • 「Markdown」は2つのものを指す言葉:①プレーンテキストの書式構文、②その構文をHTMLに変換するPerl製ソフトウェアツール

  • 最優先の設計目標は可読性。Markdown文書はプレーンテキストのままでも「そのまま公開できる」べきだという考え方

  • 最大の着想源は、プレーンテキストのメールの書式

また、同下記によると

Overview(概要)

  • Philosophy(哲学):可読性最優先という設計思想。着想源としてSetext・atx・Textile・reStructuredTextなど複数の既存ツールを挙げつつ、最大の着想源はやはりプレーンテキストのメールだと明記。記号自体が意味を視覚的に表すよう選ばれている(`強調`はまさに強調に見える、など)

  • Inline HTML:「HTMLでカバーされない書式はHTML自体を使えばよい」という一節がここに含まれる


まとめると

markdownは、プレーンテキストのままでも「そのまま公開できる」べきだ、という考えで、
カバーされない書式はHTML自体を使えばよい

という考えで、機能不足方向には口が開いた状態、知りません、という仕様というところがポイントだと思う
これが、方言が多発する原因の一つかもしれません。markdown自体としては、仕様を詰めようがないというか。。。


補足

markdownは、以下のような特徴もあり、「構造化データ」とは言い難い

この切り口↑ でも、markdownは、頑張らない頑張れない方向。
以下、AI(Claude)解説

そもそも単一の文法として確定していない

JSONにはRFC 8259という単一の仕様があり、XMLにはW3Cの単一仕様(+DTD/XSDによるスキーマ検証)があります。しかしMarkdownは、これまで話してきた通りCommonMark・GFM・MultiMarkdownなど複数の方言が並立しており、同じ入力でもパーサーによって木構造の解釈が変わり得ます。「構造化データ」を名乗るなら、まず前提として全パーサーが同じ木を返すことが必要ですが、Markdownはその前提を満たしていません。

以下も、よく状況を表現していると思います。


「妥当性(validity)」という概念がそもそも存在しない

以前引用したRFC 7763には、Markdownの原案が明示的に「妥当性」という概念を否定していると書かれています。つまり「不正なMarkdown」というものは存在しないという立場です。一方JSONやXMLは、キーの引用符や括弧の対応など厳密な文法規則があり、逸脱を一切許さない仕様になっています。JSONにはJSON Schemaのようなデータ検証の仕組みもあります。「間違った書き方をしたら弾かれる」という機構自体がMarkdownには存在しないわけです。


まとめなおし

markdownの仕様を考えるとき、上記のような事項を頭に入れておくと役立つような気がします😄。


いいなと思ったら応援しよう!

アールグレイ 頂いたチップを、一旦、 コーヒー☕ + パウンドケーキ にして、体に入れて、それであらたなnote記事を書きます!!