Build your personal knowledge base with TriliumNext Notes
 
 
 
 
 
 
Go to file
Laurent Cozic 18e93d7c0b
Update package.json
2018-05-24 12:34:39 +07:00
config Add gfm plugins 2017-11-10 14:21:46 +07:00
src Handle colspan in TD tags 2018-05-24 12:31:40 +07:00
test Handle tables with no headers by creating an empty Markdown header 2018-05-17 01:01:36 +07:00
.gitignore Do not track test browser build 2017-11-24 11:20:42 +07:00
.travis.yml Add travis config 2017-12-15 08:36:34 +07:00
LICENSE Initial commit 2017-11-10 14:09:07 +07:00
README.md Handle colspan in TD tags 2018-05-24 12:31:40 +07:00
package-lock.json 1.0.5 2018-05-22 00:15:34 +07:00
package.json Update package.json 2018-05-24 12:34:39 +07:00
publish.sh Replace newlines inside table cells so that resulting markdown is valid 2018-05-21 23:42:02 +07:00

README.md

turndown-plugin-gfm

A Turndown plugin which adds GitHub Flavored Markdown extensions.

This is a fork of the original turndown-plugin-gfm for use with Joplin. The changes are:

  • New: Always render tables even if they don't have a header.
  • New: Don't render the border of tables that contain other tables (frequent for websites that do the layout using tables). Only render the inner tables, if any, and if they also don't contain other tables.
  • New: Replace newlines (\n) with <br> inside table cells so that multi-line content is displayed correctly as Markdown.
  • New: Table cells are at least three characters long (padded with spaces) so that they render correctly in GFM-compliant renderers.
  • New: Handle colspan in TD tags
  • Fixed: Ensure there are no blank lines inside tables (due for example to an empty <tr> tag)

Installation

npm:

npm install joplin-turndown-plugin-gfm

Usage

// For Node.js
var TurndownService = require('turndown')
var turndownPluginGfm = require('joplin-turndown-plugin-gfm')

var gfm = turndownPluginGfm.gfm
var turndownService = new TurndownService()
turndownService.use(gfm)
var markdown = turndownService.turndown('<strike>Hello world!</strike>')

turndown-plugin-gfm is a suite of plugins which can be applied individually. The available plugins are as follows:

  • strikethrough (for converting <strike>, <s>, and <del> elements)
  • tables
  • taskListItems
  • gfm (which applies all of the above)

So for example, if you only wish to convert tables:

var tables = require('turndown-plugin-gfm').tables
var turndownService = new TurndownService()
turndownService.use(tables)

License

turndown-plugin-gfm is copyright © 2017+ Dom Christie and released under the MIT license.