changeset 33232:d72f150af9f1

runtime(scala): Fix Scala highlighting string literal as type param (#13070) Commit: https://github.com/vim/vim/commit/066103307534f81de08a092aac3a15e864a5a25f Author: Emil Ejbyfeldt <eejbyfeldt@liveintent.com> Date: Sun Sep 10 18:16:51 2023 +0200 runtime(scala): Fix Scala highlighting string literal as type param (https://github.com/vim/vim/issues/13070) Since https://docs.scala-lang.org/sips/42.type.html which is implemented in Scala 2.13 and in Scala 3 it possible to use string literals as singleton types. So code like ``` someFunc["abc"] ``` is valid. Currently this code is not hightlighted correctly and worse if there is an unclosed `(` in the string it breaks the formating in the rest of the file. I also submitted this patch to the mentioned project for this runtime file: https://github.com/derekwyatt/vim-scala/pull/173 But there are no commits there over the last 2 years and no response in the week since I created it. Also the last change to the Scala syntax file: https://github.com/vim/vim/pull/9594 is yet to be backported to that repo. Therefore I am opening this PR as well to get some feedback on how to proceed to get this fixed. Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sun, 10 Sep 2023 18:30:03 +0200
parents 64eca35d9488
children 108d890d887f
files runtime/syntax/scala.vim
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/syntax/scala.vim
+++ b/runtime/syntax/scala.vim
@@ -180,7 +180,7 @@ hi def link scalaNumber Number
 
 syn region scalaRoundBrackets start="(" end=")" skipwhite contained contains=scalaTypeDeclaration,scalaSquareBrackets,scalaRoundBrackets
 
-syn region scalaSquareBrackets matchgroup=scalaSquareBracketsBrackets start="\[" end="\]" skipwhite nextgroup=scalaTypeExtension contains=scalaTypeDeclaration,scalaSquareBrackets,scalaTypeOperator,scalaTypeAnnotationParameter
+syn region scalaSquareBrackets matchgroup=scalaSquareBracketsBrackets start="\[" end="\]" skipwhite nextgroup=scalaTypeExtension contains=scalaTypeDeclaration,scalaSquareBrackets,scalaTypeOperator,scalaTypeAnnotationParameter,scalaString
 syn match scalaTypeOperator /[-+=:<>]\+/ contained
 syn match scalaTypeAnnotationParameter /@\<[`_A-Za-z0-9$]\+\>/ contained
 hi def link scalaSquareBracketsBrackets Type