summaryrefslogtreecommitdiffstats
path: root/runtime/syntax
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2008-06-24 22:58:06 +0000
committerBram Moolenaar <Bram@vim.org>2008-06-24 22:58:06 +0000
commit8c8de839325eda0bed68917d18179d2003b344d1 (patch)
treec65b80f0a627f2e77385a07a62ee4206465cbc22 /runtime/syntax
parent864207de089119377a1e1e5d411307d8eb57399e (diff)
updated for version 7.2av7.2a
Diffstat (limited to 'runtime/syntax')
-rw-r--r--runtime/syntax/cdrdaoconf.vim139
-rw-r--r--runtime/syntax/cmake.vim2
-rw-r--r--runtime/syntax/coco.vim33
-rw-r--r--runtime/syntax/css.vim4
-rw-r--r--runtime/syntax/debcontrol.vim44
-rw-r--r--runtime/syntax/denyhosts.vim289
-rw-r--r--runtime/syntax/git.vim67
-rw-r--r--runtime/syntax/gitcommit.vim65
-rw-r--r--runtime/syntax/hostconf.vim147
-rw-r--r--runtime/syntax/lisp.vim959
-rw-r--r--runtime/syntax/lsl.vim272
-rw-r--r--runtime/syntax/modconf.vim4
-rw-r--r--runtime/syntax/mrxvtrc.vim29
-rw-r--r--runtime/syntax/mysql.vim446
-rw-r--r--runtime/syntax/phtml.vim244
-rw-r--r--runtime/syntax/quake.vim4
-rw-r--r--runtime/syntax/rexx.vim238
-rw-r--r--runtime/syntax/snobol4.vim94
-rw-r--r--runtime/syntax/sql.vim2
-rw-r--r--runtime/syntax/yacc.vim54
-rw-r--r--runtime/syntax/zsh.vim4
21 files changed, 2080 insertions, 1060 deletions
diff --git a/runtime/syntax/cdrdaoconf.vim b/runtime/syntax/cdrdaoconf.vim
new file mode 100644
index 0000000000..5058c23a24
--- /dev/null
+++ b/runtime/syntax/cdrdaoconf.vim
@@ -0,0 +1,139 @@
+" Vim syntax file
+" Language: cdrdao(1) configuration file
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2007-09-02
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword cdrdaoconfTodo
+ \ TODO FIXME XXX NOTE
+
+syn match cdrdaoconfBegin
+ \ display
+ \ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment
+ \ '^'
+
+syn cluster cdrdaoconfKeyword
+ \ contains=cdrdaoconfIntegerKeyword,
+ \ cdrdaoconfDriverKeyword,
+ \ cdrdaoconfDeviceKeyword,
+ \ cdrdaoconfPathKeyword
+
+syn keyword cdrdaoconfIntegerKeyword
+ \ contained
+ \ nextgroup=cdrdaoconfIntegerDelimiter
+ \ write_speed
+ \ write_buffers
+ \ user_capacity
+ \ full_burn
+ \ read_speed
+ \ cddb_timeout
+
+syn keyword cdrdaoconfIntegerKeyword
+ \ contained
+ \ nextgroup=cdrdaoconfParanoiaModeDelimiter
+ \ read_paranoia_mode
+
+syn keyword cdrdaoconfDriverKeyword
+ \ contained
+ \ nextgroup=cdrdaoconfDriverDelimiter
+ \ write_driver
+ \ read_driver
+
+syn keyword cdrdaoconfDeviceKeyword
+ \ contained
+ \ nextgroup=cdrdaoconfDeviceDelimiter
+ \ write_device
+ \ read_device
+
+syn keyword cdrdaoconfPathKeyword
+ \ contained
+ \ nextgroup=cdrdaoconfPathDelimiter
+ \ cddb_directory
+ \ tmp_file_dir
+
+syn match cdrdaoconfIntegerDelimiter
+ \ contained
+ \ nextgroup=cdrdaoconfInteger
+ \ skipwhite
+ \ ':'
+
+syn match cdrdaoconfParanoiaModeDelimiter
+ \ contained
+ \ nextgroup=cdrdaoconfParanoiaMode
+ \ skipwhite
+ \ ':'
+
+syn match cdrdaoconfDriverDelimiter
+ \ contained
+ \ nextgroup=cdrdaoconfDriver
+ \ skipwhite
+ \ ':'
+
+syn match cdrdaoconfDeviceDelimiter
+ \ contained
+ \ nextgroup=cdrdaoconfDevice
+ \ skipwhite
+ \ ':'
+
+syn match cdrdaoconfPathDelimiter
+ \ contained
+ \ nextgroup=cdrdaoconfPath
+ \ skipwhite
+ \ ':'
+
+syn match cdrdaoconfInteger
+ \ contained
+ \ '\<\d\+\>'
+
+syn match cdrdaoParanoiaMode
+ \ contained
+ \ '[0123]'
+
+syn match cdrdaoconfDriver
+ \ contained
+ \ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>'
+
+syn region cdrdaoconfDevice
+ \ contained
+ \ matchgroup=cdrdaoconfDevice
+ \ start=+"+
+ \ end=+"+
+
+syn region cdrdaoconfPath
+ \ contained
+ \ matchgroup=cdrdaoconfPath
+ \ start=+"+
+ \ end=+"+
+
+syn match cdrdaoconfComment
+ \ contains=cdrdaoconfTodo,@Spell
+ \ '^.*#.*$'
+
+hi def link cdrdaoconfTodo Todo
+hi def link cdrdaoconfComment Comment
+hi def link cdrdaoconfKeyword Keyword
+hi def link cdrdaoconfIntegerKeyword cdrdaoconfKeyword
+hi def link cdrdaoconfDriverKeyword cdrdaoconfKeyword
+hi def link cdrdaoconfDeviceKeyword cdrdaoconfKeyword
+hi def link cdrdaoconfPathKeyword cdrdaoconfKeyword
+hi def link cdrdaoconfDelimiter Delimiter
+hi def link cdrdaoconfIntegerDelimiter cdrdaoconfDelimiter
+hi def link cdrdaoconfDriverDelimiter cdrdaoconfDelimiter
+hi def link cdrdaoconfDeviceDelimiter cdrdaoconfDelimiter
+hi def link cdrdaoconfPathDelimiter cdrdaoconfDelimiter
+hi def link cdrdaoconfInteger Number
+hi def link cdrdaoconfParanoiaMode Number
+hi def link cdrdaoconfDriver Identifier
+hi def link cdrdaoconfDevice cdrdaoconfPath
+hi def link cdrdaoconfPath String
+
+let b:current_syntax = "cdrdaoconf"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/syntax/cmake.vim b/runtime/syntax/cmake.vim
index 302417e5ff..4dd5c3a115 100644
--- a/runtime/syntax/cmake.vim
+++ b/runtime/syntax/cmake.vim
@@ -49,7 +49,7 @@ syn region cmakeArguments start=/\s*(/ end=/)/
syn keyword cmakeDeprecated ABSTRACT_FILES BUILD_NAME SOURCE_FILES SOURCE_FILES_REMOVE VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WRAP_EXCLUDE_FILES
\ nextgroup=cmakeArgument
syn keyword cmakeStatement
- \ ADD_CUSTOM_COMMAND ADD_CUSTOM_TARGET ADD_DEFINITIONS ADD_DEPENDENCIES ADD_EXECUTABLE ADD_LIBRARY ADD_SUBDIRECTORY ADD_TEST AUX_SOURCE_DIRECTORY BUILD_COMMAND BUILD_NAME CMAKE_MINIMUM_REQUIRED CONFIGURE_FILE CREATE_TEST_SOURCELIST ELSE ENABLE_LANGUAGE ENABLE_TESTING ENDFOREACH ENDIF ENDWHILE EXEC_PROGRAM EXECUTE_PROCESS EXPORT_LIBRARY_DEPENDENCIES FILE FIND_FILE FIND_LIBRARY FIND_PACKAGE FIND_PATH FIND_PROGRAM FLTK_WRAP_UI FOREACH GET_CMAKE_PROPERTY GET_DIRECTORY_PROPERTY GET_FILENAME_COMPONENT GET_SOURCE_FILE_PROPERTY GET_TARGET_PROPERTY GET_TEST_PROPERTY IF INCLUDE INCLUDE_DIRECTORIES INCLUDE_EXTERNAL_MSPROJECT INCLUDE_REGULAR_EXPRESSION INSTALL INSTALL_FILES INSTALL_PROGRAMS INSTALL_TARGETS LINK_DIRECTORIES LINK_LIBRARIES LIST LOAD_CACHE LOAD_COMMAND MACRO MAKE_DIRECTORY MARK_AS_ADVANCED MATH MESSAGE OPTION OUTPUT_REQUIRED_FILES PROJECT QT_WRAP_CPP QT_WRAP_UI REMOVE REMOVE_DEFINITIONS SEPARATE_ARGUMENTS SET SET_DIRECTORY_PROPERTIES SET_SOURCE_FILES_PROPERTIES SET_TARGET_PROPERTIES SET_TESTS_PROPERTIES SITE_NAME SOURCE_GROUP STRING SUBDIR_DEPENDS SUBDIRS TARGET_LINK_LIBRARIES TRY_COMPILE TRY_RUN USE_MANGLED_MESA UTILITY_SOURCE VARIABLE_REQUIRES VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WHILE WRITE_FILE ENDMACRO
+ \ ADD_CUSTOM_COMMAND ADD_CUSTOM_TARGET ADD_DEFINITIONS ADD_DEPENDENCIES ADD_EXECUTABLE ADD_LIBRARY ADD_SUBDIRECTORY ADD_TEST AUX_SOURCE_DIRECTORY BUILD_COMMAND BUILD_NAME CMAKE_MINIMUM_REQUIRED CONFIGURE_FILE CREATE_TEST_SOURCELIST ELSE ELSEIF ENABLE_LANGUAGE ENABLE_TESTING ENDFOREACH ENDIF ENDWHILE EXEC_PROGRAM EXECUTE_PROCESS EXPORT_LIBRARY_DEPENDENCIES FILE FIND_FILE FIND_LIBRARY FIND_PACKAGE FIND_PATH FIND_PROGRAM FLTK_WRAP_UI FOREACH GET_CMAKE_PROPERTY GET_DIRECTORY_PROPERTY GET_FILENAME_COMPONENT GET_SOURCE_FILE_PROPERTY GET_TARGET_PROPERTY GET_TEST_PROPERTY IF INCLUDE INCLUDE_DIRECTORIES INCLUDE_EXTERNAL_MSPROJECT INCLUDE_REGULAR_EXPRESSION INSTALL INSTALL_FILES INSTALL_PROGRAMS INSTALL_TARGETS LINK_DIRECTORIES LINK_LIBRARIES LIST LOAD_CACHE LOAD_COMMAND MACRO MAKE_DIRECTORY MARK_AS_ADVANCED MATH MESSAGE OPTION OUTPUT_REQUIRED_FILES PROJECT QT_WRAP_CPP QT_WRAP_UI REMOVE REMOVE_DEFINITIONS SEPARATE_ARGUMENTS SET SET_DIRECTORY_PROPERTIES SET_SOURCE_FILES_PROPERTIES SET_TARGET_PROPERTIES SET_TESTS_PROPERTIES SITE_NAME SOURCE_GROUP STRING SUBDIR_DEPENDS SUBDIRS TARGET_LINK_LIBRARIES TRY_COMPILE TRY_RUN USE_MANGLED_MESA UTILITY_SOURCE VARIABLE_REQUIRES VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WHILE WRITE_FILE ENDMACRO
\ nextgroup=cmakeArgumnts
"syn match cmakeMacro /^\s*[A-Z_]\+/ nextgroup=cmakeArgumnts
diff --git a/runtime/syntax/coco.vim b/runtime/syntax/coco.vim
new file mode 100644
index 0000000000..4094a55303
--- /dev/null
+++ b/runtime/syntax/coco.vim
@@ -0,0 +1,33 @@
+" Vim syntax file
+" Language: Coco/R
+" Maintainer: Ashish Shukla <wahjava@gmail.com>
+" Last Change: 2007 Aug 10
+" Remark: Coco/R syntax partially implemented.
+" License: Vim license
+
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+
+syn keyword cocoKeywords ANY CHARACTERS COMMENTS COMPILER CONTEXT END FROM IF IGNORE IGNORECASE NESTED PRAGMAS PRODUCTIONS SYNC TO TOKENS WEAK
+syn match cocoUnilineComment #//.*$#
+syn match cocoIdentifier /[[:alpha:]][[:alnum:]]*/
+syn region cocoMultilineComment start=#/[*]# end=#[*]/#
+syn region cocoString start=/"/ skip=/\\"\|\\\\/ end=/"/
+syn region cocoCharacter start=/'/ skip=/\\'\|\\\\/ end=/'/
+syn match cocoOperator /+\||\|\.\.\|-\|(\|)\|{\|}\|\[\|\]\|=\|<\|>/
+syn region cocoProductionCode start=/([.]/ end=/[.])/
+syn match cocoPragma /[$][[:alnum:]]*/
+
+hi def link cocoKeywords Keyword
+hi def link cocoUnilineComment Comment
+hi def link cocoMultilineComment Comment
+hi def link cocoIdentifier Identifier
+hi def link cocoString String
+hi def link cocoCharacter Character
+hi def link cocoOperator Operator
+hi def link cocoProductionCode Statement
+hi def link cocoPragma Special
+
diff --git a/runtime/syntax/css.vim b/runtime/syntax/css.vim
index 7f9ac258df..a73836a922 100644
--- a/runtime/syntax/css.vim
+++ b/runtime/syntax/css.vim
@@ -2,7 +2,7 @@
" Language: Cascading Style Sheets
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/css.vim
-" Last Change: 2006 Jun 19
+" Last Change: 2007 Nov 06
" CSS2 by Nikolai Weibull
" Full CSS2, HTML4 support by Yeti
@@ -194,7 +194,7 @@ syn match cssSpecialCharQQ +\\"+ contained
syn match cssSpecialCharQ +\\'+ contained
syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
-syn match cssClassName "\.[A-Za-z][A-Za-z0-9-]\+"
+syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
if main_syntax == "css"
syn sync minlines=10
diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim
index f15e83cb61..3b01fb50ae 100644
--- a/runtime/syntax/debcontrol.vim
+++ b/runtime/syntax/debcontrol.vim
@@ -3,8 +3,8 @@
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
-" Last Change: $LastChangedDate: 2006-04-16 21:50:31 -0400 (Sun, 16 Apr 2006) $
-" URL: http://svn.debian.org/wsvn/pkg-vim/trunk/runtime/syntax/debcontrol.vim?op=file&rev=0&sc=0
+" Last Change: 2008-02-23
+" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debcontrol.vim;hb=debian
" Comments are very welcome - but please make sure that you are commenting on
" the latest version of this file.
@@ -17,6 +17,9 @@ elseif exists("b:current_syntax")
finish
endif
+" Should match case except for the keys of each field
+syn case match
+
" Everything that is not explicitly matched by the rules below
syn match debcontrolElse "^.*$"
@@ -25,28 +28,47 @@ syn match debControlComma ", *"
syn match debControlSpace " "
" Define some common expressions we can use later on
-syn match debcontrolArchitecture contained "\(all\|any\|alpha\|amd64\|arm\(eb\)\=\|hppa\|i386\|ia64\|m32r\|m68k\|mipsel\|mips\|powerpc\|ppc64\|s390\|sheb\|sh\|sparc64\|sparc\|hurd-i386\|kfreebsd-\(i386\|gnu\)\|knetbsd-i386\|netbsd-\(alpha\|i386\)\)"
-syn match debcontrolName contained "[a-z][a-z0-9+-]*"
+syn match debcontrolArchitecture contained "\(all\|any\|alpha\|amd64\|arm\(e[bl]\)\=\|hppa\|i386\|ia64\|m32r\|m68k\|mipsel\|mips\|powerpc\|ppc64\|s390x\=\|sh[34]\(eb\)\=\|sh\|sparc64\|sparc\|hurd-i386\|kfreebsd-\(i386\|gnu\)\|knetbsd-i386\|netbsd-\(alpha\|i386\)\)"
+syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+"
syn match debcontrolPriority contained "\(extra\|important\|optional\|required\|standard\)"
-syn match debcontrolSection contained "\(\(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\)/\)\=\(admin\|base\|comm\|devel\|doc\|editors\|electronics\|embedded\|games\|gnome\|graphics\|hamradio\|interpreters\|kde\|libs\|libdevel\|mail\|math\|misc\|net\|news\|oldlibs\|otherosfs\|perl\|python\|science\|shells\|sound\|text\|tex\|utils\|web\|x11\|debian-installer\)"
+syn match debcontrolSection contained "\(\(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\(admin\|base\|comm\|devel\|doc\|editors\|electronics\|embedded\|games\|gnome\|graphics\|hamradio\|interpreters\|kde\|libs\|libdevel\|mail\|math\|misc\|net\|news\|oldlibs\|otherosfs\|perl\|python\|science\|shells\|sound\|text\|tex\|utils\|web\|x11\|debian-installer\)"
+syn match debcontrolPackageType contained "u\?deb"
syn match debcontrolVariable contained "\${.\{-}}"
+" A URL (using the domain name definitions from RFC 1034 and 1738), right now
+" only enforce protocol and some sanity on the server/path part;
+syn match debcontrolHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
+syn match debcontrolVcsSvn contained "\vsvn%(\+ssh)?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
+syn match debcontrolVcsCvs contained "\v%(\-d *)?:pserver:[^@]+\@[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?:/[^[:space:]]*%( [^[:space:]]+)?$"
+syn match debcontrolVcsGit contained "\vgit://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
+
" An email address
syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
syn match debcontrolEmail "<.\{-}>"
+" #-Comments
+syn match debcontrolComment "^#.*$"
+
+syn case ignore
+
" List of all legal keys
-syn match debcontrolKey contained "^\(Source\|Package\|Section\|Priority\|Maintainer\|Uploaders\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Architecture\|Description\|Bugs\|Origin\|Enhances\): *"
+syn match debcontrolKey contained "^\(Source\|Package\|Section\|Priority\|Maintainer\|Uploaders\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Architecture\|Description\|Bugs\|Origin\|Enhances\|Homepage\|\(XS-\)\=Vcs-\(Browser\|Arch\|Bzr\|Cvs\|Darcs\|Git\|Hg\|Mtn\|Svn\)\|XC-Package-Type\): *"
" Fields for which we do strict syntax checking
syn region debcontrolStrictField start="^Architecture" end="$" contains=debcontrolKey,debcontrolArchitecture,debcontrolSpace oneline
syn region debcontrolStrictField start="^\(Package\|Source\)" end="$" contains=debcontrolKey,debcontrolName oneline
syn region debcontrolStrictField start="^Priority" end="$" contains=debcontrolKey,debcontrolPriority oneline
syn region debcontrolStrictField start="^Section" end="$" contains=debcontrolKey,debcontrolSection oneline
+syn region debcontrolStrictField start="^XC-Package-Type" end="$" contains=debcontrolKey,debcontrolPackageType oneline
+syn region debcontrolStrictField start="^Homepage" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\)" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Svn" end="$" contains=debcontrolKey,debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Cvs" end="$" contains=debcontrolKey,debcontrolVcsCvs oneline keepend
+syn region debcontrolStrictField start="^\%(XS-\)\?Vcs-Git" end="$" contains=debcontrolKey,debcontrolVcsGit oneline keepend
" Catch-all for the other legal fields
-syn region debcontrolField start="^\(Maintainer\|Build-Depends\|Build-Conflicts\|Build-Depends-Indep\|Build-Conflicts-Indep\|Standards-Version\|Pre-Depends\|Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Essential\|Bugs\|Origin\|Enhances\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
-syn region debcontrolMultiField start="^\(Uploaders\|Description\):" skip="^ " end="^$"me=s-1 end="^[^ ]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable
+syn region debcontrolField start="^\(Maintainer\|Standards-Version\|Essential\|Bugs\|Origin\|X\(S\|B\)-Python-Version\|XSBC-Original-Maintainer\|\(XS-\)\?Vcs-Mtn\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
+syn region debcontrolMultiField start="^\(Build-\(Conflicts\|Depends\)\(-Indep\)\=\|\(Pre-\)\=Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Enhances\|Uploaders\|Description\):" skip="^ " end="^$"me=s-1 end="^[^ ]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable
" Associate our matches and regions with pretty colours
if version >= 508 || !exists("did_debcontrol_syn_inits")
@@ -65,8 +87,14 @@ if version >= 508 || !exists("did_debcontrol_syn_inits")
HiLink debcontrolName Normal
HiLink debcontrolPriority Normal
HiLink debcontrolSection Normal
+ HiLink debcontrolPackageType Normal
HiLink debcontrolVariable Identifier
HiLink debcontrolEmail Identifier
+ HiLink debcontrolVcsSvn Identifier
+ HiLink debcontrolVcsCvs Identifier
+ HiLink debcontrolVcsGit Identifier
+ HiLink debcontrolHTTPUrl Identifier
+ HiLink debcontrolComment Comment
HiLink debcontrolElse Special
delcommand HiLink
diff --git a/runtime/syntax/denyhosts.vim b/runtime/syntax/denyhosts.vim
new file mode 100644
index 0000000000..0ec09ba13e
--- /dev/null
+++ b/runtime/syntax/denyhosts.vim
@@ -0,0 +1,289 @@
+" Vim syntax file
+" Language: denyhosts configuration file
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2007-06-25
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword denyhostsTodo
+ \ contained
+ \ TODO
+ \ FIXME
+ \ XXX
+ \ NOTE
+
+syn case ignore
+
+syn match denyhostsComment
+ \ contained
+ \ display
+ \ '#.*'
+ \ contains=denyhostsTodo,
+ \ @Spell
+
+syn match denyhostsBegin
+ \ display
+ \ '^'
+ \ nextgroup=@denyhostsSetting,
+ \ denyhostsComment
+ \ skipwhite
+
+syn cluster denyhostsSetting
+ \ contains=denyhostsStringSetting,
+ \ denyhostsBooleanSetting,
+ \ denyhostsPathSetting,
+ \ denyhostsNumericSetting,
+ \ denyhostsTimespecSetting,
+ \ denyhostsFormatSetting,
+ \ denyhostsRegexSetting
+
+syn keyword denyhostsStringSetting
+ \ contained
+ \ ADMIN_EMAIL
+ \ SMTP_HOST
+ \ SMTP_USERNAME
+ \ SMTP_PASSWORD
+ \ SMTP_FROM
+ \ SMTP_SUBJECT
+ \ BLOCK_SERVICE
+ \ nextgroup=denyhostsStringDelimiter
+ \ skipwhite
+
+syn keyword denyhostsBooleanSetting
+ \ contained
+ \ SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS
+ \ HOSTNAME_LOOKUP
+ \ SYSLOG_REPORT
+ \ RESET_ON_SUCCESS
+ \ SYNC_UPLOAD
+ \ SYNC_DOWNLOAD
+ \ ALLOWED_HOSTS_HOSTNAME_LOOKUP
+ \ nextgroup=denyhostsBooleanDelimiter
+ \ skipwhite
+
+syn keyword denyhostsPathSetting
+ \ contained
+ \ DAEMON_LOG
+ \ PLUGIN_DENY
+ \ PLUGIN_PURGE
+ \ SECURE_LOG
+ \ LOCK_FILE
+ \ HOSTS_DENY
+ \ WORK_DIR
+ \ nextgroup=denyhostsPathDelimiter
+ \ skipwhite
+
+syn keyword denyhostsNumericSetting
+ \ contained
+ \ SYNC_DOWNLOAD_THRESHOLD
+ \ SMTP_PORT
+ \ PURGE_THRESHOLD
+ \ DENY_THRESHOLD_INVALID
+ \ DENY_THRESHOLD_VALID
+ \ DENY_THRESHOLD_ROOT
+ \ DENY_THRESHOLD_RESTRICTED
+ \ nextgroup=denyhostsNumericDelimiter
+ \ skipwhite
+
+syn keyword denyhostsTimespecSetting
+ \ contained
+ \ DAEMON_SLEEP
+ \ DAEMON_PURGE
+ \ AGE_RESET_INVALID
+ \ AGE_RESET_VALID
+ \ AGE_RESET_ROOT
+ \ AGE_RESET_RESTRICTED
+ \ SYNC_INTERVAL
+ \ SYNC_DOWNLOAD_RESILIENCY
+ \ PURGE_DENY
+ \ nextgroup=denyhostsTimespecDelimiter
+ \ skipwhite
+
+syn keyword denyhostsFormatSetting
+ \ contained
+ \ DAEMON_LOG_TIME_FORMAT
+ \ DAEMON_LOG_MESSAGE_FORMAT
+ \ SMTP_DATE_FORMAT
+ \ nextgroup=denyhostsFormatDelimiter
+ \ skipwhite
+
+syn keyword denyhostsRegexSetting
+ \ contained
+ \ SSHD_FORMAT_REGEX
+ \ FAILED_ENTRY_REGEX
+ \ FAILED_ENTRY_REGEX2
+ \ FAILED_ENTRY_REGEX3
+ \ FAILED_ENTRY_REGEX4
+ \ FAILED_ENTRY_REGEX5
+ \ FAILED_ENTRY_REGEX6
+ \ FAILED_ENTRY_REGEX7
+ \ USERDEF_FAILED_ENTRY_REGEX
+ \ SUCCESSFUL_ENTRY_REGEX
+ \ nextgroup=denyhostsRegexDelimiter
+ \ skipwhite
+
+syn keyword denyhostURLSetting
+ \ contained
+ \ SYNC_SERVER
+ \ nextgroup=denyhostsURLDelimiter
+ \ skipwhite
+
+syn match denyhostsStringDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsString
+ \ skipwhite
+
+syn match denyhostsBooleanDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=@denyhostsBoolean
+ \ skipwhite
+
+syn match denyhostsPathDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsPath
+ \ skipwhite
+
+syn match denyhostsNumericDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsNumber
+ \ skipwhite
+
+syn match denyhostsTimespecDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsTimespec
+ \ skipwhite
+
+syn match denyhostsFormatDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsFormat
+ \ skipwhite
+
+syn match denyhostsRegexDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsRegex
+ \ skipwhite
+
+syn match denyhostsURLDelimiter
+ \ contained
+ \ display
+ \ '[:=]'
+ \ nextgroup=denyhostsURL
+ \ skipwhite
+
+syn match denyhostsString
+ \ contained
+ \ display
+ \ '.\+'
+
+syn cluster denyhostsBoolean
+ \ contains=denyhostsBooleanTrue,
+ \ denyhostsBooleanFalse
+
+syn match denyhostsBooleanFalse
+ \ contained
+ \ display
+ \ '.\+'
+
+syn match denyhostsBooleanTrue
+ \ contained
+ \ display
+ \ '\s*\%(1\|t\%(rue\)\=\|y\%(es\)\=\)\>\s*$'
+
+syn match denyhostsPath
+ \ contained
+ \ display
+ \ '.\+'
+
+syn match denyhostsNumber
+ \ contained
+ \ display
+ \ '\d\+\>'
+
+syn match denyhostsTimespec
+ \ contained
+ \ display
+ \ '\d\+[mhdwy]\>'
+
+syn match denyhostsFormat
+ \ contained
+ \ display
+ \ '.\+'
+ \ contains=denyhostsFormattingExpandos
+
+syn match denyhostsFormattingExpandos
+ \ contained
+ \ display
+ \ '%.'
+
+syn match denyhostsRegex
+ \ contained
+ \ display
+ \ '.\+'
+
+" TODO: Perhaps come up with a better regex here? There should really be a
+" library for these kinds of generic regexes, that is, URLs, mail addresses, …
+syn match denyhostsURL
+ \ contained
+ \ display
+ \ '.\+'
+
+hi def link denyhostsTodo Todo
+hi def link denyhostsComment Comment
+hi def link denyhostsSetting Keyword
+hi def link denyhostsStringSetting denyhostsSetting
+hi def link denyhostsBooleanSetting denyhostsSetting
+hi def link denyhostsPathSetting denyhostsSetting
+hi def link denyhostsNumericSetting denyhostsSetting
+hi def link denyhostsTimespecSetting denyhostsSetting
+hi def link denyhostsFormatSetting denyhostsSetting
+hi def link denyhostsRegexSetting denyhostsSetting
+hi def link denyhostURLSetting denyhostsSetting
+hi def link denyhostsDelimiter Normal
+hi def link denyhostsStringDelimiter denyhostsDelimiter
+hi def link denyhostsBooleanDelimiter denyhostsDelimiter
+hi def link denyhostsPathDelimiter denyhostsDelimiter
+hi def link denyhostsNumericDelimiter denyhostsDelimiter
+hi def link denyhostsTimespecDelimiter denyhostsDelimiter
+hi def link denyhostsFormatDelimiter denyhostsDelimiter
+hi def link denyhostsRegexDelimiter denyhostsDelimiter
+hi def link denyhostsURLDelimiter denyhostsDelimiter
+hi def link denyhostsString String
+if exists('g:syntax_booleans_simple') || exists('b:syntax_booleans_simple')
+ hi def link denyhostsBoolean Boolean
+ hi def link denyhostsBooleanFalse denyhostsBoolean
+ hi def link denyhostsBooleanTrue denyhostsBoolean
+else
+ hi def denyhostsBooleanTrue term=bold ctermfg=Green guifg=Green
+ hi def denyhostsBooleanFalse ctermfg=Red guifg=Red
+endif
+hi def link denyhostsPath String
+hi def link denyhostsNumber Number
+hi def link denyhostsTimespec Number
+hi def link denyhostsFormat String
+hi def link denyhostsFormattingExpandos Special
+hi def link denyhostsRegex String
+hi def link denyhostsURL String
+
+let b:current_syntax = "denyhosts"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/syntax/git.vim b/runtime/syntax/git.vim
new file mode 100644
index 0000000000..fd76b7316b
--- /dev/null
+++ b/runtime/syntax/git.vim
@@ -0,0 +1,67 @@
+" Vim syntax file
+" Language: generic git output
+" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
+" Last Change: 2008 Mar 21
+
+if exists("b:current_syntax")
+ finish
+endif
+
+syn case match
+syn sync minlines=50
+
+syn include @gitDiff syntax/diff.vim
+
+syn region gitHead start=/\%^/ end=/^$/
+syn region gitHead start=/\%(^commit \x\{40\}$\)\@=/ end=/^$/
+
+" For git reflog and git show ...^{tree}, avoid sync issues
+syn match gitHead /^\d\{6\} \%(\w\{4} \)\=\x\{40\}\%( [0-3]\)\=\t.*/
+syn match gitHead /^\x\{40\} \x\{40}\t.*/
+
+syn region gitDiff start=/^\%(diff --git \)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff fold
+syn region gitDiff start=/^\%(@@ -\)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff
+
+syn match gitKeyword /^\%(object\|type\|tag\|commit\|tree\|parent\|encoding\)\>/ contained containedin=gitHead nextgroup=gitHash,gitType skipwhite
+syn match gitKeyword /^\%(tag\>\|ref:\)/ contained containedin=gitHead nextgroup=gitReference skipwhite
+syn match gitKeyword /^Merge:/ contained containedin=gitHead nextgroup=gitHashAbbrev skipwhite
+syn match gitMode /^\d\{6\}/ contained containedin=gitHead nextgroup=gitType,gitHash skipwhite
+syn match gitIdentityKeyword /^\%(author\|committer\|tagger\)\>/ contained containedin=gitHead nextgroup=gitIdentity skipwhite
+syn match gitIdentityHeader /^\%(Author\|Commit\|Tagger\):/ contained containedin=gitHead nextgroup=gitIdentity skipwhite
+syn match gitDateHeader /^\%(AuthorDate\|CommitDate\|Date\):/ contained containedin=gitHead nextgroup=gitDate skipwhite
+syn match gitIdentity /\S.\{-\} <[^>]*>/ contained nextgroup=gitDate skipwhite
+syn region gitEmail matchgroup=gitEmailDelimiter start=/</ end=/>/ keepend oneline contained containedin=gitIdentity
+
+syn match gitReflogHeader /^Reflog:/ contained containedin=gitHead nextgroup=gitReflogMiddle skipwhite
+syn match gitReflogHeader /^Reflog message:/ contained containedin=gitHead skipwhite
+syn match gitReflogMiddle /\S\+@{\d\+} (/he=e-2 nextgroup=gitIdentity
+
+syn match gitDate /\<\u\l\l \u\l\l \d\=\d \d\d:\d\d:\d\d \d\d\d\d [+-]\d\d\d\d/ contained
+syn match gitDate /-\=\d\+ [+-]\d\d\d\d\>/ contained
+syn match gitDate /\<\d\+ \l\+ ago\>/ contained
+syn match gitType /\<\%(tag\|commit\|tree\|blob\)\>/ contained nextgroup=gitHash skipwhite
+syn match gitStage /\<\d\t\@=/ contained
+syn match gitReference /\S\+\S\@!/ contained
+syn match gitHash /\<\x\{40\}\>/ contained nextgroup=gitIdentity,gitStage skipwhite
+syn match gitHash /^\<\x\{40\}\>/ containedin=gitHead contained nextgroup=gitHash skipwhite
+syn match gitHashAbbrev /\<\x\{4,39\}\.\.\./he=e-3 contained nextgroup=gitHashAbbrev skipwhite
+syn match gitHashAbbrev /\<\x\{40\}\>/ contained nextgroup=gitHashAbbrev skipwhite
+
+hi def link gitDateHeader gitIdentityHeader
+hi def link gitIdentityHeader gitIdentityKeyword
+hi def link gitIdentityKeyword Label
+hi def link gitReflogHeader gitKeyword
+hi def link gitKeyword Keyword
+hi def link gitIdentity String
+hi def link gitEmailDelimiter Delimiter
+hi def link gitEmail Special
+hi def link gitDate Number
+hi def link gitMode Number
+hi def link gitHashAbbrev gitHash
+hi def link gitHash Identifier
+hi def link gitReflogMiddle gitReference
+hi def link gitReference Function
+hi def link gitStage gitType
+hi def link gitType Type
+
+let b:current_syntax = "git"
diff --git a/runtime/syntax/gitcommit.vim b/runtime/syntax/gitcommit.vim
new file mode 100644
index 0000000000..e75d044178
--- /dev/null
+++ b/runtime/syntax/gitcommit.vim
@@ -0,0 +1,65 @@
+" Vim syntax file
+" Language: git commit file
+" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
+" Filenames: *.git/COMMIT_EDITMSG
+" Last Change: 2008 Apr 09
+
+if exists("b:current_syntax")
+ finish
+endif
+
+syn case match
+syn sync minlines=50
+
+if has("spell")
+ syn spell toplevel
+endif
+
+syn include @gitcommitDiff syntax/diff.vim
+syn region gitcommitDiff start=/\%(^diff --git \)\@=/ end=/^$\|^#\@=/ contains=@gitcommitDiff
+
+syn match gitcommitFirstLine "\%^[^#].*" nextgroup=gitcommitBlank skipnl
+syn match gitcommitSummary "^.\{0,50\}" contained containedin=gitcommitFirstLine nextgroup=gitcommitOverflow contains=@Spell
+syn match gitcommitOverflow ".*" contained contains=@Spell
+syn match gitcommitBlank "^[^#].*" contained contains=@Spell
+syn match gitcommitComment "^#.*"
+syn region gitcommitHead start=/^# / end=/^#$/ contained transparent
+syn match gitcommitOnBranch "\%(^# \)\@<=On branch" contained containedin=gitcommitComment nextgroup=gitcommitBranch skipwhite
+syn match gitcommitBranch "\S\+" contained
+syn match gitcommitHeader "\%(^# \)\@<=.*:$" contained containedin=gitcommitComment
+
+syn region gitcommitUntracked start=/^# Untracked files:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitUntrackedFile fold
+syn match gitcommitUntrackedFile "\t\@<=.*" contained
+
+syn region gitcommitDiscarded start=/^# Changed but not updated:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitDiscardedType fold
+syn region gitcommitSelected start=/^# Changes to be committed:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitSelectedType fold
+
+syn match gitcommitDiscardedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitDiscardedFile skipwhite
+syn match gitcommitSelectedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitSelectedFile skipwhite
+syn match gitcommitDiscardedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitDiscardedArrow
+syn match gitcommitSelectedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitSelectedArrow
+syn match gitcommitDiscardedArrow " -> " contained nextgroup=gitcommitDiscardedFile
+syn match gitcommitSelectedArrow " -> " contained nextgroup=gitcommitSelectedFile
+
+hi def link gitcommitSummary Keyword
+hi def link gitcommitComment Comment
+hi def link gitcommitUntracked gitcommitComment
+hi def link gitcommitDiscarded gitcommitComment
+hi def link gitcommitSelected gitcommitComment
+hi def link gitcommitOnBranch Comment
+hi def link gitcommitBranch Special
+hi def link gitcommitDiscardedType gitcommitType
+hi def link gitcommitSelectedType gitcommitType
+hi def link gitcommitType Type
+hi def link gitcommitHeader PreProc
+hi def link gitcommitUntrackedFile gitcommitFile
+hi def link gitcommitDiscardedFile gitcommitFile
+hi def link gitcommitSelectedFile gitcommitFile
+hi def link gitcommitFile Constant
+hi def link gitcommitDiscardedArrow gitcommitArrow
+hi def link gitcommitSelectedArrow gitcommitArrow
+hi def link gitcommitArrow gitcommitComment
+"hi def link gitcommitOverflow Error
+hi def link gitcommitBlank Error
+
+let b:current_syntax = "gitcommit"
diff --git a/runtime/syntax/hostconf.vim b/runtime/syntax/hostconf.vim
new file mode 100644
index 0000000000..4fc8af0ba3
--- /dev/null
+++ b/runtime/syntax/hostconf.vim
@@ -0,0 +1,147 @@
+" Vim syntax file
+" Language: host.conf(5) configuration file
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2007-06-25
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword hostconfTodo
+ \ contained
+ \ TODO
+ \ FIXME
+ \ XXX
+ \ NOTE
+
+syn match hostconfComment
+ \ display
+ \ contained
+ \ '\s*#.*'
+ \ contains=hostconfTodo,
+ \ @Spel