xref: /vim-8.2.3635/runtime/syntax/changelog.vim (revision 89bcfda6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	generic ChangeLog file
3071d4279SBram Moolenaar" Written By:	Gediminas Paulauskas <[email protected]>
4071d4279SBram Moolenaar" Maintainer:	Corinna Vinschen <[email protected]>
5071d4279SBram Moolenaar" Last Change:	June 1, 2003
6071d4279SBram Moolenaar
7*89bcfda6SBram Moolenaar" quit when a syntax file was already loaded
8*89bcfda6SBram Moolenaarif exists("b:current_syntax")
9071d4279SBram Moolenaar  finish
10071d4279SBram Moolenaarendif
11071d4279SBram Moolenaar
12071d4279SBram Moolenaarsyn case ignore
13071d4279SBram Moolenaar
14071d4279SBram Moolenaarif exists('b:changelog_spacing_errors')
15071d4279SBram Moolenaar  let s:spacing_errors = b:changelog_spacing_errors
16071d4279SBram Moolenaarelseif exists('g:changelog_spacing_errors')
17071d4279SBram Moolenaar  let s:spacing_errors = g:changelog_spacing_errors
18071d4279SBram Moolenaarelse
19071d4279SBram Moolenaar  let s:spacing_errors = 1
20071d4279SBram Moolenaarendif
21071d4279SBram Moolenaar
22071d4279SBram Moolenaarif s:spacing_errors
23071d4279SBram Moolenaar  syn match	changelogError "^ \+"
24071d4279SBram Moolenaarendif
25071d4279SBram Moolenaar
26071d4279SBram Moolenaarsyn match	changelogText	"^\s.*$" contains=changelogMail,changelogNumber,changelogMonth,changelogDay,changelogError
27071d4279SBram Moolenaarsyn match	changelogHeader	"^\S.*$" contains=changelogNumber,changelogMonth,changelogDay,changelogMail
28a5fb28b6SBram Moolenaarsyn region	changelogFiles	start="^\s\+[+*]\s" end=":" end="^$" contains=changelogBullet,changelogColon,changelogFuncs,changelogError keepend
29a5fb28b6SBram Moolenaarsyn region	changelogFiles	start="^\s\+[([]" end=":" end="^$" contains=changelogBullet,changelogColon,changelogFuncs,changelogError keepend
30a5fb28b6SBram Moolenaarsyn match	changelogFuncs  contained "(.\{-})" extend
31a5fb28b6SBram Moolenaarsyn match	changelogFuncs  contained "\[.\{-}]" extend
32071d4279SBram Moolenaarsyn match	changelogColon	contained ":"
33*89bcfda6SBram Moolenaar
34071d4279SBram Moolenaarsyn match	changelogBullet	contained "^\s\+[+*]\s" contains=changelogError
35071d4279SBram Moolenaarsyn match	changelogMail	contained "<[A-Za-z0-9\._:+-]\+@[A-Za-z0-9\._-]\+>"
36071d4279SBram Moolenaarsyn keyword	changelogMonth	contained jan feb mar apr may jun jul aug sep oct nov dec
37071d4279SBram Moolenaarsyn keyword	changelogDay	contained mon tue wed thu fri sat sun
38071d4279SBram Moolenaarsyn match	changelogNumber	contained "[.-]*[0-9]\+"
39071d4279SBram Moolenaar
40071d4279SBram Moolenaar" Define the default highlighting.
41*89bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
42071d4279SBram Moolenaarcommand -nargs=+ HiLink hi def link <args>
43071d4279SBram Moolenaar
44071d4279SBram MoolenaarHiLink changelogText		Normal
45071d4279SBram MoolenaarHiLink changelogBullet	Type
46071d4279SBram MoolenaarHiLink changelogColon		Type
47071d4279SBram MoolenaarHiLink changelogFiles		Comment
48071d4279SBram MoolenaarHiLink changelogFuncs	Comment
49071d4279SBram MoolenaarHiLink changelogHeader	Statement
50071d4279SBram MoolenaarHiLink changelogMail		Special
51071d4279SBram MoolenaarHiLink changelogNumber	Number
52071d4279SBram MoolenaarHiLink changelogMonth		Number
53071d4279SBram MoolenaarHiLink changelogDay		Number
54071d4279SBram MoolenaarHiLink changelogError		Folded
55071d4279SBram Moolenaar
56071d4279SBram Moolenaardelcommand HiLink
57071d4279SBram Moolenaar
58071d4279SBram Moolenaarlet b:current_syntax = "changelog"
59071d4279SBram Moolenaar
60071d4279SBram Moolenaar" vim: ts=8
61