xref: /vim-8.2.3635/runtime/syntax/messages.vim (revision 9faec4e3)
1" Vim syntax file
2" Language:         /var/log/messages file
3" Maintainer:       Yakov Lerner <[email protected]>
4" Latest Revision:  2008-06-29
5" Changes:          2008-06-29 support for RFC3339 tuimestamps James Vega
6" 		    2016 Jan 19: messagesDate changed by Bram
7" 		    2021 Jan 27: messagesHourRFC3339 changed from #946
8
9if exists("b:current_syntax")
10  finish
11endif
12
13let s:cpo_save = &cpo
14set cpo&vim
15
16syn match   messagesBegin       display '^' nextgroup=messagesDate,messagesDateRFC3339
17
18syn match   messagesDate        contained display '[[:lower:][:upper:]][[:lower:][:upper:]][[:lower:][:upper:]] [ 0-9]\d *'
19                                \ nextgroup=messagesHour
20
21syn match   messagesHour        contained display '\d\d:\d\d:\d\d\s*'
22                                \ nextgroup=messagesHost
23
24syn match   messagesDateRFC3339 contained display '\d\{4}-\d\d-\d\d'
25                                \ nextgroup=messagesRFC3339T
26
27syn match   messagesRFC3339T    contained display '\cT'
28                                \ nextgroup=messagesHourRFC3339
29
30syn match   messagesHourRFC3339 contained display '\c\d\d:\d\d:\d\d\(\.\d\+\)\=\([+-]\d\d:\d\d\|Z\)\s*'
31                                \ nextgroup=messagesHost
32
33syn match   messagesHost        contained display '\S*\s*'
34                                \ nextgroup=messagesLabel
35
36syn match   messagesLabel       contained display '\s*[^:]*:\s*'
37                                \ nextgroup=messagesText contains=messagesKernel,messagesPID
38
39syn match   messagesPID         contained display '\[\zs\d\+\ze\]'
40
41syn match   messagesKernel      contained display 'kernel:'
42
43
44syn match   messagesIP          '\d\+\.\d\+\.\d\+\.\d\+'
45
46syn match   messagesURL         '\w\+://\S\+'
47
48syn match   messagesText        contained display '.*'
49                                \ contains=messagesNumber,messagesIP,messagesURL,messagesError
50
51syn match   messagesNumber      contained '0x[0-9a-fA-F]*\|\[<[0-9a-f]\+>\]\|\<\d[0-9a-fA-F]*'
52
53syn match   messagesError       contained '\c.*\<\(FATAL\|ERROR\|ERRORS\|FAILED\|FAILURE\).*'
54
55
56hi def link messagesDate        Constant
57hi def link messagesHour        Type
58hi def link messagesDateRFC3339 Constant
59hi def link messagesHourRFC3339 Type
60hi def link messagesRFC3339T    Normal
61hi def link messagesHost        Identifier
62hi def link messagesLabel       Operator
63hi def link messagesPID         Constant
64hi def link messagesKernel      Special
65hi def link messagesError       ErrorMsg
66hi def link messagesIP          Constant
67hi def link messagesURL         Underlined
68hi def link messagesText        Normal
69hi def link messagesNumber      Number
70
71let b:current_syntax = "messages"
72
73let &cpo = s:cpo_save
74unlet s:cpo_save
75