[](LICENSE) [](http://godoc.org/github.com/suntong/html2md) [](https://goreportcard.com/report/github.com/suntong/html2md) [](https://travis-ci.org/suntong/html2md) [](http://godoc.org/github.com/go-easygen/wireframe) # TOC - [html2md - HTML to Markdown converter](#html2md---html-to-markdown-converter) - [Usage](#usage) - [$ html2md](#-html2md) - [Examples](#examples) - [Simplest form](#simplest-form) - [Using goquery](#using-goquery) - [The options and plugins](#the-options-and-plugins) - [Testing the new table plugins](#testing-the-new-table-plugins) - [Download/Install](#downloadinstall) - [Download binaries](#download-binaries) - [Install Source](#install-source) - [Credits & Authors](#credits-&-authors) - [Credits](#credits) - [Similar Projects](#similar-projects) - [Author(s) & Contributor(s)](#author(s)-&-contributor(s)) # html2md - HTML to Markdown converter The `html2md` makes use of `github.com/JohannesKaufmann/html-to-markdown` to convert HTML into Markdown, which is using an [HTML Parser](https://github.com/PuerkitoBio/goquery) to avoid the use of `regexp` as much as possible, which can prevent some [weird cases](https://stackoverflow.com/a/1732454) and allows it to be used for cases where the input is totally unknown.  # Usage ### $ html2md ```sh HTML to Markdown Version 0.2.01 built on 2020-08-08 Copyright (C) 2020, Tong Sun HTML to Markdown converter on command line Usage: html2md [Options...] Options: -h, --help display help information -i, --in *The html/xml file to read from (or stdin) -d, --domain Domain of the web page, needed for links when --in is not url -s, --sel CSS/goquery selectors [=body] -v, --verbose Verbose mode (Multiple -v options increase the verbosity.) --opt-heading-style Option HeadingStyle --opt-horizontal-rule Option HorizontalRule --opt-bullet-list-marker Option BulletListMarker --opt-code-block-style Option CodeBlockStyle --opt-fence Option Fence --opt-em-delimiter Option EmDelimiter --opt-strong-delimiter Option StrongDelimiter --opt-link-style Option LinkStyle --opt-link-reference-style Option LinkReferenceStyle -A, --plugin-conf-attachment Plugin ConfluenceAttachments -C, --plugin-conf-code Plugin ConfluenceCodeBlock -F, --plugin-frontmatter Plugin FrontMatter -G, --plugin-gfm Plugin GitHubFlavored -S, --plugin-strikethrough Plugin Strikethrough -T, --plugin-table Plugin Table --plugin-table-compat Plugin TableCompat -L, --plugin-task-list Plugin TaskListItems -V, --plugin-vimeo Plugin VimeoEmbed -Y, --plugin-youtube Plugin YoutubeEmbed ``` # Examples ## Simplest form ```md $ html2md -i https://github.com/suntong/html2md | head -3 [Skip to content](#start-of-content) [Homepage](https://github.com/) ``` ## Using goquery The most useful feature is to use and pass a [goquery](https://github.com/PuerkitoBio/goquery) selection to filter for the content you want. ```md $ html2md -i https://github.com/JohannesKaufmann/html-to-markdown -s "div.BorderGrid-row.hide-sm.hide-md > div" ``` ## The options and plugins Works as expected: ```sh $ echo 'Bold Text' | html2md -i **Bold Text** $ echo 'Bold Text' | html2md -i --opt-strong-delimiter="__" __Bold Text__ $ echo '