messages.vim 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. " Vim syntax file
  2. " Language: /var/log/messages file
  3. " Maintainer: Yakov Lerner <iler.ml@gmail.com>
  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. if exists("b:current_syntax")
  9. finish
  10. endif
  11. let s:cpo_save = &cpo
  12. set cpo&vim
  13. syn match messagesBegin display '^' nextgroup=messagesDate,messagesDateRFC3339
  14. syn match messagesDate contained display '[[:lower:][:upper:]][[:lower:][:upper:]][[:lower:][:upper:]] [ 0-9]\d *'
  15. \ nextgroup=messagesHour
  16. syn match messagesHour contained display '\d\d:\d\d:\d\d\s*'
  17. \ nextgroup=messagesHost
  18. syn match messagesDateRFC3339 contained display '\d\{4}-\d\d-\d\d'
  19. \ nextgroup=messagesRFC3339T
  20. syn match messagesRFC3339T contained display '\cT'
  21. \ nextgroup=messagesHourRFC3339
  22. syn match messagesHourRFC3339 contained display '\c\d\d:\d\d:\d\d\(\.\d\+\)\=\([+-]\d\d:\d\d\|Z\)\s*'
  23. \ nextgroup=messagesHost
  24. syn match messagesHost contained display '\S*\s*'
  25. \ nextgroup=messagesLabel
  26. syn match messagesLabel contained display '\s*[^:]*:\s*'
  27. \ nextgroup=messagesText contains=messagesKernel,messagesPID
  28. syn match messagesPID contained display '\[\zs\d\+\ze\]'
  29. syn match messagesKernel contained display 'kernel:'
  30. syn match messagesIP '\d\+\.\d\+\.\d\+\.\d\+'
  31. syn match messagesURL '\w\+://\S\+'
  32. syn match messagesText contained display '.*'
  33. \ contains=messagesNumber,messagesIP,messagesURL,messagesError
  34. syn match messagesNumber contained '0x[0-9a-fA-F]*\|\[<[0-9a-f]\+>\]\|\<\d[0-9a-fA-F]*'
  35. syn match messagesError contained '\c.*\<\(FATAL\|ERROR\|ERRORS\|FAILED\|FAILURE\).*'
  36. hi def link messagesDate Constant
  37. hi def link messagesHour Type
  38. hi def link messagesDateRFC3339 Constant
  39. hi def link messagesHourRFC3339 Type
  40. hi def link messagesRFC3339T Normal
  41. hi def link messagesHost Identifier
  42. hi def link messagesLabel Operator
  43. hi def link messagesPID Constant
  44. hi def link messagesKernel Special
  45. hi def link messagesError ErrorMsg
  46. hi def link messagesIP Constant
  47. hi def link messagesURL Underlined
  48. hi def link messagesText Normal
  49. hi def link messagesNumber Number
  50. let b:current_syntax = "messages"
  51. let &cpo = s:cpo_save
  52. unlet s:cpo_save