Requires N:M mapping

This mapping is unfinished: 539 of 3000 nodes are still unmarked.

Before

1" Vim syntax file
2" Language: Debian control files
3" Maintainer: Debian Vim Maintainers
4" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
5" Wichert Akkerman <wakkerma@debian.org>
6" Last Change: 2025 Jul 05
7" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debcontrol.vim
8
9" Standard syntax initialization
10if exists('b:current_syntax')
11 finish
12endif
…lines 13–29 unchanged (17 lines)
30
31" Define some common expressions we can use later on
32syn keyword debcontrolArchitecture contained all any
33exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureKernelAnyArch)
34exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureAnyKernelArch)
35exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureArchs)
36
37" Keep in sync with https://metadata.ftp-master.org/sections.822
38" curl -q https://metadata.ftp-master.debian.org/sections.822 2>/dev/null| grep-dctrl -n --not -FSection -sSection / -
39let s:sections = [
40 \ 'admin', 'cli-mono', 'comm', 'database', 'debian-installer', 'debug'
41 \, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded'
42 \, 'fonts', 'games', 'gnome', 'gnu-r', 'gnustep', 'golang', 'graphics'
…lines 43–69 unchanged (27 lines)
70" An email address
71syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
72syn match debcontrolEmail "<.\{-}>"
73
74" #-Comments
75syn match debcontrolComment "^#.*$" contains=@Spell
76
77syn case ignore
78
79" Handle all fields from deb-src-control(5)
80
81" Catch-all for the legal fields
82syn region debcontrolField matchgroup=debcontrolKey start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\|\%(XS-\)\=Testsuite\%(-Triggers\)\=\|Build-Profiles\|Tag\|Subarchitecture\|Kernel-Version\|Installer-Menu-Item\): " end="$" contains=debcontrolVariable,debcontrolEmail oneline
…lines 83–92 unchanged (10 lines)
93syn region debcontrolStrictField matchgroup=debcontrolKey start="^Homepage: *" end="$" contains=debcontrolHTTPUrl oneline keepend
94syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\): *" end="$" contains=debcontrolHTTPUrl oneline keepend
95syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Svn: *" end="$" contains=debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
96syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Cvs: *" end="$" contains=debcontrolVcsCvs oneline keepend
97syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Git: *" end="$" contains=debcontrolVcsGit oneline keepend
98syn region debcontrolStrictField matchgroup=debcontrolKey start="^Rules-Requires-Root: *" end="$" contains=debcontrolR3 oneline
99syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Build-\)\=Essential: *" end="$" contains=debcontrolYesNo oneline
100
101syn region debcontrolStrictField matchgroup=debcontrolDeprecatedKey start="^\%(XS-\)\=DM-Upload-Allowed: *" end="$" contains=debcontrolDmUpload oneline
102
103" Associate our matches and regions with pretty colours
104hi def link debcontrolKey Keyword
105hi def link debcontrolField Normal
…lines 106–109 unchanged (4 lines)
110hi def link debcontrolMultiArch Normal
111hi def link debcontrolName Normal
112hi def link debcontrolPriority Normal
113hi def link debcontrolSection Normal
114hi def link debcontrolPackageType Normal
115hi def link debcontrolVariable Identifier
116hi def link debcontrolEmail Identifier
117hi def link debcontrolVcsSvn Identifier
118hi def link debcontrolVcsCvs Identifier
119hi def link debcontrolVcsGit Identifier
120hi def link debcontrolHTTPUrl Identifier
121hi def link debcontrolDmUpload Identifier
122hi def link debcontrolYesNo Identifier
…lines 123–133 unchanged (11 lines)

After

1" Vim syntax file
2" Language: Debian control files
3" Maintainer: Debian Vim Maintainers
4" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
5" Wichert Akkerman <wakkerma@debian.org>
6" Last Change: 2026 Jan 20
7" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debcontrol.vim
8
9" Standard syntax initialization
10if exists('b:current_syntax')
11 finish
12endif
…lines 13–30 unchanged (18 lines)
31" Define some common expressions we can use later on
32syn keyword debcontrolArchitecture contained all any
33exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureKernelAnyArch)
34exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureAnyKernelArch)
35exe 'syn keyword debcontrolArchitecture contained '. join(g:debArchitectureArchs)
36
37" Keep in sync with https://metadata.ftp-master.debian.org/sections.822
38" curl -q https://metadata.ftp-master.debian.org/sections.822 2>/dev/null| grep-dctrl -n --not -FSection -sSection / -
39let s:sections = [
40 \ 'admin', 'cli-mono', 'comm', 'database', 'debian-installer', 'debug'
41 \, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded'
42 \, 'fonts', 'games', 'gnome', 'gnu-r', 'gnustep', 'golang', 'graphics'
43 \, 'hamradio', 'haskell', 'httpd', 'interpreters', 'introspection'
…lines 44–70 unchanged (27 lines)
71syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
72syn match debcontrolEmail "<.\{-}>"
73
74" #-Comments
75syn match debcontrolComment "^#.*$" contains=@Spell
76
77" Build profiles
78" Since there's no official spec for the field, use dpkg's parsing
79" (from BuildProfiles.pm) as the de facto spec
80syn match debcontrolBuildProfile "<\@<!<\s*!\=[-?/;:=@%*~A-Za-z0-9+.]\+\%(\s\+!\=[-?/;:=@%*~A-Za-z0-9+.]\+\)*\s*>" contained
81
82" Architecture specification for a package relationship
83let s:all_archs = join(g:debArchitectureKernelAnyArch, '\|')
84 \. '\|'
85 \. join(g:debArchitectureAnyKernelArch, '\|')
86 \. '\|'
87 \. join(g:debArchitectureArchs, '\|')
88exe 'syn match debcontrolArchSpec "\[\s*!\=\%('. s:all_archs .'\)\%(\s\+!\=\%('. s:all_archs. '\)\)*\s*\]" contained'
89unlet s:all_archs
90
91syn case ignore
92
93" Handle all fields from deb-src-control(5)
94
95" Catch-all for the legal fields
…lines 96–110 unchanged (15 lines)
111syn region debcontrolStrictField matchgroup=debcontrolKey start="^Homepage: *" end="$" contains=debcontrolHTTPUrl oneline keepend
112syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\): *" end="$" contains=debcontrolHTTPUrl oneline keepend
113syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Svn: *" end="$" contains=debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
114syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Cvs: *" end="$" contains=debcontrolVcsCvs oneline keepend
115syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-[-a-zA-Z0-9]\+-\)\=Vcs-Git: *" end="$" contains=debcontrolVcsGit oneline keepend
116syn region debcontrolStrictField matchgroup=debcontrolKey start="^Rules-Requires-Root: *" end="$" contains=debcontrolR3 oneline
117syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(\%(Build-\)\=Essential\|Protected\): *" end="$" contains=debcontrolYesNo oneline
118
119syn region debcontrolStrictField matchgroup=debcontrolDeprecatedKey start="^\%(XS-\)\=DM-Upload-Allowed: *" end="$" contains=debcontrolDmUpload oneline
120
121" Associate our matches and regions with pretty colours
122hi def link debcontrolKey Keyword
123hi def link debcontrolField Normal
…lines 124–127 unchanged (4 lines)
128hi def link debcontrolMultiArch Normal
129hi def link debcontrolName Normal
130hi def link debcontrolPriority Normal
131hi def link debcontrolSection Normal
132hi def link debcontrolPackageType Normal
133hi def link debcontrolVariable Identifier
134hi def link debcontrolArchSpec Identifier
135hi def link debcontrolBuildProfile Identifier
136hi def link debcontrolEmail Identifier
137hi def link debcontrolVcsSvn Identifier
138hi def link debcontrolVcsCvs Identifier
139hi def link debcontrolVcsGit Identifier
140hi def link debcontrolHTTPUrl Identifier
141hi def link debcontrolDmUpload Identifier
…lines 142–153 unchanged (12 lines)

Before

script_file
comment "\" Vim syntax file"
comment "\" Language: Debian control files"
comment "\" Maintainer: Debian Vim Maintainers"
comment "\" Former Maintainers: Gerfried Fuchs <alfie@ist.org>"
comment "\" Wichert Akkerman <wakkerma@debian.org>"
comment "\" Last Change: 2025 Jul 05"
comment "\" URL: https://salsa.debian.org/vim-team/vim-debian/blob/mai"...
comment "\" Standard syntax initialization"
if_statement
if "if"
call_expression
identifier "exists"
( "("
string_literal "'b:current_syntax'"
) ")"
body
unknown_builtin_statement
unknown_command_name "finish"
endif "endif"
let_statement
let "let"
scoped_identifier
scope "s:"
identifier "cpo_save"
= "="
option
& "&"
option_name "cpo"
set_statement
set "set"
set_item
default_option
option_name "cpo"
& "&"
vim "vim"
comment "\" Should match case except for the keys of each field"
syntax_statement
syntax "syn"
case "case"
match "match"
syntax_statement
syntax "syn"
iskeyword "iskeyword"
value "@,48-57,-"
comment "\" Everything that is not explicitly matched by the rules bel"...
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolElse"
pattern
pattern_multi
* "*"
comment "\" Common separators"
syntax_statement
syntax "syn"
match "match"
hl_group "debControlComma"
pattern
[ "["
\ "\\"
] "]"
pattern_multi
* "*"
syntax_statement
syntax "syn"
match "match"
hl_group "debControlSpace"
pattern
[ "["
\ "\\"
] "]"
runtime_statement
runtime "runtime"
bang
! "!"
filenames
filename "syntax/shared/debarchitectures.vim"
comment "\" Define some common expressions we can use later on"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolArchitecture"
syntax_argument
contained "contained"
keyword "all"
keyword "any"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureKernelAnyArch"
) ")"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureAnyKernelArch"
) ")"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureArchs"
) ")"
comment "\" Keep in sync with https://metadata.ftp-master.org/sections"...
comment "\" curl -q https://metadata.ftp-master.debian.org/sections.82"...
let_statement (+128 nodes collapsed)
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolMultiArch"
syntax_argument
contained "contained"
keyword "no"
keyword "foreign"
keyword "allowed"
keyword "same"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolName"
syntax_argument
contained "contained"
pattern
[ "["
] "]"
[ "["
] "]"
pattern_multi "\\+"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolPriority"
syntax_argument
contained "contained"
keyword "extra"
keyword "important"
keyword "optional"
keyword "required"
keyword "standard"
execute_statement
execute "exe"
binary_operation
call_expression
field_expression
string_literal "'syn match debcontrolSection contained \"\\%(\\%(contrib\\|non-f"...
. "."
identifier "join"
( "("
scoped_identifier
scope "s:"
identifier "sections"
, ","
string_literal "'\\|'"
) ")"
. "."
string_literal "'\\)\\>\"'"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolPackageType"
syntax_argument
contained "contained"
keyword "udeb"
keyword "deb"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolVariable"
syntax_argument
contained "contained"
pattern
\ "\\"
pattern_multi "\\{-}"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolDmUpload"
syntax_argument
contained "contained"
keyword "yes"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolYesNo"
syntax_argument
contained "contained"
keyword "yes"
keyword "no"
syntax_statement (+32 nodes collapsed)
unlet_statement
unlet "unlet"
scoped_identifier
scope "s:"
identifier "sections"
comment "\" A URL (using the domain name definitions from RFC 1034 and"...
comment "\" only enforce protocol and some sanity on the server/path p"...
syntax_statement (+41 nodes collapsed)
syntax_statement (+42 nodes collapsed)
syntax_statement (+48 nodes collapsed)
syntax_statement (+46 nodes collapsed)
comment "\" An email address"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolEmail"
pattern
[ "["
] "]"
\ "\\"
pattern_multi "\\+"
[ "["
] "]"
\ "\\"
\ "\\"
pattern_multi "\\+"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolEmail"
pattern
pattern_multi "\\{-}"
comment "\" #-Comments"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolComment"
pattern
pattern_multi
* "*"
syntax_argument
contains "contains"
= "="
hl_groups
hl_group "@Spell"
syntax_statement
syntax "syn"
case "case"
ignore "ignore"
comment "\" Handle all fields from deb-src-control(5)"
comment "\" Catch-all for the legal fields"
syntax_statement (+58 nodes collapsed)
syntax_statement (+87 nodes collapsed)
syntax_statement (+50 nodes collapsed)
comment "\" Fields for which we do strict syntax checking"
syntax_statement (+28 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+30 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+30 nodes collapsed)
syntax_statement (+28 nodes collapsed)
syntax_statement (+42 nodes collapsed)
syntax_statement (+37 nodes collapsed)
syntax_statement (+35 nodes collapsed)
syntax_statement (+35 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement
syntax "syn"
region "region"
hl_group "debcontrolStrictField"
syntax_argument
matchgroup "matchgroup"
= "="
hl_groups
hl_group "debcontrolKey"
syntax_argument
start "start"
= "="
pattern
\%( "\\%("
pattern "Build-"
\) "\\)"
pattern_multi "\\="
pattern_multi
* " *"
syntax_argument
end "end"
= "="
pattern "$"
syntax_argument
contains "contains"
= "="
hl_groups
hl_group "debcontrolYesNo"
syntax_argument
oneline "oneline"
syntax_statement (+30 nodes collapsed)
comment "\" Associate our matches and regions with pretty colours"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolKey"
hl_group "Keyword"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolField"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolStrictField"
hl_group "Error"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolDeprecatedKey"
hl_group "Error"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolMultiField"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolArchitecture"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolMultiArch"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolName"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolPriority"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolSection"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolPackageType"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVariable"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolEmail"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsSvn"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsCvs"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsGit"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolHTTPUrl"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolDmUpload"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolYesNo"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolR3"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolComment"
hl_group "Comment"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolElse"
hl_group "Special"
let_statement
let "let"
scoped_identifier
scope "b:"
identifier "current_syntax"
= "="
string_literal "'debcontrol'"
let_statement
let "let"
option
& "&"
option_name "cpo"
= "="
scoped_identifier
scope "s:"
identifier "cpo_save"
unlet_statement
unlet "unlet"
scoped_identifier
scope "s:"
identifier "cpo_save"
comment "\" vim: ts=8 sw=2"

After

script_file
comment "\" Vim syntax file"
comment "\" Language: Debian control files"
comment "\" Maintainer: Debian Vim Maintainers"
comment "\" Former Maintainers: Gerfried Fuchs <alfie@ist.org>"
comment "\" Wichert Akkerman <wakkerma@debian.org>"
comment "\" Last Change: 2026 Jan 20"
comment "\" URL: https://salsa.debian.org/vim-team/vim-debian/blob/mai"...
comment "\" Standard syntax initialization"
if_statement
if "if"
call_expression
identifier "exists"
( "("
string_literal "'b:current_syntax'"
) ")"
body
unknown_builtin_statement
unknown_command_name "finish"
endif "endif"
let_statement
let "let"
scoped_identifier
scope "s:"
identifier "cpo_save"
= "="
option
& "&"
option_name "cpo"
set_statement
set "set"
set_item
default_option
option_name "cpo"
& "&"
vim "vim"
comment "\" Should match case except for the keys of each field"
syntax_statement
syntax "syn"
case "case"
match "match"
syntax_statement
syntax "syn"
iskeyword "iskeyword"
value "@,48-57,-"
comment "\" Everything that is not explicitly matched by the rules bel"...
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolElse"
pattern
pattern_multi
* "*"
comment "\" Common separators"
syntax_statement
syntax "syn"
match "match"
hl_group "debControlComma"
pattern
[ "["
\ "\\"
] "]"
pattern_multi
* "*"
syntax_statement
syntax "syn"
match "match"
hl_group "debControlSpace"
pattern
[ "["
\ "\\"
] "]"
runtime_statement
runtime "runtime"
bang
! "!"
filenames
filename "syntax/shared/debarchitectures.vim"
comment "\" Define some common expressions we can use later on"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolArchitecture"
syntax_argument
contained "contained"
keyword "all"
keyword "any"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureKernelAnyArch"
) ")"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureAnyKernelArch"
) ")"
execute_statement
execute "exe"
call_expression
field_expression
string_literal "'syn keyword debcontrolArchitecture contained '"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureArchs"
) ")"
comment "\" Keep in sync with https://metadata.ftp-master.debian.org/s"...
comment "\" curl -q https://metadata.ftp-master.debian.org/sections.82"...
let_statement (+128 nodes collapsed)
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolMultiArch"
syntax_argument
contained "contained"
keyword "no"
keyword "foreign"
keyword "allowed"
keyword "same"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolName"
syntax_argument
contained "contained"
pattern
[ "["
] "]"
[ "["
] "]"
pattern_multi "\\+"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolPriority"
syntax_argument
contained "contained"
keyword "extra"
keyword "important"
keyword "optional"
keyword "required"
keyword "standard"
execute_statement
execute "exe"
binary_operation
call_expression
field_expression
string_literal "'syn match debcontrolSection contained \"\\%(\\%(contrib\\|non-f"...
. "."
identifier "join"
( "("
scoped_identifier
scope "s:"
identifier "sections"
, ","
string_literal "'\\|'"
) ")"
. "."
string_literal "'\\)\\>\"'"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolPackageType"
syntax_argument
contained "contained"
keyword "udeb"
keyword "deb"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolVariable"
syntax_argument
contained "contained"
pattern
\ "\\"
pattern_multi "\\{-}"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolDmUpload"
syntax_argument
contained "contained"
keyword "yes"
syntax_statement
syntax "syn"
keyword "keyword"
hl_group "debcontrolYesNo"
syntax_argument
contained "contained"
keyword "yes"
keyword "no"
syntax_statement (+32 nodes collapsed)
unlet_statement
unlet "unlet"
scoped_identifier
scope "s:"
identifier "sections"
comment "\" A URL (using the domain name definitions from RFC 1034 and"...
comment "\" only enforce protocol and some sanity on the server/path p"...
syntax_statement (+41 nodes collapsed)
syntax_statement (+42 nodes collapsed)
syntax_statement (+48 nodes collapsed)
syntax_statement (+46 nodes collapsed)
comment "\" An email address"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolEmail"
pattern
[ "["
] "]"
\ "\\"
pattern_multi "\\+"
[ "["
] "]"
\ "\\"
\ "\\"
pattern_multi "\\+"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolEmail"
pattern
pattern_multi "\\{-}"
comment "\" #-Comments"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolComment"
pattern
pattern_multi
* "*"
syntax_argument
contains "contains"
= "="
hl_groups
hl_group "@Spell"
comment "\" Build profiles"
comment "\" Since there's no official spec for the field, use dpkg's p"...
comment "\" (from BuildProfiles.pm) as the de facto spec"
syntax_statement
syntax "syn"
match "match"
hl_group "debcontrolBuildProfile"
pattern
\ "\\"
pattern_multi "<!"
\ "\\"
pattern_multi
* "*"
pattern_multi "\\="
[ "["
] "]"
pattern_multi "\\+"
\%( "\\%("
pattern
\ "\\"
pattern_multi "\\+"
pattern_multi "\\="
[ "["
] "]"
pattern_multi "\\+"
\) "\\)"
pattern_multi
* "*"
\ "\\"
pattern_multi
* "*"
syntax_argument
contained "contained"
comment "\" Architecture specification for a package relationship"
let_statement
let "let"
scoped_identifier
scope "s:"
identifier "all_archs"
= "="
binary_operation
call_expression
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureKernelAnyArch"
, ","
string_literal "'\\|'"
) ")"
. "."
binary_operation
call_expression
field_expression
string_literal "'\\|'"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureAnyKernelArch"
, ","
string_literal "'\\|'"
) ")"
. "."
call_expression
field_expression
string_literal "'\\|'"
. "."
identifier "join"
( "("
scoped_identifier
scope "g:"
identifier "debArchitectureArchs"
, ","
string_literal "'\\|'"
) ")"
execute_statement
execute "exe"
binary_operation
string_literal "'syn match debcontrolArchSpec \"\\[\\s*!\\=\\%('"
. "."
binary_operation
scoped_identifier
scope "s:"
identifier "all_archs"
. "."
binary_operation
string_literal "'\\)\\%(\\s\\+!\\=\\%('"
. "."
binary_operation
scoped_identifier
scope "s:"
identifier "all_archs"
. "."
string_literal "'\\)\\)*\\s*\\]\" contained'"
unlet_statement
unlet "unlet"
scoped_identifier
scope "s:"
identifier "all_archs"
syntax_statement
syntax "syn"
case "case"
ignore "ignore"
comment "\" Handle all fields from deb-src-control(5)"
comment "\" Catch-all for the legal fields"
syntax_statement (+30 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+51 nodes collapsed)
syntax_statement (+76 nodes collapsed)
syntax_statement (+57 nodes collapsed)
syntax_statement (+48 nodes collapsed)
syntax_statement (+48 nodes collapsed)
comment "\" Fields for which we do strict syntax checking"
syntax_statement (+28 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+30 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement (+30 nodes collapsed)
syntax_statement (+28 nodes collapsed)
syntax_statement (+42 nodes collapsed)
syntax_statement (+37 nodes collapsed)
syntax_statement (+35 nodes collapsed)
syntax_statement (+35 nodes collapsed)
syntax_statement (+26 nodes collapsed)
syntax_statement
syntax "syn"
region "region"
hl_group "debcontrolStrictField"
syntax_argument
matchgroup "matchgroup"
= "="
hl_groups
hl_group "debcontrolKey"
syntax_argument
start "start"
= "="
pattern
\%( "\\%("
pattern
\%( "\\%("
pattern "Build-"
\) "\\)"
pattern_multi "\\="
\| "\\|"
\) "\\)"
pattern_multi
* " *"
syntax_argument
end "end"
= "="
pattern "$"
syntax_argument
contains "contains"
= "="
hl_groups
hl_group "debcontrolYesNo"
syntax_argument
oneline "oneline"
syntax_statement (+30 nodes collapsed)
comment "\" Associate our matches and regions with pretty colours"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolKey"
hl_group "Keyword"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolField"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolStrictField"
hl_group "Error"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolDeprecatedKey"
hl_group "Error"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolMultiField"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolArchitecture"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolMultiArch"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolName"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolPriority"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolSection"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolPackageType"
hl_group "Normal"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVariable"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolArchSpec"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolBuildProfile"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolEmail"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsSvn"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsCvs"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolVcsGit"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolHTTPUrl"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolDmUpload"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolYesNo"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolR3"
hl_group "Identifier"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolComment"
hl_group "Comment"
highlight_statement
highlight "hi"
default "def"
link "link"
hl_group "debcontrolElse"
hl_group "Special"
let_statement
let "let"
scoped_identifier
scope "b:"
identifier "current_syntax"
= "="
string_literal "'debcontrol'"
let_statement
let "let"
option
& "&"
option_name "cpo"
= "="
scoped_identifier
scope "s:"
identifier "cpo_save"
unlet_statement
unlet "unlet"
scoped_identifier
scope "s:"
identifier "cpo_save"
comment "\" vim: ts=8 sw=2"