Skip to content

Commit 3158003

Browse files
committed
Add separate syntax group for Regex delimiters
1 parent b54a4d6 commit 3158003

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

Diff for: clj/test/vim_clojure_static/syntax_test.clj

+4-3
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
(defpredicates kw :clojureKeyword)
1212
(defpredicates character :clojureCharacter)
1313
(defpredicates regexp :clojureRegexp)
14+
(defpredicates regexp-delimiter :clojureRegexpDelimiter)
1415
(defpredicates regexp-escape :clojureRegexpEscape)
1516
(defpredicates regexp-char-class :clojureRegexpCharClass)
1617
(defpredicates regexp-predefined-char-class :clojureRegexpPredefinedCharClass)
@@ -406,8 +407,8 @@
406407
]]
407408
["#%s"
408409
[;; Backslashes with character classes
409-
"\"[\\\\]\"" (partial = [:clojureRegexp :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexp])
410-
"\"\\[]\"" (partial = [:clojureRegexp :clojureRegexpEscape :clojureRegexpEscape :clojureRegexp :clojureRegexp])
411-
"\"\\\\[]\"" (partial = [:clojureRegexp :clojureRegexpEscape :clojureRegexpEscape :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexp])]])
410+
"\"[\\\\]\"" (partial = [:clojureRegexpDelimiter :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpDelimiter])
411+
"\"\\[]\"" (partial = [:clojureRegexpDelimiter :clojureRegexpEscape :clojureRegexpEscape :clojureRegexp :clojureRegexpDelimiter])
412+
"\"\\\\[]\"" (partial = [:clojureRegexpDelimiter :clojureRegexpEscape :clojureRegexpEscape :clojureRegexpCharClass :clojureRegexpCharClass :clojureRegexpDelimiter])]])
412413

413414
(comment (test #'test-java-regexp-literals))

Diff for: syntax/clojure.vim

+2-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ syntax match clojureRegexpMod "\v\(@<=\?%(\<?[=!]|\>)" contained display
127127
syntax match clojureRegexpMod "\v\(@<=\?\<[[:alpha:]]+\>" contained display
128128

129129
syntax region clojureRegexpGroup start="(" skip=/\\\\\|\\)/ end=")" matchgroup=clojureRegexpGroup contained contains=clojureRegexpMod,clojureRegexpQuantifier,clojureRegexpBoundary,clojureRegexpEscape,@clojureRegexpCharClasses
130-
syntax region clojureRegexp start=/\#"/ skip=/\\\\\|\\"/ end=/"/ contains=@clojureRegexpCharClasses,clojureRegexpEscape,clojureRegexpQuote,clojureRegexpBoundary,clojureRegexpQuantifier,clojureRegexpOr,clojureRegexpBackRef,clojureRegexpGroup keepend
130+
syntax region clojureRegexp matchgroup=clojureRegexpDelimiter start=/\#"/ skip=/\\\\\|\\"/ end=/"/ contains=@clojureRegexpCharClasses,clojureRegexpEscape,clojureRegexpQuote,clojureRegexpBoundary,clojureRegexpQuantifier,clojureRegexpOr,clojureRegexpBackRef,clojureRegexpGroup keepend
131131

132132
syntax keyword clojureCommentTodo contained FIXME XXX TODO BUG NOTE HACK FIXME: XXX: TODO: BUG: NOTE: HACK:
133133

@@ -171,6 +171,7 @@ highlight default link clojureStringDelimiter String
171171
highlight default link clojureStringEscape Character
172172

173173
highlight default link clojureRegexp Constant
174+
highlight default link clojureRegexpDelimiter Constant
174175
highlight default link clojureRegexpEscape Character
175176
highlight default link clojureRegexpCharClass SpecialChar
176177
highlight default link clojureRegexpPosixCharClass clojureRegexpCharClass

0 commit comments

Comments
 (0)