meta-marked

0.5.0 • Public • Published

meta-marked

The marked markdown processor for Node.js with support for YAML metadata

Dependency Status

Just a quick extension I needed for processing markdown in Node. Props to Christopher Jeffrey for his excellent markdown processor 'marked'.

The meta-marked function behaves exactly the same as marked, except for the following:

  • Instead of returning a parsed string, meta-marked returns an object with the following properties:
    • meta contains the metadata object or null if metadata isn't found
    • html contains the parsed HTML
    • markdown contains the text of the markdown section of the string
  • metaMarked.noMeta is a reference to the marked function, so it can be used to avoid parsing metadata.

In order to include metadata in a document, insert YAML at the top of the document surrounded by --- and .... Note that if the given string doesn't start with ---, it will not be interpreted as having metadata.

Example

---
Title:   My awesome markdown file
Author:  Me
Scripts:
    - js/doStuff.js
    - js/doMoreStuff.js
...

##Header
Regular text and stuff goes here.

You can also use the approach below, which will result in a very nice data table at the top of your markdown when viewing the file GitHub:

---
Title:   My awesome markdown file
Author:  Me
Scripts:
    - js/doStuff.js
    - js/doMoreStuff.js
---

##Header
Regular text and stuff goes here.

Both of the above will result in the following output:

{
    "meta": {
        "Title": "My awesome markdown file",
        "Author": "Me",
        "Scripts": [
            "js/doStuff.js",
            "js/doMoreStuff.js"
        ]
    },
    "html": "<h2>Header</h2>\n<p>Regular text and stuff goes here.</p>\n",
    "markdown": "\n\n##Header\nRegular text and stuff goes here."
}

Testing

npm test

Licensed under the MIT License. © 2013-2014 j201

Readme

Keywords

Package Sidebar

Install

npm i meta-marked

Weekly Downloads

479

Version

0.5.0

License

MIT

Unpacked Size

5.09 kB

Total Files

4

Last publish

Collaborators

  • j201