Module front_matter/mod

    Extracts front matter from strings. Adapted from jxson/front-matter.

    import { test, extractJson } from "@std/front-matter";
    import { assertEquals } from "@std/assert";

    const str = "---json\n{\"and\": \"this\"}\n---\ndeno is awesome";

    assertEquals(test(str), true);
    assertEquals(extractJson(str), {
    frontMatter: "{\"and\": \"this\"}",
    body: "deno is awesome",
    attrs: { and: "this" }
    });

    extract and test support the following delimiters.

    ---json
    {
    "and": "this"
    }
    ---
    {
    "is": "JSON"
    }
    import { test, extractToml } from "@std/front-matter";
    import { assertEquals } from "@std/assert";

    const str = "---toml\nmodule = 'front_matter'\n---\ndeno is awesome";

    assertEquals(test(str), true);
    assertEquals(extractToml(str), {
    frontMatter: "module = 'front_matter'",
    body: "deno is awesome",
    attrs: { module: "front_matter" }
    });

    extract and test support the following delimiters.

    ---toml
    this = 'is'
    ---
    = toml =
    parsed = 'as'
    toml = 'data'
    = toml =
    +++
    is = 'that'
    not = 'cool?'
    +++
    import { test, extractYaml } from "@std/front-matter";
    import { assertEquals } from "@std/assert";

    const str = "---yaml\nmodule: front_matter\n---\ndeno is awesome";

    assertEquals(test(str), true);
    assertEquals(extractYaml(str), {
    frontMatter: "module: front_matter",
    body: "deno is awesome",
    attrs: { module: "front_matter" }
    });

    extract and test support the following delimiters.

    ---
    these: are
    ---
    
    ---yaml
    all: recognized
    ---
    = yaml =
    as: yaml
    = yaml =

    Index