Skip to content

island205/h2m

Repository files navigation

h2m

logo

npm Build Status Coverage Status

Tool for converting HTML to Markdown, like html2markdown.

online converter: http://island205.github.io/h2m/

online converter

Install

$npm install h2m

How to use

h2m(html[, options])

example

var h2m = require('h2m')

var md = h2m('<h1>Hello World</h1>')
// md = '# Hello World'

options

  • converter: the converter you can choose. now support CommonMark(default) and MarkdownExtra
  • overides: custom converter behavior:
h2m('<a href="http://island205.github.io/h2m/">h2m</a>', {
    overides: {
        a: function(node) {
          /**
          node is an object as the a tag:
          {
            name: "a",
            attrs: {
              href: 'http://island205.github.io/h2m/'
            },
            md: 'h2m'
          }
          */
          return `[This is an link element](${node.attrs.href})`
        }
    }
}

// output [This is an link element](http://island205.github.io/h2m/)

Command Line Tool

install

$ npm install h2m -g

h2m downloads

usage

$h2m -h

Usage: h2m [options]

Options:

  -V, --version      output the version number
  -f, --file <file>  HTML file path or an url adress (default: )
  -c, --clipboard    read HTML from clipboard
  -h, --help         output usage information

Convert a local file:

$ h2m  -f index.html

converting HTML to Markdown

made by [@island205](https://github.com/island205)

Can't be convert? welcome to submit an [issue](https://github.com/island205/h2m/issues/new).

Convert an online url:

$ h2m -f https://baidu.com

Convert from clipboard:

$ h2m -c

Save result:

$ h2m  -f https://google.com > google.md

Support

h2m supports standard Markdown sytax: CommonMark now and Markdown Extra.

CommonMark

  • ✅ br
  • ✅ em
  • ✅ strong
  • ✅ code
  • ✅ a
  • ✅ img
  • ✅ hr
  • ✅ ul, ol
  • ✅ pre
  • ✅ div
  • ✅ p
  • ✅ blockquote
  • ✅ h1 ~ h6

Markdown Extra

  • ✅ Special Attributes for headers link and image
  • ✅ Fenced Code Blocks
  • ✅ dl, dt, dd Definition Lists
  • ✅ abbr Abbreviations
  • ✅ table (tks @天凉's PR')

Contribution

PRs are welcome to implement other extend Markdown language, like Markdown Extra, GFM and so on.

About

Tool for converting HTML to Markdown, like html2markdown.

Resources

Stars

Watchers

Forks

Packages

No packages published