diff --git a/extensions/markdown/syntaxes/markdown.tmLanguage b/extensions/markdown/syntaxes/markdown.tmLanguage
index d9429dcf6a0..f6f109289f2 100644
--- a/extensions/markdown/syntaxes/markdown.tmLanguage
+++ b/extensions/markdown/syntaxes/markdown.tmLanguage
@@ -354,11 +354,11 @@
while
- ^\s*(?!</(script|style|pre)>)
+ ^(?!.*</(script|style|pre)>)
end
- (?=</(script|style|pre)>)
+ (?=.*</(script|style|pre)>)
begin
diff --git a/extensions/markdown/syntaxes/markdown.tmLanguage.base b/extensions/markdown/syntaxes/markdown.tmLanguage.base
index 4783abf8b0f..6d0a8510217 100644
--- a/extensions/markdown/syntaxes/markdown.tmLanguage.base
+++ b/extensions/markdown/syntaxes/markdown.tmLanguage.base
@@ -179,11 +179,11 @@
while
- ^\s*(?!</(script|style|pre)>)
+ ^(?!.*</(script|style|pre)>)
end
- (?=</(script|style|pre)>)
+ (?=.*</(script|style|pre)>)
begin
diff --git a/extensions/markdown/test/colorize-fixtures/test-33886.md b/extensions/markdown/test/colorize-fixtures/test-33886.md
new file mode 100644
index 00000000000..472c4a76498
--- /dev/null
+++ b/extensions/markdown/test/colorize-fixtures/test-33886.md
@@ -0,0 +1,13 @@
+# h
+
+
+# a
+
+
+# h
+
+
+# a
+a
+
+# h
\ No newline at end of file
diff --git a/extensions/markdown/test/colorize-results/test-33886_md.json b/extensions/markdown/test/colorize-results/test-33886_md.json
new file mode 100644
index 00000000000..ed8d6a43aaa
--- /dev/null
+++ b/extensions/markdown/test/colorize-results/test-33886_md.json
@@ -0,0 +1,332 @@
+[
+ {
+ "c": "#",
+ "t": "text.html.markdown markup.heading.markdown punctuation.definition.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": " ",
+ "t": "text.html.markdown markup.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": "h",
+ "t": "text.html.markdown markup.heading.markdown entity.name.section.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": "<",
+ "t": "text.html.markdown meta.tag.block.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "pre",
+ "t": "text.html.markdown meta.tag.block.any.html entity.name.tag.block.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.tag.block.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "<",
+ "t": "text.html.markdown meta.tag.inline.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "code",
+ "t": "text.html.markdown meta.tag.inline.any.html entity.name.tag.inline.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.tag.inline.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "# a",
+ "t": "text.html.markdown",
+ "r": {
+ "dark_plus": "default: #D4D4D4",
+ "light_plus": "default: #000000",
+ "dark_vs": "default: #D4D4D4",
+ "light_vs": "default: #000000",
+ "hc_black": "default: #FFFFFF"
+ }
+ },
+ {
+ "c": "",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.inline.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "code",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.inline.any.html entity.name.tag.inline.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.inline.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "pre",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html entity.name.tag.block.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "#",
+ "t": "text.html.markdown markup.heading.markdown punctuation.definition.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": " ",
+ "t": "text.html.markdown markup.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": "h",
+ "t": "text.html.markdown markup.heading.markdown entity.name.section.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": "<",
+ "t": "text.html.markdown meta.tag.block.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "pre",
+ "t": "text.html.markdown meta.tag.block.any.html entity.name.tag.block.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.tag.block.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "# a",
+ "t": "text.html.markdown",
+ "r": {
+ "dark_plus": "default: #D4D4D4",
+ "light_plus": "default: #000000",
+ "dark_vs": "default: #D4D4D4",
+ "light_vs": "default: #000000",
+ "hc_black": "default: #FFFFFF"
+ }
+ },
+ {
+ "c": "a",
+ "t": "text.html.markdown meta.paragraph.markdown",
+ "r": {
+ "dark_plus": "default: #D4D4D4",
+ "light_plus": "default: #000000",
+ "dark_vs": "default: #D4D4D4",
+ "light_vs": "default: #000000",
+ "hc_black": "default: #FFFFFF"
+ }
+ },
+ {
+ "c": "",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html punctuation.definition.tag.begin.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "pre",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html entity.name.tag.block.any.html",
+ "r": {
+ "dark_plus": "entity.name.tag: #569CD6",
+ "light_plus": "entity.name.tag: #800000",
+ "dark_vs": "entity.name.tag: #569CD6",
+ "light_vs": "entity.name.tag: #800000",
+ "hc_black": "entity.name.tag: #569CD6"
+ }
+ },
+ {
+ "c": ">",
+ "t": "text.html.markdown meta.paragraph.markdown meta.tag.block.any.html punctuation.definition.tag.end.html",
+ "r": {
+ "dark_plus": "punctuation.definition.tag: #808080",
+ "light_plus": "punctuation.definition.tag: #800000",
+ "dark_vs": "punctuation.definition.tag: #808080",
+ "light_vs": "punctuation.definition.tag: #800000",
+ "hc_black": "punctuation.definition.tag: #808080"
+ }
+ },
+ {
+ "c": "#",
+ "t": "text.html.markdown markup.heading.markdown punctuation.definition.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": " ",
+ "t": "text.html.markdown markup.heading.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ },
+ {
+ "c": "h",
+ "t": "text.html.markdown markup.heading.markdown entity.name.section.markdown",
+ "r": {
+ "dark_plus": "markup.heading: #569CD6",
+ "light_plus": "markup.heading: #800000",
+ "dark_vs": "markup.heading: #569CD6",
+ "light_vs": "markup.heading: #800000",
+ "hc_black": "markup.heading: #6796E6"
+ }
+ }
+]
\ No newline at end of file