@@ -133,9 +133,9 @@ exec 'syntax match juliaType contained "\%(' . s:idregex . '\.\)*\zs' . s:idr
133133" It's used to recognize one of the contained regions looking for identifiers
134134" only once. Once recognized, those regions no longer need to use the
135135" expensive s:idregex.
136- exec ' syntax match juliaIdSymbol transparent "' . s: idregex . ' \%(\s*[<>]:\|\.\?(\|{\|\"\%(\"\"\)\?\ )\@=" contains=juliaFunctionCall,juliaParamType,juliaStringPrefixed,juliaTypeOperatorR1'
136+ exec ' syntax match juliaIdSymbol transparent "' . s: idregex . ' \%(\s*[<>]:\|\.\?(\|{\|\"\)\@=" contains=juliaFunctionCall,juliaParamType,juliaStringPrefixed,juliaTypeOperatorR1'
137137
138- syntax match juliaFunctionCall contained " [^{([:space:]\" ]\+ (\@ =" nextgroup =juliaParBlock
138+ syntax match juliaFunctionCall contained " [^{([:space:]<> \" ]\+ (\@ =" nextgroup =juliaParBlock
139139
140140" note: we would in principle add a "s:nodot" before function/macro/struct/... but it shouldn't come up in valid code
141141exec ' syntax match juliaFunctionDef contained transparent "\%(\<\%(function\|macro\)\)\@' .s: d (8 ).' <=\s\+\zs' . s: idregex . ' \%(\.' . s: idregex . ' \)*\ze\s*\%((\|\send\>\|$\)" contains=juliaFunctionName'
@@ -215,7 +215,7 @@ syntax match juliaConstIO display "\<\%(std\%(out\|in\|err\)\|devnull\)\>"
215215syntax match juliaConstC display " \<\% (C_NULL\)\> "
216216syntax match juliaConstGeneric display " \<\% (nothing\| Main\| undef\| missing\)\> "
217217
218- syntax match juliaParamType contained " [^{([:space:]\" ]\+\z e{" nextgroup =juliaCurBraBlock
218+ syntax match juliaParamType contained " [^{([:space:]<> \" ]\+\z e{" nextgroup =juliaCurBraBlock
219219
220220syntax match juliaPossibleMacro transparent " @" contains =juliaMacroCall,juliaMacroCallP,juliaPrintfMacro,juliaDocMacro
221221
@@ -286,7 +286,7 @@ exec 'syntax match juliaCTransOperator "[[:space:]}' . s:nonid_chars . s:uniop
286286" TODO: some of these might be specialized; the rest could be just left to the
287287" generic juliaStringPrefixed fallback
288288syntax region juliaString matchgroup =juliaStringDelim start =+ \z ("\( ""\)\?\) + skip =+ \% (\\\\\) *\\ "+ end =+ \z 1+ contains =@juliaStringVars,@juliaSpecialChars,@juliaSpellcheckStrings
289- syntax region juliaStringPrefixed contained matchgroup =juliaStringDelim start =+ [^{([:space:]"]\+\z ("\( ""\)\?\) + skip =+ \% (\\\\\) *\\ "+ end =+ \z 1+ contains =@juliaSpecialCharsRaw
289+ syntax region juliaStringPrefixed contained matchgroup =juliaStringDelim start =+ [^{([:space:]<> "]\+\z ("\( ""\)\?\) + skip =+ \% (\\\\\) *\\ "+ end =+ \z 1+ contains =@juliaSpecialCharsRaw
290290syntax region juliabString matchgroup =juliaStringDelim start =+ \< b\z ("\( ""\)\?\) + skip =+ \% (\\\\\) *\\ "+ end =+ \z 1+ contains =@juliaSpecialChars
291291syntax region juliasString matchgroup =juliaStringDelim start =+ \< s\z ("\( ""\)\?\) + skip =+ \% (\\\\\) *\\ "+ end =+ \z 1+ contains =@juliaSpecialChars
292292
@@ -352,7 +352,7 @@ exec 'syntax match juliaQuotedQMarkPar "' . s:quoting_colon . '(\s*?\s*)" con
352352exec ' syntax region juliaQuotedParBlockS matchgroup=juliaQParDelim contained start="' . s: quoting_colonS . ' (" end=")" contains=@juliaExpressions'
353353
354354
355- syntax match juliaTypeOperatorR1 contained transparent " [^{([:space:]\" ]\+\% (\s *[<>]:\)\@ =" contains = juliaType,@juliaExpressions
355+ syntax match juliaTypeOperatorR1 contained " [^{([:space:]<> \" ]\+\% (\s *[<>]:\)\@ ="
356356
357357" force precedence over Symbols
358358syntax match juliaTypeOperator contained " [<>:]:"
@@ -429,6 +429,7 @@ hi def link juliaBaseTypeOther Type
429429
430430hi def link juliaType Type
431431hi def link juliaParamType Type
432+ hi def link juliaTypeOperatorR1 Type
432433
433434" NOTE: deprecated constants are not highlighted as such. For once,
434435" one can still legitimately use them by importing Base.MathConstants.
0 commit comments