dotfiles/vim/.vim/syntax/weechatlog.vim
2024-07-13 15:18:43 +02:00

42 lines
1.1 KiB
VimL

if !exists("main_syntax")
if exists("b:current_syntax")
finish
endif
let main_syntax = 'weechatlog'
endif
syntax clear
syn match WeeChatNick '\t.*\t'
syn match WeeChatJoin '\t-->\t'
syn match WeeChatPart '\t<--\t'
syn region WeeChatChannelMsg start=/\t--\t/ end=/\n/ contains=WeeChatChannel
syn match WeeChatDate '\d\{4}-\d\{2}-\d\{2}'
syn match WeeChatTimestamp '\d\{2}:\d\{2}:\d\{2}'
syn match WeeChatChannel '#\S\+'
syn match WeeChatDomain '(\S*@\S*)'
syn match WeeChatTimeout '(Ping timeout: \d\+ seconds)'
syn match WeeChatPart '(Remote host closed the connection)'
syn match WeeChatPart2 '(Quit: .*)'
syn match WeeChatLink /[a-z]\+:\/\/[a-zA-z0-9./?=%]\+/
hi link WeeChatDate Number
hi link WeeChatTimestamp Number
hi link WeeChatChannel PreProc
hi link WeeChatChannelMsg Label
hi link WeeChatDomain Identifier
hi link WeeChatJoin Statement
hi link WeeChatPart Error
hi link WeeChatPart2 Error
hi link WeeChatTimeout WeeChatPart
hi link WeeChatNick String
hi link WeeChatLink Function