Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/island205/h2m
Tool for converting HTML to Markdown, like html2markdown.
https://github.com/island205/h2m
Last synced: 3 months ago
JSON representation
Tool for converting HTML to Markdown, like html2markdown.
- Host: GitHub
- URL: https://github.com/island205/h2m
- Owner: island205
- Created: 2016-01-09T03:25:57.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2023-06-07T09:13:11.000Z (over 1 year ago)
- Last Synced: 2024-04-14T15:07:47.973Z (10 months ago)
- Language: HTML
- Homepage: http://island205.github.io/h2m/
- Size: 768 KB
- Stars: 271
- Watchers: 12
- Forks: 43
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- project-awesome - island205/h2m - Tool for converting HTML to Markdown, like html2markdown. (HTML)
README
# h2m
![logo](./design/[email protected])
[![npm](https://img.shields.io/npm/v/h2m.svg)](https://www.npmjs.com/package/h2m)
[![Build Status](https://travis-ci.org/island205/h2m.svg)](https://travis-ci.org/island205/h2m)
[![Coverage Status](https://coveralls.io/repos/island205/h2m/badge.svg?branch=master)](https://coveralls.io/github/island205/h2m)Tool for converting HTML to Markdown, like [html2markdown](https://github.com/29decibel/html2markdown).
online converter: http://island205.github.io/h2m/
![online converter](./images/online-converter.png)
## Install
```bash
$npm install h2m
```
## How to use**h2m(html[, options])**
### example
```javascript
var h2m = require('h2m')var md = h2m('
Hello World
')
// md = '# Hello World'
```### options
- `converter`: the converter you can choose. now support `CommonMark`(default) and `MarkdownExtra`
- `overides`: custom converter behavior:```javascript
h2m('h2m', {
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
```bash
$ npm install h2m -g
```[![h2m downloads](https://nodei.co/npm-dl/h2m.png?months=1)](https://www.npmjs.com/package/h2m)
### usage
```
$h2m -hUsage: h2m [options]
Options:
-V, --version output the version number
-f, --file HTML file path or an url adress (default: )
-c, --clipboard read HTML from clipboard
-h, --help output usage information
```Convert a local file:
```bash
$ h2m -f index.htmlconverting 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:
```bash
$ h2m -f https://baidu.com
```Convert from clipboard:
```bash
$ h2m -c
```Save result:
```bash
$ h2m -f https://google.com > google.md
```## Support
`h2m` supports standard Markdown sytax: [CommonMark](http://commonmark.org/help/) now and [Markdown Extra](https://michelf.ca/projects/php-markdown/extra/).
### CommonMark
- :white_check_mark: br
- :white_check_mark: em
- :white_check_mark: strong
- :white_check_mark: code
- :white_check_mark: a
- :white_check_mark: img
- :white_check_mark: hr
- :white_check_mark: ul, ol
- :white_check_mark: pre
- :white_check_mark: div
- :white_check_mark: p
- :white_check_mark: blockquote
- :white_check_mark: h1 ~ h6### Markdown Extra
- :white_check_mark: Special Attributes for headers link and image
- :white_check_mark: Fenced Code Blocks
- :white_check_mark: dl, dt, dd Definition Lists
- :white_check_mark: abbr Abbreviations
- :white_check_mark: table (tks [@天凉](https://github.com/daycool)'s PR')## Contribution
PRs are welcome to implement other extend Markdown language, like [Markdown Extra](https://en.wikipedia.org/wiki/Markdown_Extra), [GFM](https://help.github.com/articles/github-flavored-markdown/) and so on.