summaryrefslogtreecommitdiff
path: root/rc/base
diff options
context:
space:
mode:
authorlePerdu <zdpeltzer@gmail.com>2018-11-08 12:44:03 -0500
committerlePerdu <zdpeltzer@gmail.com>2018-11-18 10:34:06 -0500
commit9053a1cdc1db04bf3fe85646058b4f1a6bf43066 (patch)
treec585f81f2440e3145503166ec96ac87804201045 /rc/base
parent1bd4dba6eb148f3d8e13c6b97aed3c78c1be731f (diff)
Make list items match as regions
Diffstat (limited to 'rc/base')
-rw-r--r--rc/base/markdown.kak39
1 files changed, 23 insertions, 16 deletions
diff --git a/rc/base/markdown.kak b/rc/base/markdown.kak
index d7dc65e2..e8f30028 100644
--- a/rc/base/markdown.kak
+++ b/rc/base/markdown.kak
@@ -12,7 +12,8 @@ hook global BufCreate .*[.](markdown|md|mkd) %{
# ‾‾‾‾‾‾‾‾‾‾‾‾
add-highlighter shared/markdown regions
-add-highlighter shared/markdown/content default-region group
+add-highlighter shared/markdown/inline default-region regions
+add-highlighter shared/markdown/inline/text default-region group
evaluate-commands %sh{
languages="
@@ -33,25 +34,31 @@ add-highlighter shared/markdown/codeblock region -match-capture \
^(\h*)```\h* \
^(\h*)```\h*$ \
fill meta
-add-highlighter shared/markdown/codespan region -match-capture (`+) (`+) fill mono
+
+add-highlighter shared/markdown/listblock region -match-capture ^\h*[-*]\s ^\h*(?=[-*\n]) ref markdown/inline
+
+add-highlighter shared/markdown/inline/code region -match-capture (`+) (`+) fill mono
# Setext-style header
-add-highlighter shared/markdown/content/ regex (\A|\n\n)[^\n]+\n={2,}\h*\n\h*$ 0:title
-add-highlighter shared/markdown/content/ regex (\A|\n\n)[^\n]+\n-{2,}\h*\n\h*$ 0:header
+add-highlighter shared/markdown/inline/text/ regex (\A|\n\n)[^\n]+\n={2,}\h*\n\h*$ 0:title
+add-highlighter shared/markdown/inline/text/ regex (\A|\n\n)[^\n]+\n-{2,}\h*\n\h*$ 0:header
# Atx-style header
-add-highlighter shared/markdown/content/ regex ^(#+)(\h+)([^\n]+) 1:header
-
-add-highlighter shared/markdown/content/ regex ^\h?((?:[\s\t]+)?[-\*])\h+[^\n]*(\n\h+[^-\*]\S+[^\n]*\n)*$ 0:list 1:bullet
-add-highlighter shared/markdown/content/ regex \B\+[^\n]+?\+\B 0:mono
-add-highlighter shared/markdown/content/ regex (?<!\*)(\*([^\s*]|([^\s*](\n?[^\n*])*[^\s*]))\*)(?!\*) 1:italic
-add-highlighter shared/markdown/content/ regex (?<!_)(_([^\s_]|([^\s_](\n?[^\n_])*[^\s_]))_)(?!_) 1:italic
-add-highlighter shared/markdown/content/ regex (?<!\*)(\*\*([^\s*]|([^\s*](\n?[^\n*])*[^\s*]))\*\*)(?!\*) 1:bold
-add-highlighter shared/markdown/content/ regex (?<!_)(__([^\s_]|([^\s_](\n?[^\n_])*[^\s_]))__)(?!_) 1:bold
-add-highlighter shared/markdown/content/ regex <(([a-z]+://.*?)|((mailto:)?[\w+-]+@[a-z]+[.][a-z]+))> 0:link
-add-highlighter shared/markdown/content/ regex ^\[[^\]\n]*\]:\h*([^\n]*) 1:link
-add-highlighter shared/markdown/content/ regex ^\h*(>\h*)+ 0:comment
-add-highlighter shared/markdown/content/ regex \H\K\h\h$ 0:PrimarySelection
+add-highlighter shared/markdown/inline/text/ regex ^(#+)(\h+)([^\n]+) 1:header
+
+# This is kind of redundant since there is already a listblock highlighter but
+# that can't just highlight the list marker
+add-highlighter shared/markdown/inline/text/ regex ^\h*[-*]\s 0:bullet
+
+add-highlighter shared/markdown/inline/text/ regex \B\+[^\n]+?\+\B 0:mono
+add-highlighter shared/markdown/inline/text/ regex (?<!\*)(\*([^\s*]|([^\s*](\n?[^\n*])*[^\s*]))\*)(?!\*) 1:italic
+add-highlighter shared/markdown/inline/text/ regex (?<!_)(_([^\s_]|([^\s_](\n?[^\n_])*[^\s_]))_)(?!_) 1:italic
+add-highlighter shared/markdown/inline/text/ regex (?<!\*)(\*\*([^\s*]|([^\s*](\n?[^\n*])*[^\s*]))\*\*)(?!\*) 1:bold
+add-highlighter shared/markdown/inline/text/ regex (?<!_)(__([^\s_]|([^\s_](\n?[^\n_])*[^\s_]))__)(?!_) 1:bold
+add-highlighter shared/markdown/inline/text/ regex <(([a-z]+://.*?)|((mailto:)?[\w+-]+@[a-z]+[.][a-z]+))> 0:link
+add-highlighter shared/markdown/inline/text/ regex ^\[[^\]\n]*\]:\h*([^\n]*) 1:link
+add-highlighter shared/markdown/inline/text/ regex ^\h*(>\h*)+ 0:comment
+add-highlighter shared/markdown/inline/text/ regex \H\K\h\h$ 0:PrimarySelection
# Commands
# ‾‾‾‾‾‾‾‾