markdown-table-parsers

このページは FormatArc のブログ記事が引用している実測の生データです。検索結果には表示されません (noindex)。

Files

FileSize
measure.mjs8.5 KB
package-lock.json50.0 KB
package.json383 B
results.json4.9 KB

results.json

{
  "generatedAt": "2026-08-29T01:20:01.642Z",
  "environment": {
    "node": "v26.7.0",
    "platform": "darwin/arm64",
    "dependencies": {
      "marked": "18.0.5",
      "remark": "15.0.1",
      "remark-gfm": "4.0.1",
      "remark-parse": "11.0.0",
      "remark-rehype": "11.1.2",
      "rehype-stringify": "10.0.1",
      "unified": "11.0.5"
    },
    "github": "GitHub Markdown API (POST https://api.github.com/markdown, mode=markdown)"
  },
  "results": [
    {
      "case": "1) no-blank-line table",
      "input": "Some intro paragraph.\n| h1 | h2 |\n| --- | --- |\n| a | b |\n",
      "verdicts": {
        "GitHub Markdown API": "table",
        "marked 18.0.5": "table",
        "remark + remark-gfm 4.0.1": "table",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "2) single-dash separator",
      "input": "| h1 | h2 |\n| - | - |\n| a | b |\n",
      "verdicts": {
        "GitHub Markdown API": "table",
        "marked 18.0.5": "table",
        "remark + remark-gfm 4.0.1": "table",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "3) escaped pipe inside code span",
      "input": "| code |\n| --- |\n| `a \\| b` |\n",
      "verdicts": {
        "GitHub Markdown API": "code-cell intact",
        "marked 18.0.5": "code-cell intact",
        "remark + remark-gfm 4.0.1": "code-cell intact",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "4) outer-pipe omitted + single dash",
      "input": "h1 | h2\n- | -\na | b\n",
      "verdicts": {
        "GitHub Markdown API": "list",
        "marked 18.0.5": "table",
        "remark + remark-gfm 4.0.1": "list",
        "strict CommonMark (remark-parse, no gfm)": "list"
      }
    },
    {
      "case": "5) two dashes per column",
      "input": "| h1 | h2 |\n| -- | -- |\n| a | b |\n",
      "verdicts": {
        "GitHub Markdown API": "table",
        "marked 18.0.5": "table",
        "remark + remark-gfm 4.0.1": "table",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "6) one dash with alignment colons",
      "input": "| h1 | h2 |\n| :- | -: |\n| a | b |\n",
      "verdicts": {
        "GitHub Markdown API": "table, aligned",
        "marked 18.0.5": "table, aligned",
        "remark + remark-gfm 4.0.1": "table, aligned",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "7) three dashes, outer pipes omitted",
      "input": "h1 | h2\n--- | ---\na | b\n",
      "verdicts": {
        "GitHub Markdown API": "table",
        "marked 18.0.5": "table",
        "remark + remark-gfm 4.0.1": "table",
        "strict CommonMark (remark-parse, no gfm)": "paragraph"
      }
    },
    {
      "case": "8) separator column count differs from header",
      "input": "| h1 | h2 |\n| --- |\n| a | b |\n",
      "verdicts": {
        "GitHub Markdown API": "no-table",
        "marked 18.0.5": "no-table",
        "remark + remark-gfm 4.0.1": "no-table",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "9) <br> inside cell",
      "input": "| h |\n| --- |\n| line1<br>line2 |\n",
      "verdicts": {
        "GitHub Markdown API": "table, <br> kept as line break",
        "marked 18.0.5": "table, <br> kept as line break",
        "remark + remark-gfm 4.0.1": "table, <br> kept as line break",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "10) backslash hard break inside cell",
      "input": "| h |\n| --- |\n| line1\\\nline2 |\n",
      "verdicts": {
        "GitHub Markdown API": "table breaks: content splits across rows/paragraph (3 tr total)",
        "marked 18.0.5": "table breaks: content splits across rows/paragraph (3 tr total)",
        "remark + remark-gfm 4.0.1": "table breaks: content splits across rows/paragraph (3 tr total)",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "11) trailing-two-spaces hard break inside cell",
      "input": "| h |\n| --- |\n| line1  \nline2 |\n",
      "verdicts": {
        "GitHub Markdown API": "table breaks: content splits across rows/paragraph (3 tr total)",
        "marked 18.0.5": "table breaks: content splits across rows/paragraph (3 tr total)",
        "remark + remark-gfm 4.0.1": "table breaks: content splits across rows/paragraph (3 tr total)",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    },
    {
      "case": "12) unescaped pipe inside code span, extra trailing field",
      "input": "| a | b |\n| --- | --- |\n| `x | y` | z |\n",
      "verdicts": {
        "GitHub Markdown API": "code-cell split, z dropped (2 td)",
        "marked 18.0.5": "code-cell split, z dropped (2 td)",
        "remark + remark-gfm 4.0.1": "code-cell split, z dropped (2 td)",
        "strict CommonMark (remark-parse, no gfm)": "no-table"
      }
    }
  ]
}