diff --git a/syntax/gitlog.vim b/syntax/gitlog.vim new file mode 100644 index 0000000..e6938b6 --- /dev/null +++ b/syntax/gitlog.vim @@ -0,0 +1,26 @@ +if exists("b:current_syntax") + finish +endif + +syntax match gitlogGraph contained /^[*|\\\/_ ]*/ + \ nextgroup=gitlogHash +syntax match gitlogHash contained /\<\x\{7,64\}\>/ + \ nextgroup=gitlogDate skipwhite +syntax match gitlogDate contained /\<\d\{4}-\d\{2}-\d\{2}\>/ + \ nextgroup=gitlogAuthor skipwhite +syntax match gitlogAuthor contained /{[^}]\+}/ + \ nextgroup=gitlogRef skipwhite +syntax match gitlogRef contained /([^)]\+)/ +syntax match gitlogLine + \ /^[*|\\\/_ ]*\x\{7,64}\s\+\d\{4}-\d\{2}-\d\{2}\s\+{[^}]\+}.*/ + \ contains=gitlogGraph +syntax match gitlogGraphLine /^[*|\\\/_ ]\+$/ + \ contains=gitlogGraph + +highlight default link gitlogGraph Comment +highlight default link gitlogHash GitSha +highlight default link gitlogDate GitDate +highlight default link gitlogAuthor GitAuthor +highlight default link gitlogRef Constant + +let b:current_syntax = "gitlog"