vim: update syntax for strings
authorJean Privat <jean@pryen.org>
Mon, 10 Mar 2014 13:42:46 +0000 (09:42 -0400)
committerJean Privat <jean@pryen.org>
Mon, 10 Mar 2014 14:32:19 +0000 (10:32 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

misc/vim/syntax/nit.vim

index 288d64c..b73b4ea 100644 (file)
@@ -31,7 +31,10 @@ endif
 " Expression Substitution and Backslash Notation
 syn match NITExprSubstError "{\|}" contained
 syn match NITExprSubst "\\." contained
 " Expression Substitution and Backslash Notation
 syn match NITExprSubstError "{\|}" contained
 syn match NITExprSubst "\\." contained
-syn match NITExprSubst "{[^}]*}" contained
+syn match NITExprSubst "{\([^}]\|\n\)*}" contained
+
+syn match NITExprSubstLong "\\." contained
+syn match NITExprSubstLong "{*\zs{{{\([^}]\|\n\)*}}}\ze}*" contained
 
 " Numbers and ASCII Codes
 syn match NITNumber "\<\(\d\+\.\d\+\|\d\+\)\>"
 
 " Numbers and ASCII Codes
 syn match NITNumber "\<\(\d\+\.\d\+\|\d\+\)\>"
@@ -42,6 +45,7 @@ syn match NITAttribute                "\<_\h\w*"
 
 " Literal strings
 syn region NITString matchgroup=NITStringDelimit start="\"" end="\"" skip="\\\\\|\\\"" contains=NITExprSubst,NITExprSubstError
 
 " Literal strings
 syn region NITString matchgroup=NITStringDelimit start="\"" end="\"" skip="\\\\\|\\\"" contains=NITExprSubst,NITExprSubstError
+syn region NITString matchgroup=NITStringDelimit start="\"\"\"" end="\"*\zs\"\"\"" skip="\\\\\|\\\"" contains=NITExprSubstLong
 syn region NITString matchgroup=NITStringDelimit start="'"  end="'"  skip="\\\\\|\\'"
 
 " Labels
 syn region NITString matchgroup=NITStringDelimit start="'"  end="'"  skip="\\\\\|\\'"
 
 " Labels
@@ -111,6 +115,7 @@ hi def link NITKeyword                      Keyword
 hi def link NITString                  String
 hi def link NITStringDelimit           Delimiter
 hi def link NITExprSubst               Special
 hi def link NITString                  String
 hi def link NITStringDelimit           Delimiter
 hi def link NITExprSubst               Special
+hi def link NITExprSubstLong           Special
 hi def link NITExprSubstError          Error
 
 hi def link NITComment                 Comment
 hi def link NITExprSubstError          Error
 
 hi def link NITComment                 Comment