aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTong Sun <[email protected]>2020-08-09 11:42:51 -0400
committerTong Sun <[email protected]>2020-08-09 11:42:51 -0400
commit19ead5b3f9722a404244a5f93050ccfc17bb08c2 (patch)
tree68fc51c689e4f40577bd8fa9f7ec872f7048825b
parent- [*] refactor out handleOptions() & handlePlugins() to reduce cyclomatic com... (diff)
downloadhtml2md-19ead5b3f9722a404244a5f93050ccfc17bb08c2.tar.xz
html2md-19ead5b3f9722a404244a5f93050ccfc17bb08c2.zip
- [+] add TableCompat plugin; enable Table
-rw-r--r--README.e.md33
-rw-r--r--README.md37
-rw-r--r--html2md_cli.yaml5
-rw-r--r--html2md_cliDef.go4
-rw-r--r--html2md_main.go4
-rw-r--r--prop_html2md.go9
6 files changed, 85 insertions, 7 deletions
diff --git a/README.e.md b/README.e.md
index 247ab69..233cb81 100644
--- a/README.e.md
+++ b/README.e.md
@@ -59,6 +59,39 @@ $ echo 'Only <del>blue ones</del> <s> left</s>' | html2md -i --plugin-strikethro
Only ~blue ones~ ~left~
```
+## Testing the new table plugins
+
+```sh
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i -T | head -6
+| Firstname | Lastname | Age |
+| --- | --- | --- |
+| Jill | Smith | 50 |
+| Eve | Jackson | 94 |
+| Empty | | |
+| End |
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i -T --domain example.com | diff -wU 1 $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/output.table.golden -
+---
+@@ -41 +41,2 @@
+ | `var` | b | c |
+\ No newline at end of file
++
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i --plugin-table-compat | head -6
+Firstname · Lastname · Age
+
+Jill · Smith · 50
+
+Eve · Jackson · 94
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i --plugin-table-compat --domain example.com | diff -wU 1 $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/output.tablecompat.golden -
+---
+@@ -41 +41,2 @@
+ `var` · b · c
+\ No newline at end of file
++
+```
+
# Debian package
Will be available once `github.com/JohannesKaufmann/html-to-markdown` has a release version.
diff --git a/README.md b/README.md
index 819327f..b066aeb 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,7 @@
- [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)
- [Debian package](#debian-package)
- [Install Source](#install-source)
- [Credits](#credits)
@@ -32,7 +33,7 @@ to convert HTML into Markdown, which is using an [HTML Parser](https://github.co
### $ html2md
```sh
HTML to Markdown
-Version 0.1.01 built on 2020-07-26
+Version 0.2.01 built on 2020-08-08
Copyright (C) 2020, Tong Sun
HTML to Markdown converter on command line
@@ -64,6 +65,7 @@ Options:
-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
@@ -109,6 +111,39 @@ $ echo 'Only <del>blue ones</del> <s> left</s>' | html2md -i --plugin-strikethro
Only ~blue ones~ ~left~
```
+## Testing the new table plugins
+
+```sh
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i -T | head -6
+| Firstname | Lastname | Age |
+| --- | --- | --- |
+| Jill | Smith | 50 |
+| Eve | Jackson | 94 |
+| Empty | | |
+| End |
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i -T --domain example.com | diff -wU 1 $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/output.table.golden -
+---
+@@ -41 +41,2 @@
+ | `var` | b | c |
+\ No newline at end of file
++
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i --plugin-table-compat | head -6
+Firstname · Lastname · Age
+
+Jill · Smith · 50
+
+Eve · Jackson · 94
+
+$ cat $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/input.html | html2md -i --plugin-table-compat --domain example.com | diff -wU 1 $GOPATH/src/github.com/JohannesKaufmann/html-to-markdown/testdata/TestPlugins/table/output.tablecompat.golden -
+---
+@@ -41 +41,2 @@
+ `var` · b · c
+\ No newline at end of file
++
+```
+
# Debian package
Will be available once `github.com/JohannesKaufmann/html-to-markdown` has a release version.
diff --git a/html2md_cli.yaml b/html2md_cli.yaml
index 81af3db..a12a6fb 100644
--- a/html2md_cli.yaml
+++ b/html2md_cli.yaml
@@ -114,6 +114,11 @@ Options:
Flag: "T,plugin-table"
Usage: Plugin Table
+ - Name: PluginTableCompat
+ Type: bool
+ Flag: "plugin-table-compat"
+ Usage: Plugin TableCompat
+
- Name: PluginTaskListItems
Type: bool
Flag: "L,plugin-task-list"
diff --git a/html2md_cliDef.go b/html2md_cliDef.go
index 04b9490..c27b33b 100644
--- a/html2md_cliDef.go
+++ b/html2md_cliDef.go
@@ -42,6 +42,7 @@ type rootT struct {
PluginGitHubFlavored bool `cli:"G,plugin-gfm" usage:"Plugin GitHubFlavored"`
PluginStrikethrough bool `cli:"S,plugin-strikethrough" usage:"Plugin Strikethrough"`
PluginTable bool `cli:"T,plugin-table" usage:"Plugin Table"`
+ PluginTableCompat bool `cli:"plugin-table-compat" usage:"Plugin TableCompat"`
PluginTaskListItems bool `cli:"L,plugin-task-list" usage:"Plugin TaskListItems"`
PluginVimeoEmbed bool `cli:"V,plugin-vimeo" usage:"Plugin VimeoEmbed"`
PluginYoutubeEmbed bool `cli:"Y,plugin-youtube" usage:"Plugin YoutubeEmbed"`
@@ -84,6 +85,7 @@ var root = &cli.Command{
// PluginGitHubFlavored bool
// PluginStrikethrough bool
// PluginTable bool
+// PluginTableCompat bool
// PluginTaskListItems bool
// PluginVimeoEmbed bool
// PluginYoutubeEmbed bool
@@ -96,7 +98,7 @@ var root = &cli.Command{
// var (
// progname = "html2md"
// version = "0.1.0"
-// date = "2020-07-26"
+// date = "2020-08-09"
// rootArgv *rootT
// // Opts store all the configurable options
diff --git a/html2md_main.go b/html2md_main.go
index ebf91fe..2bb6225 100644
--- a/html2md_main.go
+++ b/html2md_main.go
@@ -49,8 +49,8 @@ type OptsT struct {
var (
progname = "html2md"
- version = "0.1.01"
- date = "2020-07-25"
+ version = "0.2.01"
+ date = "2020-08-08"
rootArgv *rootT
// Opts store all the configurable options
diff --git a/prop_html2md.go b/prop_html2md.go
index a65cc6b..2435f23 100644
--- a/prop_html2md.go
+++ b/prop_html2md.go
@@ -99,9 +99,12 @@ func handlePlugins(conv *md.Converter, rootArgv *rootT) *md.Converter {
if rootArgv.PluginStrikethrough {
conv.Use(plugin.Strikethrough(""))
}
- // if rootArgv.PluginTable {
- // conv.Use(plugin.Table())
- // }
+ if rootArgv.PluginTable {
+ conv.Use(plugin.Table())
+ }
+ if rootArgv.PluginTableCompat {
+ conv.Use(plugin.TableCompat())
+ }
if rootArgv.PluginTaskListItems {
conv.Use(plugin.TaskListItems())
}