]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(log): highlight Java Errors
authorChristian Brabandt <cb@256bit.org>
Thu, 18 Sep 2025 19:37:10 +0000 (19:37 +0000)
committerChristian Brabandt <cb@256bit.org>
Thu, 18 Sep 2025 19:37:10 +0000 (19:37 +0000)
closes: #18315

Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/syntax/log.vim

index 336fc7dfdf5770961a13464a376ab937487e835b..d4a1a401870f309a41c04349d1cdae84dedc57aa 100644 (file)
@@ -2,7 +2,7 @@
 " Language:         Generic log file
 " Maintainer:       Mao-Yining <https://github.com/mao-yining>
 " Former Maintainer:   MTDL9 <https://github.com/MTDL9>
-" Latest Revision:  2025-09-13
+" Latest Revision:  2025-09-16
 
 if exists('b:current_syntax')
   finish
@@ -31,9 +31,9 @@ syn match logFloatNumber  '\<\d.\d\+[eE]\?\>'
 syn keyword logBoolean    true false
 syn keyword logNull       null nil nullptr none
 
-syn region logString      start=/"/ end=/"/ end=/$/ skip=/\\./
+syn region logString      start=/"/ end=/"/ end=/$/ skip=/\\./ contains=logJavaError
 " Quoted strings, but no match on quotes like "don't", "plurals' elements"
-syn region logString      start=/'\(s \|t \| \w\)\@!/ end=/'/ end=/$/ end=/s / skip=/\\./
+syn region logString      start=/'\(s \|t \| \w\)\@!/ end=/'/ end=/$/ end=/s / skip=/\\./ contains=logJavaError
 
 
 " Dates and Times
@@ -68,6 +68,10 @@ syn match logMacAddress '\<\x\{2}\(:\x\{2}\)\{5}'
 syn match logFilePath   '\<\w:\\\f\+'
 syn match logFilePath   '[^a-zA-Z0-9"']\@<=/\f\+'
 
+" Java Errors
+"---------------------------------------------------------------------------
+syn match logJavaError   '\%(\%(Error\|Exception\):\s*\)\zs\w.\{-}\ze\(\\n\|$\)' contained
+
 
 " Syslog Columns
 "---------------------------------------------------------------------------
@@ -128,6 +132,8 @@ hi def link logIPV6 ErrorMsg
 hi def link logMacAddress Label
 hi def link logFilePath Conditional
 
+hi def link logJavaError ErrorMsg
+
 hi def link logSysColumns Conditional
 hi def link logSysProcess Include