marky-markdown - npm 的 markdown 解析器


ISC
跨平台
JavaScript

软件简介

marky-markdown 是 npm 的官方 markdown 解析器,基于 NodeJS 编写,旨在用 GitHub-style markdown
进行奇偶校验。它由一个最好的 CommonMark markdown 解析器——markdown-it 构建。

安装

npm install marky-markdown --save

编程中使用

marky-markdown 输出单独函数。为了基本使用,这个函数使用一个由字符串转换而成的参数。

var marky = require("marky-markdown")
marky("# hello, I'm markdown").html()

命令行使用

你可以在 shell 中使用 marky-markdown 来解析 markdown 文件,最简单的方法是全局安装它。

npm i -g marky-markdown
marky-markdown some.md > some.html

它能做什么

  • Parses markdown with markdown-it, a fast and commonmark-compliant parser.

  • Removes broken and malicious user input with sanitize-html

  • Applies syntax highlighting to GitHub-flavored code blocks using the highlights library from Atom.

  • Uses cheerio to perform various feats of DOM manipulation.

  • Converts :emoji:-style shortcuts to unicode emojis.

  • Converts headings (h1, h2, etc) into anchored hyperlinks.

  • Converts relative GitHub links to their absolute equivalents.

  • Converts relative GitHub images sources to their GitHub raw equivalents.

  • Converts insecure Gravatar URLs to HTTPS.

  • Converts list items with leading [ ] and [x] into GitHub-style task lists

  • Wraps embedded YouTube videos so they can be styled.

  • Parses and sanitizes package.description as markdown.

  • Applies CSS classes to redundant content that closely matches npm package name and description.

  • Applies CSS classes to badge images, so we can do something interesting with them one day.

npm 包

var package = {
  name: "foo",
  description: "foo is a thing",
  repository: {
    type: "git",
    url: "https://github.com/kung/foo"
  }
}
marky(
  "# hello, I am the foo readme",
  {package: package}
).html()