2004-06-13 20:20:40 +00:00
|
|
|
" Vim syntax file
|
2006-04-17 22:14:47 +00:00
|
|
|
" Language: Debian changelog files
|
|
|
|
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
2008-06-24 21:16:56 +00:00
|
|
|
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
|
|
|
" Wichert Akkerman <wakkerma@debian.org>
|
2016-05-20 17:24:11 +02:00
|
|
|
" Last Change: 2016 Apr 24
|
2015-12-29 19:10:25 +01:00
|
|
|
" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim
|
2004-06-13 20:20:40 +00:00
|
|
|
|
|
|
|
" Standard syntax initialization
|
2016-08-30 23:26:57 +02:00
|
|
|
if exists("b:current_syntax")
|
2004-06-13 20:20:40 +00:00
|
|
|
finish
|
|
|
|
endif
|
|
|
|
|
|
|
|
" Case doesn't matter for us
|
|
|
|
syn case ignore
|
|
|
|
|
2015-06-09 19:44:55 +02:00
|
|
|
let urgency='urgency=\(low\|medium\|high\|critical\)\( [^[:space:],][^,]*\)\='
|
|
|
|
let binNMU='binary-only=yes'
|
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
" Define some common expressions we can use later on
|
2010-01-06 20:54:52 +01:00
|
|
|
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
|
2015-06-09 19:44:55 +02:00
|
|
|
exe 'syn match debchangelogFirstKV contained "; \('.urgency.'\|'.binNMU.'\)"'
|
|
|
|
exe 'syn match debchangelogOtherKV contained ", \('.urgency.'\|'.binNMU.'\)"'
|
2016-05-20 17:24:11 +02:00
|
|
|
syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|precise|trusty|vivid|wily|xenial|yakkety)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
|
2004-06-13 20:20:40 +00:00
|
|
|
syn match debchangelogVersion contained "(.\{-})"
|
2008-06-24 21:16:56 +00:00
|
|
|
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
|
|
|
|
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
|
2004-06-13 20:20:40 +00:00
|
|
|
syn match debchangelogEmail contained "[_=[:alnum:].+-]\+@[[:alnum:]./\-]\+"
|
|
|
|
syn match debchangelogEmail contained "<.\{-}>"
|
|
|
|
|
|
|
|
" Define the entries that make up the changelog
|
2015-06-09 19:44:55 +02:00
|
|
|
syn region debchangelogHeader start="^[^ ]" end="$" contains=debchangelogName,debchangelogFirstKV,debchangelogOtherKV,debchangelogTarget,debchangelogVersion,debchangelogBinNMU oneline
|
2004-06-13 20:20:40 +00:00
|
|
|
syn region debchangelogFooter start="^ [^ ]" end="$" contains=debchangelogEmail oneline
|
2008-06-24 21:16:56 +00:00
|
|
|
syn region debchangelogEntry start="^ " end="$" contains=debchangelogCloses,debchangelogLP oneline
|
2004-06-13 20:20:40 +00:00
|
|
|
|
|
|
|
" Associate our matches and regions with pretty colours
|
2016-08-30 23:26:57 +02:00
|
|
|
command -nargs=+ HiLink hi def link <args>
|
|
|
|
|
|
|
|
HiLink debchangelogHeader Error
|
|
|
|
HiLink debchangelogFooter Identifier
|
|
|
|
HiLink debchangelogEntry Normal
|
|
|
|
HiLink debchangelogCloses Statement
|
|
|
|
HiLink debchangelogLP Statement
|
|
|
|
HiLink debchangelogFirstKV Identifier
|
|
|
|
HiLink debchangelogOtherKV Identifier
|
|
|
|
HiLink debchangelogName Comment
|
|
|
|
HiLink debchangelogVersion Identifier
|
|
|
|
HiLink debchangelogTarget Identifier
|
|
|
|
HiLink debchangelogEmail Special
|
|
|
|
|
|
|
|
delcommand HiLink
|
2004-06-13 20:20:40 +00:00
|
|
|
|
|
|
|
let b:current_syntax = "debchangelog"
|
|
|
|
|
|
|
|
" vim: ts=8 sw=2
|