From f01ba949dd2a7d582ea764f11837df534797a4f5 Mon Sep 17 00:00:00 2001 From: Tony Brix Date: Fri, 20 Mar 2020 09:05:18 -0500 Subject: [PATCH 1/3] add html to TextRenderer --- src/TextRenderer.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/TextRenderer.js b/src/TextRenderer.js index 652004d50c..48c36e6999 100644 --- a/src/TextRenderer.js +++ b/src/TextRenderer.js @@ -20,6 +20,10 @@ module.exports = class TextRenderer { return text; } + html(text) { + return text; + } + text(text) { return text; } From 7330a9ca3d3b1d6de8730953beb0777f43beedec Mon Sep 17 00:00:00 2001 From: Tony Brix Date: Fri, 20 Mar 2020 09:05:53 -0500 Subject: [PATCH 2/3] add html test to heading ids --- src/Slugger.js | 3 +++ test/specs/new/headings_id.html | 4 +++- test/specs/new/headings_id.md | 4 +++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Slugger.js b/src/Slugger.js index 51064211c1..147b634e6b 100644 --- a/src/Slugger.js +++ b/src/Slugger.js @@ -13,6 +13,9 @@ module.exports = class Slugger { let slug = value .toLowerCase() .trim() + // remove html tags + .replace(//g, '') + // remove unwanted chars .replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '') .replace(/\s/g, '-'); diff --git a/test/specs/new/headings_id.html b/test/specs/new/headings_id.html index 6f0ae49e32..68d8ab4bcc 100644 --- a/test/specs/new/headings_id.html +++ b/test/specs/new/headings_id.html @@ -1,3 +1,5 @@ +

Heading with html

+

Heading with some italic text

@@ -10,4 +12,4 @@

Or even code

What about strikethrough

- \ No newline at end of file + diff --git a/test/specs/new/headings_id.md b/test/specs/new/headings_id.md index fa8a4d82ca..0852c3718f 100644 --- a/test/specs/new/headings_id.md +++ b/test/specs/new/headings_id.md @@ -1,3 +1,5 @@ +### Heading with html + ### Heading with a [link](http://github.com/) ### Heading with some _italic text_ @@ -11,4 +13,4 @@ ## And a ref [link][destination] -[destination]: /some/url "link to nowhere" \ No newline at end of file +[destination]: /some/url "link to nowhere" From 193a41e78d625765075f652a152366e1e1e17435 Mon Sep 17 00:00:00 2001 From: Tony Brix Date: Sat, 21 Mar 2020 22:05:06 -0500 Subject: [PATCH 3/3] simplify tag regex --- src/Slugger.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Slugger.js b/src/Slugger.js index 147b634e6b..00f63e48f1 100644 --- a/src/Slugger.js +++ b/src/Slugger.js @@ -14,7 +14,7 @@ module.exports = class Slugger { .toLowerCase() .trim() // remove html tags - .replace(//g, '') + .replace(/<[!\/a-z].*?>/ig, '') // remove unwanted chars .replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '') .replace(/\s/g, '-');