Source: vim
Version: 2:8.0.0197-5
Severity: normal
Tags: patch

Hi,

A patch is attached that adds simple syntax highlighting for
DEP-5 debian/copyright files.


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb, Debian Project Leader
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 9c9c808..b1f916d 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -592,6 +592,13 @@ au BufNewFile,BufRead control
        \|   setf debcontrol
        \| endif
 
+" Debian Copyright
+au BufNewFile,BufRead */debian/copyright       setf debcopyright
+au BufNewFile,BufRead copyright
+       \  if getline(1) =~ '^Format:'
+       \|   setf debcopyright
+       \| endif
+
 " Debian Sources.list
 au BufNewFile,BufRead */etc/apt/sources.list           setf debsources
 au BufNewFile,BufRead */etc/apt/sources.list.d/*.list  setf debsources
diff --git a/runtime/syntax/debcopyright.vim b/runtime/syntax/debcopyright.vim
new file mode 100644
index 0000000..dd34be4
--- /dev/null
+++ b/runtime/syntax/debcopyright.vim
@@ -0,0 +1,32 @@
+" Vim syntax file
+" Language:    Debian copyright file
+" Maintainer:  Chris Lamb <la...@debian.org>
+" Last Change: 2017 Jul 28
+
+" Standard syntax initialization
+if exists("b:current_syntax")
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn case match
+
+syn match debcopyrightUrl       
"\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
+syn match debcopyrightKey       
"^\%(Format\|Upstream-Name\|Upstream-Contact\|Disclaimer\|Source\|Comment\|Files\|Copyright\|License\):
 *"
+syn match debcopyrightEmail     "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
+syn match debcopyrightEmail     "<.\{-}>"
+syn match debcopyrightComment   "^#.*$" contains=@Spell
+
+hi def link debcopyrightUrl     Identifier
+hi def link debcopyrightKey     Keyword
+hi def link debcopyrightEmail   Identifier
+hi def link debcopyrightComment Comment
+
+let b:current_syntax = "debcopyright"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
+" vim: ts=8 sw=2

Reply via email to