Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

shmatter

coolaj865MPL-2.01.0.1

Parse bash comments as if they were YAML frontmatter, almost.

bash, sh, shell, yaml, yml, frontmatter, markdown

readme

Shmatter

Parse bash comments as if they were frontmatter.

It's not really YAML, but it's intended to look like it!

Example

Consider this bash file:

#!/bin/bash

# title: Foo Bar
# tagline: Messes stuff up
# homepage: https://example.com/foobar
# description: |
#   Foo Bar is a community-festered, government-driven destruction (GDD) system.
# examples: |
#
#   Really mess something up
#
#   ```bash
#   foobar my-file.txt
#   ````
#
#   Mess up an entire volume, forcefully and recursively
#
#   ```bash
#   foobar -rf /
#   ```

rm -i "${0}" "${1}"

Now consider parsing it with shmatter:

var shmatter = require("shmatter");
var bash = fs.readFileSync("./myscript.sh", "utf8");
var meta = shmatter(bash);

console.log(meta);

This is what you'd get:

{
  title: 'Foo Bar',
  tagline: 'Messes stuff up',
  description: '<p>Foo Bar is a community-festered, government-driven destruction (GDD) system.</p>\n',
  examples: '<p>Really mess something up</p>\n' +
    '<pre><code class="language-bash">foobar my-file.txt</code></pre>\n' +
    '<p>Mess up an entire volume, forcefully and recursively</p>\n' +
    '<pre><code class="language-bash">foobar -rf /</code></pre>\n',
  homepage: 'https://example.com/foobar'
}

Why?

Pfff... go ask yourself!

I know it was a dumb idea. I've moved on. I'm healing... but why are you here?