From 7ad584014653358a7ba8a545f1c0549c04be16e2 Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Mon, 23 Sep 2024 15:48:27 +0200 Subject: [PATCH 1/5] No automatic syntax highlighting for "unknown" languages --- scripts/md2html/md2html.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/md2html/md2html.js b/scripts/md2html/md2html.js index ef95f67761..58690bfcff 100644 --- a/scripts/md2html/md2html.js +++ b/scripts/md2html/md2html.js @@ -36,7 +36,7 @@ const md = require('markdown-it')({ ''; } - return '
' + md.utils.escapeHtml(str) + '
'; + return '
' + md.utils.escapeHtml(str) + '
'; } }); From 99df8e9875a8fd8e23e132249a8cb13fd64875d5 Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Mon, 23 Sep 2024 15:58:46 +0200 Subject: [PATCH 2/5] Adjust test fixture Jay, I had a test for this :smile: --- tests/md2html/fixtures/basic-new.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/md2html/fixtures/basic-new.html b/tests/md2html/fixtures/basic-new.html index f9fecd4a12..c44118063b 100644 --- a/tests/md2html/fixtures/basic-new.html +++ b/tests/md2html/fixtures/basic-new.html @@ -24,7 +24,7 @@
text/plain
 
-
no language
+
no language
 

Appendix A: Revision History

From 3b076263cac43e2b16d6797b4c7af3b8d6e555d6 Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Mon, 23 Sep 2024 17:25:32 +0200 Subject: [PATCH 3/5] Warn about unsupported languages --- scripts/md2html/md2html.js | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/md2html/md2html.js b/scripts/md2html/md2html.js index 58690bfcff..af2b4e2fc6 100644 --- a/scripts/md2html/md2html.js +++ b/scripts/md2html/md2html.js @@ -36,6 +36,7 @@ const md = require('markdown-it')({ ''; } + if (lang) console.warn('highlight.js does not support language',lang); return '
' + md.utils.escapeHtml(str) + '
'; } }); From 6e9e25fc4cc59c3d1a01a81c6e03abbf8a5f8a47 Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Mon, 23 Sep 2024 17:47:47 +0200 Subject: [PATCH 4/5] Add test for new warning message --- tests/md2html/fixtures/basic-new.html | 2 ++ tests/md2html/fixtures/basic-new.md | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/tests/md2html/fixtures/basic-new.html b/tests/md2html/fixtures/basic-new.html index c44118063b..883c073a65 100644 --- a/tests/md2html/fixtures/basic-new.html +++ b/tests/md2html/fixtures/basic-new.html @@ -26,6 +26,8 @@
no language
 
+
unknown language
+

Appendix A: Revision History

diff --git a/tests/md2html/fixtures/basic-new.md b/tests/md2html/fixtures/basic-new.md index 8d0c1e6efd..1d1d698491 100644 --- a/tests/md2html/fixtures/basic-new.md +++ b/tests/md2html/fixtures/basic-new.md @@ -50,6 +50,10 @@ text/plain no language ``` +```unknown +unknown language +``` + ## Appendix A: Revision History Version | Date From 281116b9101c4b3234af8d2b3ad739be5fee800e Mon Sep 17 00:00:00 2001 From: Ralf Handl Date: Tue, 24 Sep 2024 11:37:42 +0200 Subject: [PATCH 5/5] Custom languages uri and uritemplate --- scripts/md2html/md2html.js | 35 +++++++++++++++++++++++++++ tests/md2html/fixtures/basic-new.html | 4 +++ tests/md2html/fixtures/basic-new.md | 8 ++++++ 3 files changed, 47 insertions(+) diff --git a/scripts/md2html/md2html.js b/scripts/md2html/md2html.js index af2b4e2fc6..fd3ec78f69 100644 --- a/scripts/md2html/md2html.js +++ b/scripts/md2html/md2html.js @@ -13,6 +13,41 @@ const path = require('path'); const url = require('url'); const hljs = require('highlight.js'); +hljs.registerLanguage('uritemplate', function() { + return { + case_insensitive: true, + contains: [ + { + scope: "attr", + match: /(?<=[{,])[^,}\n\r]+/, + } + ], + } + }); +hljs.registerLanguage('uri', function() { + return { + case_insensitive: true, + classNameAliases: { + pathsegment: "attr", + option: "attr", + value: "literal" + }, + contains: [ + { + scope: "pathsegment", + match: /(?<=[/])[^/?#\n\r]+/, + }, + { + scope: "option", + match: /(?<=[?&#])[^=?&#\n\r]+/, + }, + { + scope: "value", + match: /(?<=\=)[^?&#\n\r]+/, + } + ], + } + }); const cheerio = require('cheerio'); let argv = require('yargs') diff --git a/tests/md2html/fixtures/basic-new.html b/tests/md2html/fixtures/basic-new.html index 883c073a65..c1b911743b 100644 --- a/tests/md2html/fixtures/basic-new.html +++ b/tests/md2html/fixtures/basic-new.html @@ -28,6 +28,10 @@
unknown language
 
+
https://foo.com/bar?baz=qux&fred=waldo#fragment
+
+
https://foo.com/bar{?baz*,qux}
+

Appendix A: Revision History

diff --git a/tests/md2html/fixtures/basic-new.md b/tests/md2html/fixtures/basic-new.md index 1d1d698491..2119776f54 100644 --- a/tests/md2html/fixtures/basic-new.md +++ b/tests/md2html/fixtures/basic-new.md @@ -54,6 +54,14 @@ no language unknown language ``` +```uri +https://foo.com/bar?baz=qux&fred=waldo#fragment +``` + +```uritemplate +https://foo.com/bar{?baz*,qux} +``` + ## Appendix A: Revision History Version | Date