summaryrefslogtreecommitdiff
path: root/rc
diff options
context:
space:
mode:
authorJohannes Altmanninger <aclopte@gmail.com>2020-09-05 07:36:31 +0200
committerJohannes Altmanninger <aclopte@gmail.com>2020-09-19 08:06:46 +0200
commit50775b26e40d119f08f800268c7ebc2b0e6eff1e (patch)
treee152679d8f4041ff2ea6aa26fed41d8207806b71 /rc
parentdbd7e4da79ff59a63be03c580d3f396657199596 (diff)
*sh.kak: do not highlight expansions if their $ is escaped
Diffstat (limited to 'rc')
-rw-r--r--rc/filetype/dockerfile.kak4
-rw-r--r--rc/filetype/fish.kak4
-rw-r--r--rc/filetype/makefile.kak2
-rw-r--r--rc/filetype/sh.kak6
4 files changed, 8 insertions, 8 deletions
diff --git a/rc/filetype/dockerfile.kak b/rc/filetype/dockerfile.kak
index f308ec92..c745205f 100644
--- a/rc/filetype/dockerfile.kak
+++ b/rc/filetype/dockerfile.kak
@@ -49,7 +49,7 @@ evaluate-commands %sh{
"
}
-add-highlighter shared/dockerfile/code/ regex '\$\{[\w_]+\}' 0:value
-add-highlighter shared/dockerfile/code/ regex '\$[\w_]+' 0:value
+add-highlighter shared/dockerfile/code/ regex (?<!\\)(?:\\\\)*\K\$\{[\w_]+\} 0:value
+add-highlighter shared/dockerfile/code/ regex (?<!\\)(?:\\\\)*\K\$[\w_]+ 0:value
}
diff --git a/rc/filetype/fish.kak b/rc/filetype/fish.kak
index d883c042..80c677b9 100644
--- a/rc/filetype/fish.kak
+++ b/rc/filetype/fish.kak
@@ -38,9 +38,9 @@ add-highlighter shared/fish/single_string region (?<!\\)(?:\\\\)*\K' (?<!\\)(\\\
add-highlighter shared/fish/comment region (?<!\\)(?:\\\\)*(?:^|\h)\K# '$' fill comment
add-highlighter shared/fish/double_string/ fill string
-add-highlighter shared/fish/double_string/ regex (\$\w+)|(\{\$\w+\}) 0:variable
+add-highlighter shared/fish/double_string/ regex ((?<!\\)(?:\\\\)*\K\$\w+)|(\{\$\w+\}) 0:variable
-add-highlighter shared/fish/code/ regex (\$\w+)|(\{\$\w+\}) 0:variable
+add-highlighter shared/fish/code/ regex (?<!\\)(?:\\\\)*\K(\$\w+)|(\{\$\w+\}) 0:variable
# Command names are collected using `builtin --names`.
add-highlighter shared/fish/code/ regex \b(and|argparse|begin|bg|bind|block|break|breakpoint|builtin|case|cd|command|commandline|complete|contains|continue|count|disown|echo|else|emit|end|eval|exec|exit|false|fg|for|function|functions|history|if|jobs|math|not|or|printf|pwd|random|read|realpath|return|set|set_color|source|status|string|switch|test|time|true|ulimit|wait|while)\b 0:keyword
diff --git a/rc/filetype/makefile.kak b/rc/filetype/makefile.kak
index 690461e9..ab752a3e 100644
--- a/rc/filetype/makefile.kak
+++ b/rc/filetype/makefile.kak
@@ -31,7 +31,7 @@ add-highlighter shared/makefile regions
add-highlighter shared/makefile/content default-region group
add-highlighter shared/makefile/comment region (?<!\\)(?:\\\\)*(?:^|\h)\K# '$' fill comment
-add-highlighter shared/makefile/evaluate-commands region -recurse '\(' '\$\(' '\)' fill value
+add-highlighter shared/makefile/evaluate-commands region -recurse \( (?<!\$)(?:\$\$)*\K\$\( \) fill value
add-highlighter shared/makefile/content/ regex ^\S.*?(::|:|!)\s 0:variable
add-highlighter shared/makefile/content/ regex [+?:]= 0:operator
diff --git a/rc/filetype/sh.kak b/rc/filetype/sh.kak
index 38e26bb2..d2ee6efb 100644
--- a/rc/filetype/sh.kak
+++ b/rc/filetype/sh.kak
@@ -23,7 +23,7 @@ add-highlighter shared/sh regions
add-highlighter shared/sh/code default-region group
add-highlighter shared/sh/double_string region %{(?<!\\)(?:\\\\)*\K"} %{(?<!\\)(?:\\\\)*"} group
add-highlighter shared/sh/single_string region %{(?<!\\)(?:\\\\)*\K'} %{'} fill string
-add-highlighter shared/sh/expansion region -recurse \$\{ \$\{ \}|\n fill value
+add-highlighter shared/sh/expansion region -recurse (?<!\\)(?:\\\\)*\K\$\{ (?<!\\)(?:\\\\)*\K\$\{ \}|\n fill value
add-highlighter shared/sh/comment region (?<!\\)(?:\\\\)*(?:^|\h)\K# '$' fill comment
add-highlighter shared/sh/heredoc region -match-capture '<<-?\h*''?(\w+)''?' '^\t*(\w+)$' fill string
@@ -60,8 +60,8 @@ add-highlighter shared/sh/code/variable regex ((?<![-:])\b\w+)= 1:variable
add-highlighter shared/sh/code/alias regex \balias(\h+[-+]\w)*\h+([\w-.]+)= 2:variable
add-highlighter shared/sh/code/function regex ^\h*(\S+)\h*\(\) 1:function
-add-highlighter shared/sh/code/unscoped_expansion regex \$(\w+|#|@|\?|\$|!|-|\*) 0:value
-add-highlighter shared/sh/double_string/expansion regex \$(\w+|\{.+?\}) 0:value
+add-highlighter shared/sh/code/unscoped_expansion regex (?<!\\)(?:\\\\)*\K\$(\w+|#|@|\?|\$|!|-|\*) 0:value
+add-highlighter shared/sh/double_string/expansion regex (?<!\\)(?:\\\\)*\K\$(\w+|\{.+?\}) 0:value
# Commands
# ‾‾‾‾‾‾‾‾