summaryrefslogtreecommitdiff
path: root/runtime/syntax
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2008-06-24 21:16:56 +0000
committerBram Moolenaar <Bram@vim.org>2008-06-24 21:16:56 +0000
commit3577c6fafb77da5419cd1001dac56f204d480bdc (patch)
tree46a08e8d03068c31624359c2601b3645c2881d8c /runtime/syntax
parenta7241f5f19fd0865ce697939c347a8c88fb507d5 (diff)
downloadvim-git-3577c6fafb77da5419cd1001dac56f204d480bdc.tar.gz
updated for version 7.2a
Diffstat (limited to 'runtime/syntax')
-rw-r--r--runtime/syntax/arch.vim4
-rw-r--r--runtime/syntax/automake.vim29
-rw-r--r--runtime/syntax/b.vim27
-rw-r--r--runtime/syntax/c.vim24
-rw-r--r--runtime/syntax/cf.vim318
-rw-r--r--runtime/syntax/conaryrecipe.vim60
-rw-r--r--runtime/syntax/cuda.vim72
-rw-r--r--runtime/syntax/debchangelog.vim15
-rw-r--r--runtime/syntax/elinks.vim4
-rw-r--r--runtime/syntax/forth.vim63
-rw-r--r--runtime/syntax/gitrebase.vim31
-rw-r--r--runtime/syntax/gpg.vim4
-rw-r--r--runtime/syntax/lftp.vim4
-rw-r--r--runtime/syntax/mmp.vim53
-rw-r--r--runtime/syntax/objcpp.vim13
-rw-r--r--runtime/syntax/php.vim2
-rw-r--r--runtime/syntax/pinfo.vim4
-rw-r--r--runtime/syntax/prolog.vim8
-rw-r--r--runtime/syntax/promela.vim60
-rw-r--r--runtime/syntax/reva.vim191
-rw-r--r--runtime/syntax/rnc.vim4
-rw-r--r--runtime/syntax/sh.vim8
-rw-r--r--runtime/syntax/tex.vim60
-rw-r--r--runtime/syntax/vim.vim210
-rw-r--r--runtime/syntax/voscm.vim94
-rw-r--r--runtime/syntax/xpm2.vim14
26 files changed, 1048 insertions, 328 deletions
diff --git a/runtime/syntax/arch.vim b/runtime/syntax/arch.vim
index ad23a7713..fa9c3f02c 100644
--- a/runtime/syntax/arch.vim
+++ b/runtime/syntax/arch.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: GNU Arch inventory file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-05-06
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,_,-
+setlocal iskeyword+=-
syn keyword archTodo TODO FIXME XXX NOTE
diff --git a/runtime/syntax/automake.vim b/runtime/syntax/automake.vim
index b2dd0f930..02ed74fa8 100644
--- a/runtime/syntax/automake.vim
+++ b/runtime/syntax/automake.vim
@@ -1,9 +1,15 @@
" Vim syntax file
-" Language: automake Makefile.am
-" Maintainer: Felipe Contreras <felipe.contreras@gmail.com>
-" Former Maintainer: John Williams <jrw@pobox.com>
-" Last Change: $LastChangedDate: 2006-04-16 22:06:40 -0400 (dom, 16 apr 2006) $
-" URL: http://svn.debian.org/wsvn/pkg-vim/trunk/runtime/syntax/automake.vim?op=file&rev=0&sc=0
+" Language: automake Makefile.am
+" Maintainer: Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Former Maintainer: John Williams <jrw@pobox.com>
+" Last Change: 2007-10-14
+" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/syntax/automake.vim;hb=debian
+"
+" XXX This file is in need of a new maintainer, Debian VIM Maintainers maintain
+" it only because patches have been submitted for it by Debian users and the
+" former maintainer was MIA (Missing In Action), taking over its
+" maintenance was thus the only way to include those patches.
+" If you care about this file, and have time to maintain it please do so!
"
" This script adds support for automake's Makefile.am format. It highlights
" Makefile variables significant to automake as well as highlighting
@@ -19,18 +25,11 @@ else
runtime! syntax/make.vim
endif
-syn match automakePrimary "^[A-Za-z0-9_]\+_\(PROGRAMS\|LIBRARIES\|LISP\|PYTHON\|JAVA\|SCRIPTS\|DATA\|HEADERS\|MANS\|TEXINFOS\|LTLIBRARIES\)\s*="me=e-1
-
-syn match automakeSecondary "^[A-Za-z0-9_]\+_\(SOURCES\|AR\|LIBADD\|LDADD\|LDFLAGS\|DEPENDENCIES\|LINK\|SHORTNAME\)\s*="me=e-1
-syn match automakeSecondary "^[A-Za-z0-9_]\+_\(CCASFLAGS\|CFLAGS\|CPPFLAGS\|CXXFLAGS\|FFLAGS\|GCJFLAGS\|LFLAGS\|OBJCFLAGS\|RFLAGS\|YFLAGS\)\s*="me=e-1
-
-syn match automakeExtra "^EXTRA_DIST\s*="me=e-1
-syn match automakeExtra "^EXTRA_PROGRAMS\s*="me=e-1
-syn match automakeExtra "^EXTRA_[A-Za-z0-9_]\+_SOURCES\s*="me=e-1
-
-" TODO: Check these:
+syn match automakePrimary "^[A-Za-z0-9_]\+\(_PROGRAMS\|LIBRARIES\|_LIST\|_SCRIPTS\|_DATA\|_HEADERS\|_MANS\|_TEXINFOS\|_JAVA\|_LTLIBRARIES\)\s*="me=e-1
syn match automakePrimary "^TESTS\s*="me=e-1
+syn match automakeSecondary "^[A-Za-z0-9_]\+\(_SOURCES\|_LDADD\|_LIBADD\|_LDFLAGS\|_DEPENDENCIES\|_CPPFLAGS\)\s*="me=e-1
syn match automakeSecondary "^OMIT_DEPENDENCIES\s*="me=e-1
+syn match automakeExtra "^EXTRA_[A-Za-z0-9_]\+\s*="me=e-1
syn match automakeOptions "^\(AUTOMAKE_OPTIONS\|ETAGS_ARGS\|TAGS_DEPENDENCIES\)\s*="me=e-1
syn match automakeClean "^\(MOSTLY\|DIST\|MAINTAINER\)\=CLEANFILES\s*="me=e-1
syn match automakeSubdirs "^\(DIST_\)\=SUBDIRS\s*="me=e-1
diff --git a/runtime/syntax/b.vim b/runtime/syntax/b.vim
index 7f6c4e880..b470ab9ef 100644
--- a/runtime/syntax/b.vim
+++ b/runtime/syntax/b.vim
@@ -1,7 +1,8 @@
" Vim syntax file
" Language: B (A Formal Method with refinement and mathematical proof)
-" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
-" LastChange: 25 Apr 2001
+" Maintainer: Mathieu Clabaut <mathieu.clabaut@gmail.com>
+" Contributor: Csaba Hoch
+" LastChange: 8 Dec 2007
" For version 5.x: Clear all syntax items
@@ -14,20 +15,20 @@ endif
" A bunch of useful B keywords
-syn keyword bStatement MACHINE SEES OPERATIONS INCLUDES DEFINITIONS CONSTRAINTS CONSTANTS VARIABLES CONCRETE_CONSTANTS CONCRETE_VARIABLES ABSTRACT_CONSTANTS ABSTRACT_VARIABLES HIDDEN_CONSTANTS HIDDEN_VARIABLES ASSERT ASSERTIONS EXTENDS IMPLEMENTATION REFINEMENT IMPORTS USES INITIALISATION INVARIANT PROMOTES PROPERTIES REFINES SETS VALUES VARIANT VISIBLE_CONSTANTS VISIBLE_VARIABLES THEORY
+syn keyword bStatement MACHINE MODEL SEES OPERATIONS INCLUDES DEFINITIONS CONSTRAINTS CONSTANTS VARIABLES CONCRETE_CONSTANTS CONCRETE_VARIABLES ABSTRACT_CONSTANTS ABSTRACT_VARIABLES HIDDEN_CONSTANTS HIDDEN_VARIABLES ASSERT ASSERTIONS EXTENDS IMPLEMENTATION REFINEMENT IMPORTS USES INITIALISATION INVARIANT PROMOTES PROPERTIES REFINES SETS VALUES VARIANT VISIBLE_CONSTANTS VISIBLE_VARIABLES THEORY XLS THEOREMS LOCAL_OPERATIONS
syn keyword bLabel CASE IN EITHER OR CHOICE DO OF
syn keyword bConditional IF ELSE SELECT ELSIF THEN WHEN
syn keyword bRepeat WHILE FOR
syn keyword bOps bool card conc closure closure1 dom first fnc front not or id inter iseq iseq1 iterate last max min mod perm pred prj1 prj2 ran rel rev seq seq1 size skip succ tail union
syn keyword bKeywords LET VAR BE IN BEGIN END POW POW1 FIN FIN1 PRE SIGMA STRING UNION IS ANY WHERE
-syn match bKeywords "||"
syn keyword bBoolean TRUE FALSE bfalse btrue
syn keyword bConstant PI MAXINT MININT User_Pass PatchProver PatchProverH0 PatchProverB0 FLAT ARI DED SUB RES
syn keyword bGuard binhyp band bnot bguard bsearch bflat bfresh bguardi bget bgethyp barith bgetresult bresult bgoal bmatch bmodr bnewv bnum btest bpattern bprintf bwritef bsubfrm bvrb blvar bcall bappend bclose
syn keyword bLogic or not
-syn match bLogic "\&\|=>\|<=>"
+syn match bLogic "\(!\|#\|%\|&\|+->>\|+->\|-->>\|->>\|-->\|->\|/:\|/<:\|/<<:\|/=\|/\\\|/|\\\|::\|:\|;:\|<+\|<->\|<--\|<-\|<:\|<<:\|<<|\|<=>\|<|\|==\|=>\|>+>>\|>->\|>+>\|||\||->\)"
+syn match bNothing /:=/
syn keyword cTodo contained TODO FIXME XXX
@@ -51,23 +52,8 @@ syn match bNumber "\<[0-9]\+\>"
"syn match bIdentifier "\<[a-z_][a-z0-9_]*\>"
syn case match
-if exists("b_comment_strings")
- " A comment can contain bString, bCharacter and bNumber.
- " But a "*/" inside a bString in a bComment DOES end the comment! So we
- " need to use a special type of bString: bCommentString, which also ends on
- " "*/", and sees a "*" at the start of the line as comment again.
- " Unfortunately this doesn't very well work for // type of comments :-(
- syntax match bCommentSkip contained "^\s*\*\($\|\s\+\)"
- syntax region bCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=bSpecial,bCommentSkip
- syntax region bComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=bSpecial
- syntax region bComment start="/\*" end="\*/" contains=bTodo,bCommentString,bCharacter,bNumber,bFloat
- syntax region bComment start="/\?\*" end="\*\?/" contains=bTodo,bCommentString,bCharacter,bNumber,bFloat
- syntax match bComment "//.*" contains=bTodo,bComment2String,bCharacter,bNumber
-else
syn region bComment start="/\*" end="\*/" contains=bTodo
- syn region bComment start="/\?\*" end="\*\?/" contains=bTodo
syn match bComment "//.*" contains=bTodo
-endif
syntax match bCommentError "\*/"
syn keyword bType INT INTEGER BOOL NAT NATURAL NAT1 NATURAL1
@@ -80,7 +66,6 @@ syn match bInclude "^\s*#\s*include\>\s*["<]" contains=bIncluded
syn region bDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen
syn region bPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen
-
syn sync ccomment bComment minlines=10
" Define the default highlighting.
diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim
index 7164e14ed..07df36ba3 100644
--- a/runtime/syntax/c.vim
+++ b/runtime/syntax/c.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2007 Feb 13
+" Last Change: 2008 Mar 19
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
@@ -65,12 +65,17 @@ if exists("c_space_errors")
endif
" This should be before cErrInParen to avoid problems with #define ({ xxx })
-syntax region cBlock start="{" end="}" transparent fold
+if exists("c_curly_error")
+ syntax match cCurlyError "}"
+ syntax region cBlock start="{" end="}" contains=ALLBUT,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
+else
+ syntax region cBlock start="{" end="}" transparent fold
+endif
"catch errors caused by wrong parenthesis and brackets
" also accept <% for {, %> for }, <: for [ and :> for ] (C99)
" But avoid matching <::.
-syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cCommentSkip,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
+syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
if exists("c_no_curly_error")
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cCppString,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
@@ -144,9 +149,9 @@ if exists("c_comment_strings")
else
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cSpaceError,@Spell
if exists("c_no_comment_fold")
- syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell
+ syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell extend
else
- syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell fold
+ syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell fold extend
endif
endif
" keep a // comment separately, it terminates a preproc. conditional
@@ -203,7 +208,7 @@ if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
syn keyword cConstant SCHAR_MAX SINT_MAX SLONG_MAX SSHRT_MAX
if !exists("c_no_c99")
syn keyword cConstant __func__
- syn keyword cConstant LLONG_MAX ULLONG_MAX
+ syn keyword cConstant LLONG_MIN LLONG_MAX ULLONG_MAX
syn keyword cConstant INT8_MIN INT16_MIN INT32_MIN INT64_MIN
syn keyword cConstant INT8_MAX INT16_MAX INT32_MAX INT64_MAX
syn keyword cConstant UINT8_MAX UINT16_MAX UINT32_MAX UINT64_MAX
@@ -304,7 +309,11 @@ else
let b:c_minlines = 15 " mostly for () constructs
endif
endif
-exec "syn sync ccomment cComment minlines=" . b:c_minlines
+if exists("c_curly_error")
+ syn sync fromstart
+else
+ exec "syn sync ccomment cComment minlines=" . b:c_minlines
+endif
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
@@ -330,6 +339,7 @@ hi def link cCommentError cError
hi def link cCommentStartError cError
hi def link cSpaceError cError
hi def link cSpecialError cError
+hi def link cCurlyError cError
hi def link cOperator Operator
hi def link cStructure Structure
hi def link cStorageClass StorageClass
diff --git a/runtime/syntax/cf.vim b/runtime/syntax/cf.vim
index 951840609..bda24d79c 100644
--- a/runtime/syntax/cf.vim
+++ b/runtime/syntax/cf.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: ColdFusion
" Maintainer: Toby Woodwark (toby.woodwark+vim@gmail.com)
-" Last Change: 2005 Nov 25
+" Last Change: 2007 Nov 19
" Filenames: *.cfc *.cfm
" Version: Macromedia ColdFusion MX 7
" Usage: Note that ColdFusion has its own comment syntax
@@ -28,137 +28,193 @@ syn sync maxlines=200
syn case ignore
" Scopes and keywords.
-syn keyword cfScope contained cgi cffile request caller this thistag cfcatch variables application server session client form url attributes arguments
+syn keyword cfScope contained cgi cffile cookie request caller this thistag
+syn keyword cfScope contained cfcatch variables application server session client form url attributes
+syn keyword cfScope contained arguments
syn keyword cfBool contained yes no true false
" Operator strings.
-" Not exhaustive, since there are longhand equivalents.
-syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte eq neq not is mod contains
+syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte equal eq neq not is mod contains
+syn match cfOperatorMatch contained "\<does\_s\+not\_s\+contain\>"
+syn match cfOperatorMatch contained "\<\(greater\|less\)\_s\+than\(\_s\+or\_s\+equal\_s\+to\)\?\>"
syn match cfOperatorMatch contained "[\+\-\*\/\\\^\&][\+\-\*\/\\\^\&]\@!"
syn cluster cfOperatorCluster contains=cfOperator,cfOperatorMatch
" Tag names.
-syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate cfbreak cfcache
-syn keyword cfTagName contained cfcalendar cfcase cfcatch cfchart cfchartdata cfchartseries cfcol cfcollection
-syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory cfdocument
-syn keyword cfTagName contained cfdocumentitem cfdocumentsection cfdump cfelse cfelseif cferror cfexecute
-syn keyword cfTagName contained cfexit cffile cfflush cfform cfformgroup cfformitem cfftp cffunction cfgrid
-syn keyword cfTagName contained cfgridcolumn cfgridrow cfgridupdate cfheader cfhtmlhead cfhttp cfhttpparam cfif
-syn keyword cfTagName contained cfimport cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
-syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout cfloop cfmail
-syn keyword cfTagName contained cfmailparam cfmailpart cfmodule cfNTauthenticate cfobject cfobjectcache
-syn keyword cfTagName contained cfoutput cfparam cfpop cfprocessingdirective cfprocparam cfprocresult
-syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport cfreportparam cfrethrow
-syn keyword cfTagName contained cfreturn cfsavecontent cfschedule cfscript cfsearch cfselect cfset cfsetting
-syn keyword cfTagName contained cfsilent cfslider cfstoredproc cfswitch cftable cftextarea cfthrow cftimer
-syn keyword cfTagName contained cftrace cftransaction cftree cftreeitem cftry cfupdate cfwddx cfxml
+syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate
+syn keyword cfTagName contained cfbreak cfcache cfcalendar cfcase cfcatch
+syn keyword cfTagName contained cfchart cfchartdata cfchartseries cfcol cfcollection
+syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory
+syn keyword cfTagName contained cfdocument cfdocumentitem cfdocumentsection cfdump cfelse
+syn keyword cfTagName contained cfelseif cferror cfexecute cfexit cffile cfflush cfform
+syn keyword cfTagName contained cfformgroup cfformitem cfftp cffunction cfgraph cfgraphdata
+syn keyword cfTagName contained cfgrid cfgridcolumn cfgridrow cfgridupdate cfheader
+syn keyword cfTagName contained cfhtmlhead cfhttp cfhttpparam cfif cfimport
+syn keyword cfTagName contained cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
+syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout
+syn keyword cfTagName contained cfloop cfmail cfmailparam cfmailpart cfmodule
+syn keyword cfTagName contained cfNTauthenticate cfobject cfobjectcache cfoutput cfparam
+syn keyword cfTagName contained cfpop cfprocessingdirective cfprocparam cfprocresult
+syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport
+syn keyword cfTagName contained cfreportparam cfrethrow cfreturn cfsavecontent cfschedule
+syn keyword cfTagName contained cfscript cfsearch cfselect cfservlet cfservletparam cfset
+syn keyword cfTagName contained cfsetting cfsilent cfslider cfstoredproc cfswitch cftable
+syn keyword cfTagName contained cftextarea cftextinput cfthrow cftimer cftrace cftransaction
+syn keyword cfTagName contained cftree cftreeitem cftry cfupdate cfwddx cfxml
" Tag parameters.
-syn keyword cfArg contained abort accept access accessible action addnewline addtoken addtoken agentname
-syn keyword cfArg contained align appendkey appletsource application applicationtimeout applicationtoken
-syn keyword cfArg contained archive argumentcollection arguments asciiextensionlist attachmentpath
-syn keyword cfArg contained attributecollection attributes attributes autowidth backgroundcolor
-syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname blockfactor body bold
-syn keyword cfArg contained border branch cachedafter cachedwithin casesensitive categories category
-syn keyword cfArg contained categorytree cc cfsqltype charset chartheight chartwidth checked class
-syn keyword cfArg contained clientmanagement clientstorage codebase colheaderalign colheaderbold
-syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders colheadertextcolor
-syn keyword cfArg contained collection colorlist colspacing columns completepath component condition
-syn keyword cfArg contained connection contentid context contextbytes contexthighlightbegin
-syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria custom1 custom2
-syn keyword cfArg contained custom3 custom4 data dataalign databackgroundcolor datacollection
-syn keyword cfArg contained datalabelstyle datasource date daynames dbname dbserver dbtype dbvarname debug
-syn keyword cfArg contained default delete deletebutton deletefile delimiter delimiters description
-syn keyword cfArg contained destination detail directory disabled display displayname disposition dn domain
-syn keyword cfArg contained enablecab enablecfoutputonly enabled encoded encryption enctype enddate
-syn keyword cfArg contained endrange endrow endtime entry errorcode exception existing expand expires
-syn keyword cfArg contained expireurl expression extendedinfo extends extensions external failifexists
-syn keyword cfArg contained failto file filefield filename filter firstdayofweek firstrowasheaders font
-syn keyword cfArg contained fontbold fontembed fontitalic fontsize foregroundcolor format formfields
-syn keyword cfArg contained formula from generateuniquefilenames getasbinary grid griddataalign gridlines
-syn keyword cfArg contained groovecolor group groupcasesensitive header headeralign headerbold headerfont
-syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor height highlighthref
-syn keyword cfArg contained hint href hrefkey hscroll hspace htmltable id idletimeout img imgopen imgstyle
-syn keyword cfArg contained index inline input insert insertbutton interval isolation italic item
-syn keyword cfArg contained itemcolumn key keyonly label labelformat language list listgroups locale
-syn keyword cfArg contained localfile log loginstorage lookandfeel mailerid mailto marginbottom marginleft
-syn keyword cfArg contained marginright marginright margintop markersize markerstyle mask maxlength maxrows
-syn keyword cfArg contained message messagenumber method mimeattach mimetype mode modifytype monthnames
-syn keyword cfArg contained multipart multiple name namecomplict nameconflict namespace new newdirectory
-syn keyword cfArg contained notsupported null numberformat object omit onchange onclick onerror onkeydown
-syn keyword cfArg contained onkeyup onload onmousedown onmouseup onreset onsubmit onvalidate operation
-syn keyword cfArg contained orderby orientation output outputfile overwrite ownerpassword pageencoding
-syn keyword cfArg contained pageheight pagetype pagewidth paintstyle param_1 param_2 param_3 param_4
-syn keyword cfArg contained param_5 parent passive passthrough password path pattern permissions picturebar
-syn keyword cfArg contained pieslicestyle port porttypename prefix preloader preservedata previouscriteria
-syn keyword cfArg contained procedure protocol provider providerdsn proxybypass proxypassword proxyport
-syn keyword cfArg contained proxyserver proxyuser publish query queryasroot queryposition range rebind
-syn keyword cfArg contained recurse redirect referral refreshlabel remotefile replyto report requesttimeout
-syn keyword cfArg contained required reset resolveurl result resultset retrycount returnasbinary returncode
-syn keyword cfArg contained returntype returnvariable roles rowheaderalign rowheaderbold rowheaderfont
-syn keyword cfArg contained rowheaderfontsize rowheaderitalic rowheaders rowheadertextcolor rowheaderwidth
-syn keyword cfArg contained rowheight scale scalefrom scaleto scope scriptprotect scriptsrc secure
-syn keyword cfArg contained securitycontext select selectcolor selected selecteddate selectedindex
-syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement server serviceport
-syn keyword cfArg contained serviceportname sessionmanagement sessiontimeout setclientcookies setcookie
-syn keyword cfArg contained setdomaincookies show3d showborder showdebugoutput showerror showlegend
-syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort sortascendingbutton
-syn keyword cfArg contained sortcontrol sortdescendingbutton sortxaxis source spoolenable sql src start
-syn keyword cfArg contained startdate startrange startrow starttime status statuscode statustext step
-syn keyword cfArg contained stoponerror style subject suggestions suppresswhitespace tablename tableowner
-syn keyword cfArg contained tablequalifier taglib target task template text textcolor textqualifier
-syn keyword cfArg contained thread throwonerror throwonfailure throwontimeout time timeout timespan tipbgcolor tipstyle
-syn keyword cfArg contained title to tooltip top toplevelvariable transfermode type uid unit url urlpath
-syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate validateat value
-syn keyword cfArg contained valuecolumn values valuesdelimiter valuesdisplay var variable vertical visible
-syn keyword cfArg contained vscroll vspace webservice width wmode wraptext wsdlfile xaxistitle xaxistype
-syn keyword cfArg contained xoffset yaxistitle yaxistype yoffset
+syn keyword cfArg contained abort accept access accessible action addnewline addtoken
+syn keyword cfArg contained agentname align appendkey appletsource application
+syn keyword cfArg contained applicationtimeout applicationtoken archive
+syn keyword cfArg contained argumentcollection arguments asciiextensionlist
+syn keyword cfArg contained attachmentpath attributecollection attributes autowidth
+syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname
+syn keyword cfArg contained blockfactor body bold border branch cachedafter cachedwithin
+syn keyword cfArg contained casesensitive category categorytree cc cfsqltype charset
+syn keyword cfArg contained chartheight chartwidth checked class clientmanagement
+syn keyword cfArg contained clientstorage codebase colheaderalign colheaderbold
+syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders
+syn keyword cfArg contained colheadertextcolor collection colorlist colspacing columns
+syn keyword cfArg contained completepath component condition connection contentid
+syn keyword cfArg contained context contextbytes contexthighlightbegin
+syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria
+syn keyword cfArg contained custom1 custom2 custom3 custom4 data dataalign
+syn keyword cfArg contained databackgroundcolor datacollection datasource daynames
+syn keyword cfArg contained dbname dbserver dbtype dbvarname debug default delete
+syn keyword cfArg contained deletebutton deletefile delimiter delimiters description
+syn keyword cfArg contained destination detail directory disabled display displayname
+syn keyword cfArg contained disposition dn domain editable enablecab enablecfoutputonly
+syn keyword cfArg contained enabled encoded encryption enctype enddate endrange endtime
+syn keyword cfArg contained entry errorcode exception existing expand expires expireurl
+syn keyword cfArg contained expression extendedinfo extends extensions external
+syn keyword cfArg contained failifexists failto file filefield filename filter
+syn keyword cfArg contained firstdayofweek firstrowasheaders fixnewline font fontbold
+syn keyword cfArg contained fontembed fontitalic fontsize foregroundcolor format
+syn keyword cfArg contained formfields formula from generateuniquefilenames getasbinary
+syn keyword cfArg contained grid griddataalign gridlines groovecolor group
+syn keyword cfArg contained groupcasesensitive header headeralign headerbold headerfont
+syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor
+syn keyword cfArg contained height highlighthref hint href hrefkey hscroll hspace html
+syn keyword cfArg contained htmltable id idletimeout img imgopen imgstyle index inline
+syn keyword cfArg contained input insert insertbutton interval isolation italic item
+syn keyword cfArg contained itemcolumn key keyonly label labelformat language list
+syn keyword cfArg contained listgroups locale localfile log loginstorage lookandfeel
+syn keyword cfArg contained mailerid mailto marginbottom marginleft marginright
+syn keyword cfArg contained margintop markersize markerstyle mask max maxlength maxrows
+syn keyword cfArg contained message messagenumber method mimeattach mimetype min mode
+syn keyword cfArg contained modifytype monthnames multipart multiple name nameconflict
+syn keyword cfArg contained namespace new newdirectory notsupported null numberformat
+syn keyword cfArg contained object omit onblur onchange onclick onerror onfocus
+syn keyword cfArg contained onkeydown onkeyup onload onmousedown onmouseup onreset
+syn keyword cfArg contained onsubmit onvalidate operation orderby orientation output
+syn keyword cfArg contained outputfile overwrite ownerpassword pageencoding pageheight
+syn keyword cfArg contained pagetype pagewidth paintstyle param_1 param_2 param_3
+syn keyword cfArg contained param_4 param_5 param_6 param_7 param_8 param_9 parent
+syn keyword cfArg contained parrent passive passthrough password path pattern
+syn keyword cfArg contained permissions picturebar pieslicestyle port porttypename
+syn keyword cfArg contained prefix preloader preservedata previouscriteria procedure
+syn keyword cfArg contained protocol provider providerdsn proxybypass proxypassword
+syn keyword cfArg contained proxyport proxyserver proxyuser publish query queryasroot
+syn keyword cfArg contained queryposition range rebind recurse redirect referral
+syn keyword cfArg contained refreshlabel remotefile replyto report requesttimeout
+syn keyword cfArg contained required reset resoleurl resolveurl result resultset
+syn keyword cfArg contained retrycount returnasbinary returncode returntype
+syn keyword cfArg contained returnvariable roles rotated rowheaderalign rowheaderbold
+syn keyword cfArg contained rowheaderfont rowheaderfontsize rowheaderitalic rowheaders
+syn keyword cfArg contained rowheadertextcolor rowheaderwidth rowheight scale scalefrom
+syn keyword cfArg contained scaleto scope scriptprotect scriptsrc secure securitycontext
+syn keyword cfArg contained select selectcolor selected selecteddate selectedindex
+syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement
+syn keyword cfArg contained server serviceport serviceportname sessionmanagement
+syn keyword cfArg contained sessiontimeout setclientcookies setcookie setdomaincookies
+syn keyword cfArg contained show3d showborder showdebugoutput showerror showlegend
+syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort
+syn keyword cfArg contained sortascendingbutton sortcontrol sortdescendingbutton
+syn keyword cfArg contained sortxaxis source spoolenable sql src srcfile start startdate
+syn keyword cfArg contained startrange startrow starttime status statuscode statustext
+syn keyword cfArg contained step stoponerror style subject suggestions
+syn keyword cfArg contained suppresswhitespace tablename tableowner tablequalifier
+syn keyword cfArg contained taglib target task template text textcolor textqualifier
+syn keyword cfArg contained throwonerror throwonerror throwonfailure throwontimeout
+syn keyword cfArg contained timeout timespan tipbgcolor tipstyle title to tooltip
+syn keyword cfArg contained toplevelvariable transfermode type uid unit url urlpath
+syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate
+syn keyword cfArg contained validateat value valuecolumn values valuesdelimiter
+syn keyword cfArg contained valuesdisplay var variable vertical visible vscroll vspace
+syn keyword cfArg contained webservice width wmode wraptext wsdlfile xaxistitle
+syn keyword cfArg contained xaxistype xoffset yaxistitle yaxistype yoffset
" ColdFusion Functions.
-syn keyword cfFunctionName contained Abs GetFunctionList Max ACos GetGatewayHelper Mid AddSOAPRequestHeader
-syn keyword cfFunctionName contained GetHttpRequestData Min AddSOAPResponseHeader GetHttpTimeString Minute
-syn keyword cfFunctionName contained ArrayAppend GetLocale Month ArrayAvg GetLocaleDisplayName MonthAsString
-syn keyword cfFunctionName contained ArrayClear GetMetaData Now ArrayDeleteAt GetMetricData NumberFormat
-syn keyword cfFunctionName contained ArrayInsertAt GetPageContext ParagraphFormat ArrayIsEmpty GetProfileSections
-syn keyword cfFunctionName contained ParseDateTime ArrayLen GetProfileString Pi ArrayMax GetSOAPRequest
-syn keyword cfFunctionName contained PreserveSingleQuotes ArrayMin GetSOAPRequestHeader Quarter ArrayNew
-syn keyword cfFunctionName contained GetSOAPResponse QueryAddColumn ArrayPrepend GetSOAPResponseHeader QueryAddRow
-syn keyword cfFunctionName contained ArrayResize GetTempDirectory QueryNew ArraySet GetTempFile QuerySetCell
-syn keyword cfFunctionName contained ArraySort GetTickCount QuotedValueList ArraySum GetTimeZoneInfo Rand ArraySwap
-syn keyword cfFunctionName contained GetToken Randomize ArrayToList Hash RandRange Asc Hour REFind ASin
-syn keyword cfFunctionName contained HTMLCodeFormat REFindNoCase Atn HTMLEditFormat ReleaseComObject BinaryDecode
-syn keyword cfFunctionName contained IIf RemoveChars BinaryEncode IncrementValue RepeatString BitAnd InputBaseN
-syn keyword cfFunctionName contained Replace BitMaskClear Insert ReplaceList BitMaskRead Int ReplaceNoCase
-syn keyword cfFunctionName contained BitMaskSet IsArray REReplace BitNot IsBinary REReplaceNoCase BitOr IsBoolean
-syn keyword cfFunctionName contained Reverse BitSHLN IsCustomFunction Right BitSHRN IsDate RJustify BitXor
-syn keyword cfFunctionName contained IsDebugMode Round Ceiling IsDefined RTrim CharsetDecode IsLeapYear Second
-syn keyword cfFunctionName contained CharsetEncode IsNumeric SendGatewayMessage Chr IsNumericDate SetEncoding
-syn keyword cfFunctionName contained CJustify IsObject SetLocale Compare IsQuery SetProfileString CompareNoCase
-syn keyword cfFunctionName contained IsSimpleValue SetVariable Cos IsSOAPRequest Sgn CreateDate IsStruct Sin
-syn keyword cfFunctionName contained CreateDateTime IsUserInRole SpanExcluding CreateObject IsValid SpanIncluding
-syn keyword cfFunctionName contained CreateODBCDate IsWDDX Sqr CreateODBCDateTime IsXML StripCR CreateODBCTime
-syn keyword cfFunctionName contained IsXmlAttribute StructAppend CreateTime IsXmlDoc StructClear CreateTimeSpan
-syn keyword cfFunctionName contained IsXmlElem StructCopy CreateUUID IsXmlNode StructCount DateAdd IsXmlRoot
-syn keyword cfFunctionName contained StructDelete DateCompare JavaCast StructFind DateConvert JSStringFormat
-syn keyword cfFunctionName contained StructFindKey DateDiff LCase StructFindValue DateFormat Left StructGet
-syn keyword cfFunctionName contained DatePart Len StructInsert Day ListAppend StructIsEmpty DayOfWeek
-syn keyword cfFunctionName contained ListChangeDelims StructKeyArray DayOfWeekAsString ListContains StructKeyExists
-syn keyword cfFunctionName contained DayOfYear ListContainsNoCase StructKeyList DaysInMonth ListDeleteAt StructNew
-syn keyword cfFunctionName contained DaysInYear ListFind StructSort DE ListFindNoCase StructUpdate DecimalFormat
-syn keyword cfFunctionName contained ListFirst Tan DecrementValue ListGetAt TimeFormat Decrypt ListInsertAt
-syn keyword cfFunctionName contained ToBase64 DeleteClientVariable ListLast ToBinary DirectoryExists ListLen
-syn keyword cfFunctionName contained ToScript DollarFormat ListPrepend ToString Duplicate ListQualify Trim Encrypt
-syn keyword cfFunctionName contained ListRest UCase Evaluate ListSetAt URLDecode Exp ListSort URLEncodedFormat
-syn keyword cfFunctionName contained ExpandPath ListToArray URLSessionFormat FileExists ListValueCount Val Find
-syn keyword cfFunctionName contained ListValueCountNoCase ValueList FindNoCase LJustify Week FindOneOf Log Wrap
-syn keyword cfFunctionName contained FirstDayOfMonth Log10 WriteOutput Fix LSCurrencyFormat XmlChildPos FormatBaseN
-syn keyword cfFunctionName contained LSDateFormat XmlElemNew GetTempDirectory LSEuroCurrencyFormat XmlFormat
-syn keyword cfFunctionName contained GetAuthUser LSIsCurrency XmlGetNodeType GetBaseTagData LSIsDate XmlNew
-syn keyword cfFunctionName contained GetBaseTagList LSIsNumeric XmlParse GetBaseTemplatePath LSNumberFormat
-syn keyword cfFunctionName contained XmlSearch GetClientVariablesList LSParseCurrency XmlTransform
-syn keyword cfFunctionName contained GetCurrentTemplatePath LSParseDateTime XmlValidate GetDirectoryFromPath
-syn keyword cfFunctionName contained LSParseEuroCurrency Year GetEncoding LSParseNumber YesNoFormat GetException
-syn keyword cfFunctionName contained LSTimeFormat GetFileFromPath LTrim
+syn keyword cfFunctionName contained ACos ASin Abs AddSOAPRequestHeader AddSOAPResponseHeader
+syn keyword cfFunctionName contained ArrayAppend ArrayAvg ArrayClear ArrayDeleteAt ArrayInsertAt
+syn keyword cfFunctionName contained ArrayIsEmpty ArrayLen ArrayMax ArrayMin ArrayNew
+syn keyword cfFunctionName contained ArrayPrepend ArrayResize ArraySet ArraySort ArraySum
+syn keyword cfFunctionName contained ArraySwap ArrayToList Asc Atn AuthenticatedContext
+syn keyword cfFunctionName contained AuthenticatedUser BinaryDecode BinaryEncode BitAnd
+syn keyword cfFunctionName contained BitMaskClear BitMaskRead BitMaskSet BitNot BitOr BitSHLN
+syn keyword cfFunctionName contained BitSHRN BitXor CJustify Ceiling CharsetDecode CharsetEncode
+syn keyword cfFunctionName contained Chr Compare CompareNoCase Cos CreateDate CreateDateTime
+syn keyword cfFunctionName contained CreateODBCDate CreateODBCDateTime CreateODBCTime
+syn keyword cfFunctionName contained CreateObject CreateTime CreateTimeSpan CreateUUID DE DateAdd
+syn keyword cfFunctionName contained DateCompare DateConvert DateDiff DateFormat DatePart Day
+syn keyword cfFunctionName contained DayOfWeek DayOfWeekAsString DayOfYear DaysInMonth DaysInYear
+syn keyword cfFunctionName contained DecimalFormat DecrementValue Decrypt DecryptBinary
+syn keyword cfFunctionName contained DeleteClientVariable DirectoryExists DollarFormat Duplicate
+syn keyword cfFunctionName contained Encrypt EncryptBinary Evaluate Exp ExpandPath FileExists
+syn keyword cfFunctionName contained Find FindNoCase FindOneOf FirstDayOfMonth Fix FormatBaseN
+syn keyword cfFunctionName contained GenerateSecretKey GetAuthUser GetBaseTagData GetBaseTagList
+syn keyword cfFunctionName contained GetBaseTemplatePath GetClientVariablesList GetContextRoot
+syn keyword cfFunctionName contained GetCurrentTemplatePath GetDirectoryFromPath GetEncoding
+syn keyword cfFunctionName contained GetException GetFileFromPath GetFunctionList
+syn keyword cfFunctionName contained GetGatewayHelper GetHttpRequestData GetHttpTimeString
+syn keyword cfFunctionName contained GetLocalHostIP
+syn keyword cfFunctionName contained GetLocale GetLocaleDisplayName GetMetaData GetMetricData
+syn keyword cfFunctionName contained GetPageContext GetProfileSections GetProfileString
+syn keyword cfFunctionName contained GetSOAPRequest GetSOAPRequestHeader GetSOAPResponse
+syn keyword cfFunctionName contained GetSOAPResponseHeader GetTempDirectory GetTempFile
+syn keyword cfFunctionName contained GetTickCount GetTimeZoneInfo GetToken
+syn keyword cfFunctionName contained HTMLCodeFormat HTMLEditFormat Hash Hour IIf IncrementValue
+syn keyword cfFunctionName contained InputBaseN Insert Int IsArray IsAuthenticated IsAuthorized
+syn keyword cfFunctionName contained IsBinary IsBoolean IsCustomFunction IsDate IsDebugMode
+syn keyword cfFunctionName contained IsDefined
+syn keyword cfFunctionName contained IsLeapYear IsLocalHost IsNumeric
+syn keyword cfFunctionName contained IsNumericDate IsObject IsProtected IsQuery IsSOAPRequest
+syn keyword cfFunctionName contained IsSimpleValue IsStruct IsUserInRole IsValid IsWDDX IsXML
+syn keyword cfFunctionName contained IsXmlAttribute IsXmlDoc IsXmlElem IsXmlNode IsXmlRoot
+syn keyword cfFunctionName contained JSStringFormat JavaCast LCase LJustify LSCurrencyFormat
+syn keyword cfFunctionName contained LSDateFormat LSEuroCurrencyFormat LSIsCurrency LSIsDate
+syn keyword cfFunctionName contained LSIsNumeric LSNumberFormat LSParseCurrency LSParseDateTime
+syn keyword cfFunctionName contained LSParseEuroCurrency LSParseNumber LSTimeFormat LTrim Left
+syn keyword cfFunctionName contained Len ListAppend ListChangeDelims ListContains
+syn keyword cfFunctionName contained ListContainsNoCase ListDeleteAt ListFind ListFindNoCase
+syn keyword cfFunctionName contained ListFirst ListGetAt ListInsertAt ListLast ListLen
+syn keyword cfFunctionName contained ListPrepend ListQualify ListRest ListSetAt ListSort
+syn keyword cfFunctionName contained ListToArray ListValueCount ListValueCountNoCase Log Log10
+syn keyword cfFunctionName contained Max Mid Min Minute Month MonthAsString Now NumberFormat
+syn keyword cfFunctionName contained ParagraphFormat ParseDateTime Pi
+syn keyword cfFunctionName contained PreserveSingleQuotes Quarter QueryAddColumn QueryAddRow
+syn keyword cfFunctionName contained QueryNew QuerySetCell QuotedValueList REFind REFindNoCase
+syn keyword cfFunctionName contained REReplace REReplaceNoCase RJustify RTrim Rand RandRange
+syn keyword cfFunctionName contained Randomize ReleaseComObject RemoveChars RepeatString Replace
+syn keyword cfFunctionName contained ReplaceList ReplaceNoCase Reverse Right Round Second
+syn keyword cfFunctionName contained SendGatewayMessage SetEncoding SetLocale SetProfileString
+syn keyword cfFunctionName contained SetVariable Sgn Sin SpanExcluding SpanIncluding Sqr StripCR
+syn keyword cfFunctionName contained StructAppend StructClear StructCopy StructCount StructDelete
+syn keyword cfFunctionName contained StructFind StructFindKey StructFindValue StructGet
+syn keyword cfFunctionName contained StructInsert StructIsEmpty StructKeyArray StructKeyExists
+syn keyword cfFunctionName contained StructKeyList StructNew StructSort StructUpdate Tan
+syn keyword cfFunctionName contained TimeFormat ToBase64 ToBinary ToScript ToString Trim UCase
+syn keyword cfFunctionName contained URLDecode URLEncodedFormat URLSessionFormat Val ValueList
+syn keyword cfFunctionName contained Week Wrap WriteOutput XmlChildPos XmlElemNew XmlFormat
+syn keyword cfFunctionName contained XmlGetNodeType XmlNew XmlParse XmlSearch XmlTransform
+syn keyword cfFunctionName contained XmlValidate Year YesNoFormat
+
+" Deprecated tags and functions.
+syn keyword cfDeprecated contained cfauthenticate cfimpersonate cfgraph cfgraphdata
+syn keyword cfDeprecated contained cfservlet cfservletparam cftextinput
+syn keyword cfDeprecated contained GetK2ServerDocCount GetK2ServerDocCountLimit GetTemplatePath
+syn keyword cfDeprecated contained IsK2ServerABroker IsK2ServerDocCountExceeded IsK2ServerOnline
+syn keyword cfDeprecated contained ParameterExists
syn cluster htmlTagNameCluster add=cfTagName
syn cluster htmlArgCluster add=cfArg,cfHashRegion,cfScope
@@ -169,7 +225,8 @@ syn cluster cfExpressionCluster contains=cfFunctionName,cfScope,@cfOperatorClust
" Evaluation; skip strings ( this helps with cases like nested IIf() )
syn region cfHashRegion start=+#+ skip=+"[^"]*"\|'[^']*'+ end=+#+ contains=@cfExpressionCluster,cfScriptParenError
-" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit evaluation) and has 'var'
+" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit
+" evaluation) and have 'var'
syn region cfSetRegion start="<cfset " start="<cfreturn " start="<cfelseif " start="<cfif " end='>' keepend contains=@cfExpressionCluster,cfSetLHSRegion,cfSetTagEnd,cfScriptType
syn region cfSetLHSRegion contained start="<cfreturn" start="<cfelseif" start="<cfif" start="<cfset" end=" " keepend contains=cfTagName,htmlTag
syn match cfSetTagEnd contained '>'
@@ -184,10 +241,10 @@ syn region cfScriptComment contained start="/\*" end="\*/" contains=cfCom
" in CF, quotes are escaped by doubling
syn region cfScriptStringD contained start=+"+ skip=+\\\\\|""+ end=+"+ extend contains=@htmlPreproc,cfHashRegion
syn region cfScriptStringS contained start=+'+ skip=+\\\\\|''+ end=+'+ extend contains=@htmlPreproc,cfHashRegion
-syn match cfScriptNumber contained "-\=\<\d\+L\=\>"
+syn match cfScriptNumber contained "\<\d\+\>"
syn keyword cfScriptConditional contained if else
syn keyword cfScriptRepeat contained while for in
-syn keyword cfScriptBranch contained break switch case try catch continue
+syn keyword cfScriptBranch contained break switch case default try catch continue
syn keyword cfScriptFunction contained function
syn keyword cfScriptType contained var
syn match cfScriptBraces contained "[{}]"
@@ -202,6 +259,16 @@ syn match cfScrParenError contained +)+
syn region cfscriptBlock matchgroup=NONE start="<cfscript>" end="<\/cfscript>"me=s-1 keepend contains=@cfScriptCluster,cfscriptTag,cfScrParenError
syn region cfscriptTag contained start='<cfscript' end='>' keepend contains=cfTagName,htmlTag
+" CFML
+syn cluster cfmlCluster contains=cfComment,@htmlTagNameCluster,@htmlPreproc,cfSetRegion,cfscriptBlock
+
+" cfquery = sql
+unlet b:current_syntax
+syn include @cfSql <sfile>:p:h/sql.vim
+unlet b:current_syntax
+syn region cfqueryTag contained start=+<cfquery+ end=+>+ keepend contains=cfTagName,htmlTag
+syn region cfSqlregion start=+<cfquery[^>]*>+ keepend end=+<\/cfquery>+me=s-1 matchgroup=NONE contains=@cfSql,cfComment,@htmlTagNameCluster,cfqueryTag
+
" Define the default highlighting.
if version >= 508 || !exists("did_cf_syn_inits")
if version < 508
@@ -241,8 +308,11 @@ if version >= 508 || !exists("did_cf_syn_inits")
HiLink cfScriptBraces Function
HiLink cfScriptFunction Function
HiLink cfScriptError Error
+ HiLink cfDeprecated Error
HiLink cfScrParenError cfScriptError
+ HiLink cfqueryTag htmlTag
+
delcommand HiLink
endif
diff --git a/runtime/syntax/conaryrecipe.vim b/runtime/syntax/conaryrecipe.vim
index b26cf6e35..f94fdd407 100644
--- a/runtime/syntax/conaryrecipe.vim
+++ b/runtime/syntax/conaryrecipe.vim
@@ -1,21 +1,39 @@
" Vim syntax file
" Language: Conary Recipe
" Maintainer: rPath Inc <http://www.rpath.com>
-" Updated: 2007-05-07
+" Updated: 2007-12-08
if exists("b:current_syntax")
finish
endif
runtime! syntax/python.vim
+
syn keyword conarySFunction mainDir addAction addSource addArchive addPatch
syn keyword conarySFunction addRedirect addSvnSnapshot addMercurialSnapshot
-syn keyword conarySFunction addCvsSnapshot
+syn keyword conarySFunction addCvsSnapshot addGitSnapshot addBzrSnapshot
-syn keyword conaryGFunction add addAll addNewGroup addReference createGroup
-syn keyword conaryGFunction addNewGroup startGroup remove removeComponents
-syn keyword conaryGFunction replace setByDefault setDefaultGroup
-syn keyword conaryGFunction setLabelPath addCopy setSearchPath
+syn keyword conaryGFunction add addAll addNewGroup addReference createGroup
+syn keyword conaryGFunction addNewGroup startGroup remove removeComponents
+syn keyword conaryGFunction replace setByDefault setDefaultGroup
+syn keyword conaryGFunction setLabelPath addCopy setSearchPath AddAllFlags
+syn keyword conaryGFunction GroupRecipe GroupReference TroveCacheWrapper
+syn keyword conaryGFunction TroveCache buildGroups findTrovesForGroups
+syn keyword conaryGFunction followRedirect processAddAllDirectives
+syn keyword conaryGFunction processOneAddAllDirective removeDifferences
+syn keyword conaryGFunction addTrovesToGroup addCopiedComponents
+syn keyword conaryGFunction findAllWeakTrovesToRemove checkForRedirects
+syn keyword conaryGFunction addPackagesForComponents getResolveSource
+syn keyword conaryGFunction resolveGroupDependencies checkGroupDependencies
+syn keyword conaryGFunction calcSizeAndCheckHashes findSourcesForGroup
+syn keyword conaryGFunction addPostInstallScript addPostRollbackScript
+syn keyword conaryGFunction addPostUpdateScript addPreUpdateScript
+syn keyword conaryGFunction addTrove moveComponents copyComponents
+syn keyword conaryGFunction removeItemsAlsoInNewGroup removeItemsAlsoInGroup
+syn keyword conaryGFunction addResolveSource iterReplaceSpecs
+syn keyword conaryGFunction setCompatibilityClass getLabelPath
+syn keyword conaryGFunction getResolveTroveSpecs getSearchFlavor
+syn keyword conaryGFunction getChildGroups getGroupMap
syn keyword conaryBFunction Run Automake Configure ManualConfigure
syn keyword conaryBFunction Make MakeParallelSubdir MakeInstall
@@ -25,7 +43,8 @@ syn keyword conaryBFunction Install Copy Move Symlink Link Remove Doc
syn keyword conaryBFunction Create MakeDirs disableParallelMake
syn keyword conaryBFunction ConsoleHelper Replace SGMLCatalogEntry
syn keyword conaryBFunction XInetdService XMLCatalogEntry TestSuite
-syn keyword conaryBFunction PythonSetup
+syn keyword conaryBFunction PythonSetup CMake Ant JavaCompile ClassPath
+syn keyword conaryBFunction JavaDoc IncludeLicense MakeFIFO
syn keyword conaryPFunction NonBinariesInBindirs FilesInMandir
syn keyword conaryPFunction ImproperlyShared CheckSonames CheckDestDir
@@ -45,10 +64,28 @@ syn keyword conaryPFunction Provides RequireChkconfig Requires TagHandler
syn keyword conaryPFunction TagDescription Transient User UtilizeGroup
syn keyword conaryPFunction WorldWritableExecutables UtilizeUser
syn keyword conaryPFunction WarnWritable Strip CheckDesktopFiles
+syn keyword conaryPFunction FixDirModes LinkType reportMissingBuildRequires
+syn keyword conaryPFunction reportErrors FixupManpagePaths FixObsoletePaths
+syn keyword conaryPFunction NonLSBPaths PythonEggs
+syn keyword conaryPFunction EnforcePythonBuildRequirements
+syn keyword conaryPFunction EnforceJavaBuildRequirements
+syn keyword conaryPFunction EnforceCILBuildRequirements
+syn keyword conaryPFunction EnforcePerlBuildRequirements
+syn keyword conaryPFunction EnforceFlagBuildRequirements
+syn keyword conaryPFunction FixupMultilibPaths ExecutableLibraries
+syn keyword conaryPFunction NormalizeLibrarySymlinks NormalizeCompression
+syn keyword conaryPFunction NormalizeManPages NormalizeInfoPages
+syn keyword conaryPFunction NormalizeInitscriptLocation
+syn keyword conaryPFunction NormalizeInitscriptContents
+syn keyword conaryPFunction NormalizeAppDefaults NormalizeInterpreterPaths
+syn keyword conaryPFunction NormalizePamConfig ReadableDocs
+syn keyword conaryPFunction WorldWriteableExecutables NormalizePkgConfig
+syn keyword conaryPFunction EtcConfig InstallBucket SupplementalGroup
+syn keyword conaryPFunction FixBuilddirSymlink RelativeSymlinks
" Most destdirPolicy aren't called from recipes, except for these
-syn keyword conaryPFunction AutoDoc RemoveNonPackageFiles TestSuiteFiles
-syn keyword conaryPFunction TestSuiteLinks
+syn keyword conaryPFunction AutoDoc RemoveNonPackageFiles TestSuiteFiles
+syn keyword conaryPFunction TestSuiteLinks
syn match conaryMacro "%(\w\+)[sd]" contained
syn match conaryBadMacro "%(\w*)[^sd]" contained " no final marker
@@ -56,8 +93,8 @@ syn keyword conaryArches contained x86 x86_64 alpha ia64 ppc ppc64 s390
syn keyword conaryArches contained sparc sparc64
syn keyword conarySubArches contained sse2 3dnow 3dnowext cmov i486 i586
syn keyword conarySubArches contained i686 mmx mmxext nx sse sse2
-syn keyword conaryBad RPM_BUILD_ROOT EtcConfig InstallBucket subDir subdir
-syn keyword conaryBad RPM_OPT_FLAGS
+syn keyword conaryBad RPM_BUILD_ROOT EtcConfig InstallBucket subDir
+syn keyword conaryBad RPM_OPT_FLAGS subdir
syn cluster conaryArchFlags contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
@@ -97,3 +134,4 @@ hi def link conaryKeywords Special
hi def link conaryUseFlag Typedef
let b:current_syntax = "conaryrecipe"
+
diff --git a/runtime/syntax/cuda.vim b/runtime/syntax/cuda.vim
new file mode 100644
index 000000000..77930e3fd
--- /dev/null
+++ b/runtime/syntax/cuda.vim
@@ -0,0 +1,72 @@
+" Vim syntax file
+" Language: CUDA (NVIDIA Compute Unified Device Architecture)
+" Maintainer: Timothy B. Terriberry <tterribe@users.sourceforge.net>
+" Last Change: 2007 Oct 13
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+
+" Read the C syntax to start with
+if version < 600
+ source <sfile>:p:h/c.vim
+else
+ runtime! syntax/c.vim
+endif
+
+" CUDA extentions
+syn keyword cudaStorageClass __device__ __global__ __host__
+syn keyword cudaStorageClass __constant__ __shared__
+syn keyword cudaStorageClass __inline__ __align__ __thread__
+"syn keyword cudaStorageClass __import__ __export__ __location__
+syn keyword cudaStructure template
+syn keyword cudaType char1 char2 char3 char4
+syn keyword cudaType uchar1 uchar2 uchar3 uchar4
+syn keyword cudaType short1 short2 short3 short4
+syn keyword cudaType ushort1 ushort2 ushort3 ushort4
+syn keyword cudaType int1 int2 int3 int4
+syn keyword cudaType uint1 uint2 uint3 uint4
+syn keyword cudaType long1 long2 long3 long4
+syn keyword cudaType ulong1 ulong2 ulong3 ulong4
+syn keyword cudaType float1 float2 float3 float4
+syn keyword cudaType ufloat1 ufloat2 ufloat3 ufloat4
+syn keyword cudaType dim3 texture textureReference
+syn keyword cudaType cudaError_t cudaDeviceProp cudaMemcpyKind
+syn keyword cudaType cudaArray cudaChannelFormatKind
+syn keyword cudaType cudaChannelFormatDesc cudaTextureAddressMode
+syn keyword cudaType cudaTextureFilterMode cudaTextureReadMode
+syn keyword cudaVariable gridDim blockIdx blockDim threadIdx
+syn keyword cudaConstant __DEVICE_EMULATION__
+syn keyword cudaConstant cudaSuccess
+" Many more errors are defined, but only these are listed in the maunal
+syn keyword cudaConstant cudaErrorMemoryAllocation
+syn keyword cudaConstant cudaErrorInvalidDevicePointer
+syn keyword cudaConstant cudaErrorInvalidSymbol
+syn keyword cudaConstant cudaErrorMixedDeviceExecution
+syn keyword cudaConstant cudaMemcpyHostToHost
+syn keyword cudaConstant cudaMemcpyHostToDevice
+syn keyword cudaConstant cudaMemcpyDeviceToHost
+syn keyword cudaConstant cudaMemcpyDeviceToDevice
+syn keyword cudaConstant cudaReadModeElementType
+syn keyword cudaConstant cudaReadModeNormalizedFloat
+syn keyword cudaConstant cudaFilterModePoint
+syn keyword cudaConstant cudaFilterModeLinear
+syn keyword cudaConstant cudaAddressModeClamp
+syn keyword cudaConstant cudaAddressModeWrap
+syn keyword cudaConstant cudaChannelFormatKindSigned
+syn keyword cudaConstant cudaChannelFormatKindUnsigned
+syn keyword cudaConstant cudaChannelFormatKindFloat
+
+hi def link cudaStorageClass StorageClass
+hi def link cudaStructure Structure
+hi def link cudaType Type
+hi def link cudaVariable Identifier
+hi def link cudaConstant Constant
+
+let b:current_syntax = "cuda"
+
+" vim: ts=8
diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim
index 24a9c9638..28fe85472 100644
--- a/runtime/syntax/debchangelog.vim
+++ b/runtime/syntax/debchangelog.vim
@@ -1,9 +1,10 @@
" Vim syntax file
" Language: Debian changelog files
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
-" Former Maintainer: Wichert Akkerman <wakkerma@debian.org>
-" Last Change: $LastChangedDate: 2006-04-16 21:50:31 -0400 (dom, 16 apr 2006) $
-" URL: http://svn.debian.org/wsvn/pkg-vim/trunk/runtime/syntax/debchangelog.vim?op=file&rev=0&sc=0
+" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
+" Wichert Akkerman <wakkerma@debian.org>
+" Last Change: 2008-01-16
+" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/syntax/debchangelog.vim;hb=debian
" Standard syntax initialization
if version < 600
@@ -18,16 +19,17 @@ syn case ignore
" Define some common expressions we can use later on
syn match debchangelogName contained "^[[:alpha:]][[:alnum:].+-]\+ "
syn match debchangelogUrgency contained "; urgency=\(low\|medium\|high\|critical\|emergency\)\( \S.*\)\="
-syn match debchangelogTarget contained "\( stable\| frozen\| unstable\| testing-proposed-updates\| experimental\| sarge-backports\| sarge-volatile\| stable-security\| testing-security\)\+"
+syn match debchangelogTarget contained "\( \(old\)\=stable\| frozen\| unstable\| testing-proposed-updates\| experimental\| \%(sarge\|etch\|lenny\)-\%(backports\|-volatile\)\| \(old\)\=stable-security\| testing-security\| \(dapper\|edgy\|feisty\|gutsy\|hardy\)\(-\(security\|proposed\|updates\|backports\|commercial\|partner\)\)\?\)\+"
syn match debchangelogVersion contained "(.\{-})"
-syn match debchangelogCloses contained "closes:\s*\(bug\)\=#\=\s\=\d\+\(,\s*\(bug\)\=#\=\s\=\d\+\)*"
+syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
+syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
syn match debchangelogEmail contained "[_=[:alnum:].+-]\+@[[:alnum:]./\-]\+"
syn match debchangelogEmail contained "<.\{-}>"
" Define the entries that make up the changelog
syn region debchangelogHeader start="^[^ ]" end="$" contains=debchangelogName,debchangelogUrgency,debchangelogTarget,debchangelogVersion oneline
syn region debchangelogFooter start="^ [^ ]" end="$" contains=debchangelogEmail oneline
-syn region debchangelogEntry start="^ " end="$" contains=debchangelogCloses oneline
+syn region debchangelogEntry start="^ " end="$" contains=debchangelogCloses,debchangelogLP oneline
" Associate our matches and regions with pretty colours
if version >= 508 || !exists("did_debchangelog_syn_inits")
@@ -42,6 +44,7 @@ if version >= 508 || !exists("did_debchangelog_syn_inits")
HiLink debchangelogFooter Identifier
HiLink debchangelogEntry Normal
HiLink debchangelogCloses Statement
+ HiLink debchangelogLP Statement
HiLink debchangelogUrgency Identifier
HiLink debchangelogName Comment
HiLink debchangelogVersion Identifier
diff --git a/runtime/syntax/elinks.vim b/runtime/syntax/elinks.vim
index 5b3a3f1af..b4d9e02ef 100644
--- a/runtime/syntax/elinks.vim
+++ b/runtime/syntax/elinks.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: elinks(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,_,-
+setlocal iskeyword+=-
syn keyword elinksTodo contained TODO FIXME XXX NOTE
diff --git a/runtime/syntax/forth.vim b/runtime/syntax/forth.vim
index 2d1441c0b..a61f7db3f 100644
--- a/runtime/syntax/forth.vim
+++ b/runtime/syntax/forth.vim
@@ -1,9 +1,9 @@
" Vim syntax file
" Language: FORTH
" Maintainer: Christian V. J. Brüssow <cvjb@cvjb.de>
-" Last Change: Di 06 Jul 2004 18:40:33 CEST
+" Last Change: Sa 14 Jul 2007 21:39:53 CEST
" Filenames: *.fs,*.ft
-" URL: http://www.cvjb.de/comp/vim/forth.vim
+" URL: http://www.cvjb.de/comp/vim/forth.vim
" $Id$
@@ -13,30 +13,48 @@
" Many Thanks to...
"
-" 2004-07-06:
-" Changed "syn sync ccomment maxlines=200" line: splitted it into two separate
-" lines.
+" 2007-07-11:
+" Benjamin Krill <ben at codiert dot org> send me a patch
+" to highlight space errors.
+" You can toggle this feature on through setting the
+" flag forth_space_errors in you vimrc. If you have switched it on,
+" you can turn off highlighting of trailing spaces in comments by
+" setting forth_no_trail_space_error in your vimrc. If you do not want
+" the highlighting of a tabulator following a space in comments, you
+" can turn this off by setting forth_no_tab_space_error.
"
+" 2006-05-25:
+" Bill McCarthy <WJMc@...> and Ilya Sher <ilya-vim@...>
+" Who found a bug in the ccomment line in 2004!!!
+" I'm really very sorry, that it has taken two years to fix that
+" in the offical version of this file. Shame on me.
+" I think my face will be red the next ten years...
+"
+" 2006-05-21:
+" Thomas E. Vaughan <tevaugha at ball dot com> send me a patch
+" for the parenthesis comment word, so words with a trailing
+" parenthesis will not start the highlighting for such comments.
+"
" 2003-05-10:
" Andrew Gaul <andrew at gaul.org> send me a patch for
" forthOperators.
"
" 2003-04-03:
-" Ron Aaron <ronaharon at yahoo.com> made updates for an
+" Ron Aaron <ron at ronware dot org> made updates for an
" improved Win32Forth support.
"
" 2002-04-22:
-" Charles Shattuck <charley at forth.org> helped me to settle up with the
+" Charles Shattuck <charley at forth dot org> helped me to settle up with the
" binary and hex number highlighting.
"
" 2002-04-20:
-" Charles Shattuck <charley at forth.org> send me some code for correctly
+" Charles Shattuck <charley at forth dot org> send me some code for correctly
" highlighting char and [char] followed by an opening paren. He also added
" some words for operators, conditionals, and definitions; and added the
" highlighting for s" and c".
"
" 2000-03-28:
-" John Providenza <john at probo.com> made improvements for the
+" John Providenza <john at probo dot com> made improvements for the
" highlighting of strings, and added the code for highlighting hex numbers.
"
@@ -68,6 +86,15 @@ else
set iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
endif
+" when wanted, highlight trailing white space
+if exists("forth_space_errors")
+ if !exists("forth_no_trail_space_error")
+ syn match forthSpaceError display excludenl "\s\+$"
+ endif
+ if !exists("forth_no_tab_space_error")
+ syn match forthSpaceError display " \+\t"me=e-1
+ endif
+endif
" Keywords
@@ -177,12 +204,11 @@ syn region forthString start=+s\"+ end=+"+ end=+$+
syn region forthString start=+c\"+ end=+"+ end=+$+
" Comments
-syn match forthComment '\\\s.*$' contains=forthTodo
-syn region forthComment start='\\S\s' end='.*' contains=forthTodo
-syn match forthComment '\.(\s[^)]*)' contains=forthTodo
-syn region forthComment start='(\s' skip='\\)' end=')' contains=forthTodo
-syn region forthComment start='/\*' end='\*/' contains=forthTodo
-"syn match forthComment '(\s[^\-]*\-\-[^\-]*)' contains=forthTodo
+syn match forthComment '\\\s.*$' contains=forthTodo,forthSpaceError
+syn region forthComment start='\\S\s' end='.*' contains=forthTodo,forthSpaceError
+syn match forthComment '\.(\s[^)]*)' contains=forthTodo,forthSpaceError
+syn region forthComment start='\s(\s' skip='\\)' end=')' contains=forthTodo,forthSpaceError
+syn region forthComment start='/\*' end='\*/' contains=forthTodo,forthSpaceError
" Include files
syn match forthInclude '^INCLUDE\s\+\k\+'
@@ -194,10 +220,10 @@ syn match forthInclude '^needs\s\+'
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_forth_syn_inits")
if version < 508
- let did_forth_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
+ let did_forth_syn_inits = 1
+ command -nargs=+ HiLink hi link <args>
else
- command -nargs=+ HiLink hi def link <args>
+ command -nargs=+ HiLink hi def link <args>
endif
" The default methods for highlighting. Can be overriden later.
@@ -231,6 +257,7 @@ if version >= 508 || !exists("did_forth_syn_inits")
HiLink forthObjectDef Define
HiLink forthEndOfObjectDef Define
HiLink forthInclude Include
+ HiLink forthSpaceError Error
delcommand HiLink
endif
diff --git a/runtime/syntax/gitrebase.vim b/runtime/syntax/gitrebase.vim
new file mode 100644
index 000000000..080252fd3
--- /dev/null
+++ b/runtime/syntax/gitrebase.vim
@@ -0,0 +1,31 @@
+" Vim syntax file
+" Language: git rebase --interactive
+" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
+" Filenames: git-rebase-todo
+" Last Change: 2008 Apr 16
+
+if exists("b:current_syntax")
+ finish
+endif
+
+syn case match
+
+syn match gitrebaseHash "\v<\x{7,40}>" contained
+syn match gitrebaseCommit "\v<\x{7,40}>" nextgroup=gitrebaseSummary skipwhite
+syn match gitrebasePick "\v^p%(ick)=>" nextgroup=gitrebaseCommit skipwhite
+syn match gitrebaseEdit "\v^e%(dit)=>" nextgroup=gitrebaseCommit skipwhite
+syn match gitrebaseSquash "\v^s%(quash)=>" nextgroup=gitrebaseCommit skipwhite
+syn match gitrebaseSummary ".*" contains=gitrebaseHash contained
+syn match gitrebaseComment "^#.*" contains=gitrebaseHash
+syn match gitrebaseSquashError "\v%^s%(quash)=>" nextgroup=gitrebaseCommit skipwhite
+
+hi def link gitrebaseCommit gitrebaseHash
+hi def link gitrebaseHash Identifier
+hi def link gitrebasePick Statement
+hi def link gitrebaseEdit PreProc
+hi def link gitrebaseSquash Type
+hi def link gitrebaseSummary String
+hi def link gitrebaseComment Comment
+hi def link gitrebaseSquashError Error
+
+let b:current_syntax = "gitrebase"
diff --git a/runtime/syntax/gpg.vim b/runtime/syntax/gpg.vim
index b7307b9d9..0f73b17a7 100644
--- a/runtime/syntax/gpg.vim
+++ b/runtime/syntax/gpg.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: gpg(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-05-06
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,-
+setlocal iskeyword+=-
syn keyword gpgTodo contained FIXME TODO XXX NOTE
diff --git a/runtime/syntax/lftp.vim b/runtime/syntax/lftp.vim
index 7de5a560e..6a8e4f9e1 100644
--- a/runtime/syntax/lftp.vim
+++ b/runtime/syntax/lftp.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: lftp(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,-
+setlocal iskeyword+=-
syn region lftpComment display oneline start='#' end='$'
\ contains=lftpTodo,@Spell
diff --git a/runtime/syntax/mmp.vim b/runtime/syntax/mmp.vim
new file mode 100644
index 000000000..0117e7792
--- /dev/null
+++ b/runtime/syntax/mmp.vim
@@ -0,0 +1,53 @@
+" Vim syntax file
+" Language: Symbian meta-makefile definition (MMP)
+" Maintainer: Ron Aaron <ron@ronware.org>
+" Last Change: 2007/11/07
+" URL: http://ronware.org/wiki/vim/mmp
+" Filetypes: *.mmp
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+
+syn case ignore
+
+syn match mmpComment "//.*"
+syn region mmpComment start="/\*" end="\*\/"
+
+syn keyword mmpKeyword aif asspabi assplibrary aaspexports baseaddress
+syn keyword mmpKeyword debuglibrary deffile document epocheapsize
+syn keyword mmpKeyword epocprocesspriority epocstacksize exportunfrozen
+syn keyword mmpStorage lang library linkas macro nostrictdef option
+syn keyword mmpStorage resource source sourcepath srcdbg startbitmap
+syn keyword mmpStorage start end staticlibrary strictdepend systeminclude
+syn keyword mmpStorage systemresource target targettype targetpath uid
+syn keyword mmpStorage userinclude win32_library
+
+syn match mmpIfdef "\#\(include\|ifdef\|ifndef\|if\|endif\|else\|elif\)"
+
+syn match mmpNumber "\d+"
+syn match mmpNumber "0x\x\+"
+
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if !exists("did_mmp_syntax_inits")
+ let did_mmp_syntax_inits=1
+
+ hi def link mmpComment Comment
+ hi def link mmpKeyword Keyword
+ hi def link mmpStorage StorageClass
+ hi def link mmpString String
+ hi def link mmpNumber Number
+ hi def link mmpOrdinal Operator
+ hi def link mmpIfdef PreCondit
+endif
+
+let b:current_syntax = "mmp"
+
+" vim: ts=8
diff --git a/runtime/syntax/objcpp.vim b/runtime/syntax/objcpp.vim
index 5ce380cc7..e80eed900 100644
--- a/runtime/syntax/objcpp.vim
+++ b/runtime/syntax/objcpp.vim
@@ -1,7 +1,8 @@
" Vim syntax file
-" Language: ObjC++
-" Maintainer: Anthony Hodsdon <ahodsdon@fastmail.fm>
-" Last change: 2003 Apr 25
+" Language: Objective C++
+" Maintainer: Kazunobu Kuriyama <kazunobu.kuriyama@nifty.com>
+" Ex-Maintainer: Anthony Hodsdon <ahodsdon@fastmail.fm>
+" Last Change: 2007 Oct 29
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -14,17 +15,13 @@ endif
" Read in C++ and ObjC syntax files
if version < 600
so <sfile>:p:h/cpp.vim
- so <sflie>:p:h/objc.vim
+ so <sfile>:p:h/objc.vim
else
runtime! syntax/cpp.vim
unlet b:current_syntax
runtime! syntax/objc.vim
endif
-" Note that we already have a region for method calls ( [objc_class method] )
-" by way of cBracket.
-syn region objCFunc start="^\s*[-+]" end="$" contains=ALLBUT,cErrInParen,cErrInBracket
-
syn keyword objCppNonStructure class template namespace transparent contained
syn keyword objCppNonStatement new delete friend using transparent contained
diff --git a/runtime/syntax/php.vim b/runtime/syntax/php.vim
index 4bcff1341..4e6b95ca9 100644
--- a/runtime/syntax/php.vim
+++ b/runtime/syntax/php.vim
@@ -83,7 +83,7 @@ if version < 600
endif
so <sfile>:p:h/html.vim
else
- runtime syntax/html.vim
+ runtime! syntax/html.vim
unlet b:current_syntax
endif
diff --git a/runtime/syntax/pinfo.vim b/runtime/syntax/pinfo.vim
index 57d37d471..bf4126e59 100644
--- a/runtime/syntax/pinfo.vim
+++ b/runtime/syntax/pinfo.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: pinfo(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,_,-
+setlocal iskeyword+=-
syn case ignore
diff --git a/runtime/syntax/prolog.vim b/runtime/syntax/prolog.vim
index 50105fa25..68b08bebc 100644
--- a/runtime/syntax/prolog.vim
+++ b/runtime/syntax/prolog.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: PROLOG
" Maintainers: Thomas Koehler <jean-luc@picard.franken.de>
-" Last Change: 2005 Mar 14
+" Last Change: 2008 April 5
" URL: http://gott-gehabt/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/prolog.vim
" There are two sets of highlighting in here:
@@ -26,9 +26,9 @@ syn match prologComment +%.*+
syn keyword prologKeyword module meta_predicate multifile dynamic
syn match prologCharCode +0'\\\=.+
-syn region prologString start=+"+ skip=+\\"+ end=+"+
-syn region prologAtom start=+'+ skip=+\\'+ end=+'+
-syn region prologClauseHead start=+^[a-z][^(]*(+ skip=+\.[^ ]+ end=+:-\|\.$\|\.[ ]\|-->+
+syn region prologString start=+"+ skip=+\\\\\|\\"+ end=+"+
+syn region prologAtom start=+'+ skip=+\\\\\|\\'+ end=+'+
+syn region prologClauseHead start=+^[a-z][^(]*(+ skip=+\.[^ ]+ end=+:-\|\.$\|\.[ ]\|-->+ contains=prologComment,prologCComment,prologString
if !exists("prolog_highlighting_clean")
diff --git a/runtime/syntax/promela.vim b/runtime/syntax/promela.vim
new file mode 100644
index 000000000..9c8a87cfd
--- /dev/null
+++ b/runtime/syntax/promela.vim
@@ -0,0 +1,60 @@
+" Vim syntax file
+" Language: ProMeLa
+" Maintainer: Maurizio Tranchero <maurizio.tranchero@polito.it> - <maurizio.tranchero@gmail.com>
+" First Release: Mon Oct 16 08:49:46 CEST 2006
+" Last Change: Sat May 16 12:20:43 CEST 2007
+" Version: 0.2
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+
+" case is significant
+" syn case ignore
+" ProMeLa Keywords
+syn keyword promelaStatement proctype if else while chan do od fi break goto unless
+syn keyword promelaStatement active assert label atomic
+syn keyword promelaFunctions skip timeout run
+" check what it is the following
+" ProMeLa Types
+syn keyword promelaType bit bool byte short int
+" ProMeLa Regions
+syn region promelaComment start="\/\/" end="$" keepend
+syn region promelaString start="\"" end="\""
+" syn region promelaComment start="//" end="$" contains=ALL
+" syn region promelaComment start="/\*" end="\*/" contains=ALL
+" ProMeLa Comment
+syn match promelaComment "\/.*$"
+syn match promelaComment "/\*.*\*/"
+" Operators and special characters
+syn match promelaOperator "!"
+syn match promelaOperator "?"
+syn match promelaOperator "->"
+syn match promelaOperator "="
+syn match promelaOperator "+"
+syn match promelaOperator "*"
+syn match promelaOperator "/"
+syn match promelaOperator "-"
+syn match promelaOperator "<"
+syn match promelaOperator ">"
+syn match promelaOperator "<="
+syn match promelaOperator ">="
+syn match promelaSpecial "\["
+syn match promelaSpecial "\]"
+syn match promelaSpecial ";"
+syn match promelaSpecial "::"
+
+" Class Linking
+hi def link promelaStatement Statement
+hi def link promelaType Type
+hi def link promelaComment Comment
+hi def link promelaOperator Type
+hi def link promelaSpecial Special
+hi def link promelaFunctions Special
+hi def link promelaString String
+
+let b:current_syntax = "promela"
diff --git a/runtime/syntax/reva.vim b/runtime/syntax/reva.vim
new file mode 100644
index 000000000..7e11ffe2d
--- /dev/null
+++ b/runtime/syntax/reva.vim
@@ -0,0 +1,191 @@
+" Vim syntax file
+" Language: Reva Forth
+" Version: 7.1
+" Last Change: 2008/01/11
+" Maintainer: Ron Aaron <ron@ronware.org>
+" URL: http://ronware.org/reva/
+" Filetypes: *.rf *.frt
+" NOTE: You should also have the ftplugin/reva.vim file to set 'isk'
+
+" For version 5.x: Clear all syntax items and don't load
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+ syntax clear
+ echo "Reva syntax file requires version 6.0 or later of vim!"
+ finish
+elseif exists("b:current_syntax")
+ finish
+endif
+
+syn clear
+
+" Synchronization method
+syn sync ccomment
+syn sync maxlines=100
+
+
+syn case ignore
+" Some special, non-FORTH keywords
+"syn keyword revaTodo contained todo fixme bugbug todo: bugbug: note:
+syn match revaTodo contained '\(todo\|fixme\|bugbug\|note\)[:]*'
+syn match revaTodo contained 'copyright\(\s(c)\)\=\(\s[0-9]\{2,4}\)\='
+
+syn match revaHelpDesc '\S.*' contained
+syn match revaHelpStuff '\<\(def\|stack\|ctx\|ver\|os\|related\):\s.*'
+syn region revaHelpStuff start='\<desc:\>' end='^\S' contains=revaHelpDesc
+syn region revaEOF start='\<|||\>' end='{$}' contains=revaHelpStuff
+
+
+syn case match
+" basic mathematical and logical operators
+syn keyword revaoperators + - * / mod /mod negate abs min max umin umax
+syn keyword revaoperators and or xor not invert 1+ 1-
+syn keyword revaoperators m+ */ */mod m* um* m*/ um/mod fm/mod sm/rem
+syn keyword revaoperators d+ d- dnegate dabs dmin dmax > < = >> << u< <>
+
+
+" stack manipulations
+syn keyword revastack drop nip dup over tuck swap rot -rot ?dup pick roll
+syn keyword revastack 2drop 2nip 2dup 2over 2swap 2rot 3drop
+syn keyword revastack >r r> r@ rdrop
+" syn keyword revastack sp@ sp! rp@ rp!
+
+" address operations
+syn keyword revamemory @ ! +! c@ c! 2@ 2! align aligned allot allocate here free resize
+syn keyword revaadrarith chars char+ cells cell+ cell cell- 2cell+ 2cell- 3cell+ 4cell+
+syn keyword revamemblks move fill
+
+" conditionals
+syn keyword revacond if else then =if >if <if <>if if0 ;; catch throw
+
+" iterations
+syn keyword revaloop while repeat until again
+syn keyword revaloop do loop i j leave unloop skip more
+
+" new words
+syn match revaColonDef '\<noname:\|\<:\s+' contains=revaComment
+syn keyword revaEndOfColonDef ; ;inline
+syn keyword revadefine constant constant, variable create variable,
+syn keyword revadefine user value to +to defer! defer@ defer is does> immediate
+syn keyword revadefine compile literal ' [']
+
+" Built in words
+com! -nargs=+ Builtin syn keyword revaBuiltin <args>
+Builtin execute ahead interp bye >body here pad words make
+Builtin accept close cr creat delete ekey emit fsize ioerr key?
+Builtin mtime open/r open/rw read rename seek space spaces stat
+Builtin tell type type_ write (seek) (argv) (save) 0; 0drop;
+Builtin >class >lz >name >xt alias alias: appname argc asciiz, asciizl,
+Builtin body> clamp depth disassemble findprev fnvhash getenv here,
+Builtin iterate last! last@ later link lz> lzmax os parse/ peek
+Builtin peek-n pop prior push put rp@ rpick save setenv slurp
+Builtin stack-empty? stack-iterate stack-size stack: THROW_BADFUNC
+Builtin THROW_BADLIB THROW_GENERIC used xt>size z,
+Builtin +lplace +place -chop /char /string bounds c+lplace c+place
+Builtin chop cmp cmpi count lc lcount lplace place quote rsplit search split
+Builtin zcount zt \\char
+Builtin chdir g32 k32 u32 getcwd getpid hinst osname stdin stdout
+Builtin (-lib) (bye) (call) (else) (find) (func) (here) (if (lib) (s0) (s^)
+Builtin (to~) (while) >in >rel ?literal appstart cold compiling? context? d0 default_class
+Builtin defer? dict dolstr dostr find-word h0 if) interp isa onexit
+Builtin onstartup pdoes pop>ebx prompt rel> rp0 s0 src srcstr state str0 then,> then> tib
+Builtin tp vector vector! word? xt? .ver revaver revaver# && '' 'constant 'context
+Builtin 'create 'defer 'does 'forth 'inline 'macro 'macront 'notail 'value 'variable
+Builtin (.r) (context) (create) (header) (hide) (inline) (p.r) (words~) (xfind)
+Builtin ++ -- , -2drop -2nip -link -swap . .2x .classes .contexts .funcs .libs .needs .r
+Builtin .rs .x 00; 0do 0if 1, 2, 3, 2* 2/ 2constant 2variable 3dup 4dup ;then >base >defer
+Builtin >rr ? ?do @execute @rem appdir argv as back base base! between chain cleanup-libs
+Builtin cmove> context?? ctrl-c ctx>name data: defer: defer@def dictgone do_cr eleave
+Builtin endcase endof eval exception exec false find func: header heapgone help help/
+Builtin hex# hide inline{ last lastxt lib libdir literal, makeexename mnotail ms ms@
+Builtin newclass noop nosavedict notail nul of off on p: padchar parse parseln
+Builtin parsews rangeof rdepth remains reset reva revaused rol8 rr> scratch setclass sp
+Builtin strof super> temp time&date true turnkey? undo vfunc: w! w@
+Builtin xchg xchg2 xfind xt>name xwords { {{ }} } _+ _1+ _1- pathsep case \||
+" p[ [''] [ [']
+
+
+" debugging
+syn keyword revadebug .s dump see
+
+" basic character operations
+" syn keyword revaCharOps (.) CHAR EXPECT FIND WORD TYPE -TRAILING EMIT KEY
+" syn keyword revaCharOps KEY? TIB CR
+" syn match revaCharOps '\<char\s\S\s'
+" syn match revaCharOps '\<\[char\]\s\S\s'
+" syn region revaCharOps start=+."\s+ skip=+\\"+ end=+"+
+
+" char-number conversion
+syn keyword revaconversion s>d >digit digit> >single >double >number >float
+
+" contexts
+syn keyword revavocs forth macro inline
+syn keyword revavocs context:
+syn match revavocs /\<\~[^~ ]*/
+syn match revavocs /[^~ ]*\~\>/
+
+" numbers
+syn keyword revamath decimal hex base binary octal
+syn match revainteger '\<-\=[0-9.]*[0-9.]\+\>'
+" recognize hex and binary numbers, the '$' and '%' notation is for greva
+syn match revainteger '\<\$\x*\x\+\>' " *1* --- dont't mess
+syn match revainteger '\<\x*\d\x*\>' " *2* --- this order!
+syn match revainteger '\<%[0-1]*[0-1]\+\>'
+syn match revainteger "\<'.\>"
+
+" Strings
+" syn region revaString start=+\.\?\"+ end=+"+ end=+$+
+syn region revaString start=/"/ skip=/\\"/ end=/"/
+
+" Comments
+syn region revaComment start='\\S\s' end='.*' contains=revaTodo
+syn match revaComment '\.(\s[^)]\{-})' contains=revaTodo
+syn region revaComment start='(\s' skip='\\)' end=')' contains=revaTodo
+syn match revaComment '(\s[^\-]*\-\-[^\-]\{-})' contains=revaTodo
+syn match revaComment '\<|\s.*$' contains=revaTodo
+syn match revaColonDef '\<:m\?\s*[^ \t]\+\>' contains=revaComment
+
+" Include files
+syn match revaInclude '\<\(include\|needs\)\s\+\S\+'
+
+
+" Define the default highlighting.
+if !exists("did_reva_syntax_inits")
+ let did_reva_syntax_inits=1
+ " The default methods for highlighting. Can be overriden later.
+ hi def link revaEOF cIf0
+ hi def link revaHelpStuff special
+ hi def link revaHelpDesc Comment
+ hi def link revaTodo Todo
+ hi def link revaOperators Operator
+ hi def link revaMath Number
+ hi def link revaInteger Number
+ hi def link revaStack Special
+ hi def link revaFStack Special
+ hi def link revaSP Special
+ hi def link revaMemory Operator
+ hi def link revaAdrArith Function
+ hi def link revaMemBlks Function
+ hi def link revaCond Conditional
+ hi def link revaLoop Repeat
+ hi def link revaColonDef Define
+ hi def link revaEndOfColonDef Define
+ hi def link revaDefine Define
+ hi def link revaDebug Debug
+ hi def link revaCharOps Character
+ hi def link revaConversion String
+ hi def link revaForth Statement
+ hi def link revaVocs Statement
+ hi def link revaString String
+ hi def link revaComment Comment
+ hi def link revaClassDef Define
+ hi def link revaEndOfClassDef Define
+ hi def link revaObjectDef Define
+ hi def link revaEndOfObjectDef Define
+ hi def link revaInclude Include
+ hi def link revaBuiltin Keyword
+endif
+
+let b:current_syntax = "reva"
+
+" vim: ts=8:sw=4:nocindent:smartindent:
diff --git a/runtime/syntax/rnc.vim b/runtime/syntax/rnc.vim
index d510f0476..8436c8875 100644
--- a/runtime/syntax/rnc.vim
+++ b/runtime/syntax/rnc.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Relax NG compact syntax
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
@@ -10,7 +10,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-setlocal iskeyword=@,48-57,_,-,.
+setlocal iskeyword+=-,.
syn keyword rncTodo contained TODO FIXME XXX NOTE
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
index ce98ac6d7..bddfe1c7e 100644
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
-" Last Change: Dec 12, 2006
-" Version: 89
+" Last Change: Apr 24, 2008
+" Version: 90
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Using the following VIM variables: {{{1
@@ -206,6 +206,7 @@ endif
syn keyword shCaseIn contained skipwhite skipnl in nextgroup=shCase,shCaseStart,shCaseBar,shComment,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote
if exists("b:is_bash")
syn region shCaseExSingleQuote matchgroup=shOperator start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial skipwhite skipnl nextgroup=shCaseBar contained
+ syn region shCaseExDoubleQuote matchgroup=shOperator start=+\$"+ skip=+\\\\\|\\.+ end=+"+ contains=shStringSpecial,shSpecial,shCommandSub,shDeref skipwhite skipnl nextgroup=shCaseBar contained
else
syn region shCaseExSingleQuote matchgroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial skipwhite skipnl nextgroup=shCaseBar contained
endif
@@ -260,6 +261,7 @@ if exists("b:is_bash")
endif
if exists("b:is_bash")
syn region shExSingleQuote matchgroup=shOperator start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial
+ syn region shExDoubleQuote matchgroup=shOperator start=+\$"+ skip=+\\\\\|\\.+ end=+"+ contains=shStringSpecial,shSpecial,shCommandSub,shDeref
else
syn region shExSingleQuote matchGroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial
endif
@@ -465,6 +467,7 @@ hi def link shCaseCommandSub shCommandSub
hi def link shCaseDoubleQuote shDoubleQuote
hi def link shCaseIn shConditional
hi def link shCaseSingleQuote shSingleQuote
+hi def link shCaseDoubleQuote shSingleQuote
hi def link shCaseStart shConditional
hi def link shCmdSubRegion shShellVariables
hi def link shColon shStatement
@@ -480,6 +483,7 @@ hi def link shDoubleQuote shString
hi def link shEcho shString
hi def link shEmbeddedEcho shString
hi def link shExSingleQuote shSingleQuote
+hi def link shExDoubleQuote shSingleQuote
hi def link shFunctionStart Delimiter
hi def link shHereDoc shString
hi def link shHerePayload shHereDoc
diff --git a/runtime/syntax/tex.vim b/runtime/syntax/tex.vim
index 442cdf232..1393a5826 100644
--- a/runtime/syntax/tex.vim
+++ b/runtime/syntax/tex.vim
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: TeX
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrchipO@ScampbellPfamily.AbizM>
-" Last Change: Feb 27, 2007
-" Version: 37
+" Last Change: Jun 03, 2008
+" Version: 41
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Notes: {{{1
@@ -261,27 +261,27 @@ syn match texSpaceCodeChar "`\\\=.\(\^.\)\==\(\d\|\"\x\{1,6}\|`.\)" contained
" Sections, subsections, etc: {{{1
if g:tex_fold_enabled && has("folding")
- syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
- syn region texPartZone matchgroup=texSection start='\\part\>' end='\n\ze\s*\\part\>' fold contains=@texFoldGroup,@texPartGroup,@Spell
- syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\n\ze\s*\\chapter\>' fold contains=@texFoldGroup,@texChapterGroup,@Spell
- syn region texSectionZone matchgroup=texSection start='\\section\>' end='\n\ze\s*\\section\>' fold contains=@texFoldGroup,@texSectionGroup,@Spell
- syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\n\ze\s*\\subsection\>' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
- syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\n\ze\s*\\subsubsection\>' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
- syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\n\ze\s*\\paragraph\>' fold contains=@texFoldGroup,@texParaGroup,@Spell
- syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\n\ze\s*\\subparagraph\>' fold contains=@texFoldGroup,@Spell
- syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell
- syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell
+ syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell
+ syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup,@Spell
+ syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup,@Spell
+ syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup,@Spell
+ syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell
+ syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
+ syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup,@Spell
+ syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@Spell
+ syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell
+ syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell
else
- syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
- syn region texPartZone matchgroup=texSection start='\\part\>' end='\n\ze\s*\\part\>' contains=@texFoldGroup,@texPartGroup,@Spell
- syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\n\ze\s*\\chapter\>' contains=@texFoldGroup,@texChapterGroup,@Spell
- syn region texSectionZone matchgroup=texSection start='\\section\>' end='\n\ze\s*\\section\>' contains=@texFoldGroup,@texSectionGroup,@Spell
- syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\n\ze\s*\\subsection\>' contains=@texFoldGroup,@texSubSectionGroup,@Spell
- syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\n\ze\s*\\subsubsection\>' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
- syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\n\ze\s*\\paragraph\>' contains=@texFoldGroup,@texParaGroup,@Spell
- syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\n\ze\s*\\subparagraph\>' contains=@texFoldGroup,@Spell
- syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
- syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
+ syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell
+ syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell
+ syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell
+ syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell
+ syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell
+ syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell
+ syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell
+ syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell
+ syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell
+ syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell
endif
" Bad Math (mismatched): {{{1
@@ -300,8 +300,13 @@ if !exists("tex_no_math")
fun! TexNewMathZone(sfx,mathzone,starform)
let grpname = "texMathZone".a:sfx
let syncname = "texSyncMathZone".a:sfx
+ if g:tex_fold_enabled
+ let foldcmd= " fold"
+ else
+ let foldcmd= ""
+ endif
exe "syn cluster texMathZones add=".grpname
- exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\s*}'."'".' keepend contains=@texMathZoneGroup'
+ exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
exe 'HiLink '.grpname.' texMath'
@@ -309,7 +314,7 @@ if !exists("tex_no_math")
let grpname = "texMathZone".a:sfx.'S'
let syncname = "texSyncMathZone".a:sfx.'S'
exe "syn cluster texMathZones add=".grpname
- exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\*\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\*\s*}'."'".' keepend contains=@texMathZoneGroup'
+ exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\*\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\*\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"'
exe 'HiLink '.grpname.' texMath'
@@ -369,7 +374,11 @@ syn match texSpecialChar "\^\^[0-9a-f]\{2}\|\^\^\S"
" Comments: {{{1
" Normal TeX LaTeX : %....
" Documented TeX Format: ^^A... -and- leading %s (only)
-syn cluster texCommentGroup contains=texTodo,@Spell
+if !exists("g:tex_comment_nospell") || !g:tex_comment_nospell
+ syn cluster texCommentGroup contains=texTodo,@Spell
+else
+ syn cluster texCommentGroup contains=texTodo,@NoSpell
+endif
syn case ignore
syn keyword texTodo contained combak fixme todo xxx
syn case match
@@ -501,6 +510,7 @@ if did_tex_syntax_inits == 1
HiLink texMathZoneW texMath
HiLink texMathZoneX texMath
HiLink texMathZoneY texMath
+ HiLink texMathZoneV texMath
HiLink texMathZoneZ texMath
endif
HiLink texSectionMarker texCmdName
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index 56be4324d..bbf31f7a7 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.1 script
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: May 11, 2007
-" Version: 7.1-67
+" Last Change: Apr 08, 2008
+" Version: 7.1-77
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -16,20 +16,35 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
-syn keyword vimCommand contained ab[breviate] abc[lear] abo[veleft] al[l] arga[dd] argd[elete] argdo arge[dit] argg[lobal] argl[ocal] ar[gs] argu[ment] as[cii] bad[d] ba[ll] bd[elete] be bel[owright] bf[irst] bl[ast] bm[odified] bn[ext] bN[ext] bo[tright] bp[revious] brea[k] breaka[dd] breakd[el] breakl[ist] br[ewind] bro[wse] bufdo b[uffer] buffers bun[load] bw[ipeout] ca[bbrev] cabc[lear] caddb[uffer] cad[dexpr] caddf[ile] cal[l] cat[ch] cb[uffer] cc ccl[ose] cd ce[nter] cex[pr] cf[ile] cfir[st] cgetb[uffer] cgete[xpr] cg[etfile] c[hange] changes chd[ir] che[ckpath] checkt[ime] cla[st] cl[ist] clo[se] cmapc[lear] cnew[er] cn[ext] cN[ext] cnf[ile] cNf[ile] cnorea[bbrev] col[der] colo[rscheme] comc[lear] comp[iler] conf[irm] con[tinue] cope[n] co[py] cpf[ile] cp[revious] cq[uit] cr[ewind] cuna[bbrev] cu[nmap] cw[indow] debugg[reedy] delc[ommand] d[elete] delf[unction] delm[arks] diffg[et] diffoff diffpatch diffpu[t] diffsplit diffthis diffu[pdate] dig[raphs] di[splay] dj[ump] dl[ist] dr[op] ds[earch] dsp[lit] earlier echoe[rr] echom[sg] echon e[dit] el[se] elsei[f] em[enu] emenu* endfo[r] endf[unction] en[dif] endt[ry] endw[hile] ene[w] ex exi[t] exu[sage] f[ile] files filetype fina[lly] fin[d] fini[sh] fir[st] fix[del] fo[ld] foldc[lose] folddoc[losed] foldd[oopen] foldo[pen] for fu[nction] go[to] gr[ep] grepa[dd] ha[rdcopy] h[elp] helpf[ind] helpg[rep] helpt[ags] hid[e] his[tory] ia[bbrev] iabc[lear] if ij[ump] il[ist] imapc[lear] inorea[bbrev] is[earch] isp[lit] iuna[bbrev] iu[nmap] j[oin] ju[mps] k keepalt keepj[umps] kee[pmarks] laddb[uffer] lad[dexpr] laddf[ile] lan[guage] la[st] later lb[uffer] lc[d] lch[dir] lcl[ose] le[ft] lefta[bove] lex[pr] lf[ile] lfir[st] lgetb[uffer] lgete[xpr] lg[etfile] lgr[ep] lgrepa[dd] lh[elpgrep] l[ist] ll lla[st] lli[st] lmak[e] lm[ap] lmapc[lear] lnew[er] lne[xt] lN[ext] lnf[ile] lNf[ile] ln[oremap] lo[adview] loc[kmarks] lockv[ar] lol[der] lop[en] lpf[ile] lp[revious] lr[ewind] ls lt[ag] lu[nmap] lv[imgrep] lvimgrepa[dd] lw[indow] mak[e] ma[rk] marks mat[ch] menut[ranslate] mk[exrc] mks[ession] mksp[ell] mkvie[w] mkv[imrc] mod[e] m[ove] mzf[ile] mz[scheme] nbkey new n[ext] N[ext] nmapc[lear] noh[lsearch] norea[bbrev] nu[mber] nun[map] omapc[lear] on[ly] o[pen] opt[ions] ou[nmap] pc[lose] ped[it] pe[rl] perld[o] po[p] popu popu[p] pp[op] pre[serve] prev[ious] p[rint] P[rint] profd[el] prof[ile] promptf[ind] promptr[epl] ps[earch] pta[g] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptN[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] pyf[ile] py[thon] qa[ll] q[uit] quita[ll] r[ead] rec[over] redi[r] red[o] redr[aw] redraws[tatus] reg[isters] res[ize] ret[ab] retu[rn] rew[ind] ri[ght] rightb[elow] rub[y] rubyd[o] rubyf[ile] ru[ntime] rv[iminfo] sal[l] san[dbox] sa[rgument] sav[eas] sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbN[ext] sbp[revious] sbr[ewind] sb[uffer] scripte[ncoding] scrip[tnames] se[t] setf[iletype] setg[lobal] setl[ocal] sf[ind] sfir[st] sh[ell] sign sil[ent] sim[alt] sla[st] sl[eep] sm[agic] sm[ap] smapc[lear] sme smenu sn[ext] sN[ext] sni[ff] sno[magic] snor[emap] snoreme snoremenu sor[t] so[urce] spelld[ump] spe[llgood] spelli[nfo] spellr[epall] spellu[ndo] spellw[rong] sp[lit] spr[evious] sre[wind] sta[g] startg[replace] star[tinsert] startr[eplace] stj[ump] st[op] stopi[nsert] sts[elect] sun[hide] sunm[ap] sus[pend] sv[iew] syncbind t tab tabc[lose] tabd[o] tabe[dit] tabf[ind] tabfir[st] tabl[ast] tabm[ove] tabnew tabn[ext] tabN[ext] tabo[nly] tabp[revious] tabr[ewind] tabs ta[g] tags tc[l] tcld[o] tclf[ile] te[aroff] tf[irst] th[row] tj[ump] tl[ast] tm tm[enu] tn[ext] tN[ext] to[pleft] tp[revious] tr[ewind] try ts[elect] tu tu[nmenu] una[bbreviate] u[ndo] undoj[oin] undol[ist] unh[ide] unlo[ckvar] unm[ap] up[date] verb[ose] ve[rsion] vert[ical] vie[w] vim[grep] vimgrepa[dd] vi[sual] viu[sage] vmapc[lear] vne[w] vs[plit] vu[nmap] wa[ll] wh[ile] winc[md] windo winp[os] win[size] wn[ext] wN[ext] wp[revious] wq wqa[ll] w[rite] ws[verb] wv[iminfo] X xa[ll] x[it] xm[ap] xmapc[lear] xme xmenu XMLent XMLns xn[oremap] xnoreme xnoremenu xu[nmap] y[ank]
+syn keyword vimCommand contained ab[breviate] argd[elete] ar[gs] bd[elete] bn[ext] breaka[dd] bufdo ca[bbrev] cal[l] cd cgetb[uffer] chd[ir] clo[se] cnf[ile] comc[lear] co[py] cuna[bbrev] delf[unction] diffpu[t] di[splay] dsp[lit] e[dit] endfo[r] ene[w] files fir[st] foldd[oopen] gr[ep] helpg[rep] iabc[lear] inorea[bbrev] ju[mps] laddb[uffer] la[st] lch[dir] lex[pr] lgete[xpr] lh[elpgrep] lli[st] lnew[er] lNf[ile] lockv[ar] lp[revious] lv[imgrep] ma[rk] mk[exrc] mkv[imrc] mz[scheme] N[ext] nu[mber] opt[ions] perld[o] pp[op] P[rint] promptr[epl] ptj[ump] ptp[revious] pw[d] q[uit] redi[r] reg[isters] rew[ind] rubyd[o] sal[l] sba[ll] sbn[ext] sb[uffer] setf[iletype] sfir[st] sim[alt] sm[ap] sn[ext] snor[emap] so[urce] spellr[epall] spr[evious] star[tinsert] stopi[nsert] sunmenu t tabe[dit] tabm[ove] tabo[nly] ta[g] tclf[ile] tj[ump] tn[ext] tr[ewind] tu[nmenu] undol[ist] verb[ose] vim[grep] vmapc[lear] wh[ile] win[size] wq wv[iminfo] xm[ap] XMLent xnoremenu
+syn keyword vimCommand contained abc[lear] argdo argu[ment] bel[owright] bN[ext] breakd[el] b[uffer] cabc[lear] cat[ch] ce[nter] cgete[xpr] che[ckpath] cmapc[lear] cNf[ile] comp[iler] cpf[ile] cw[indow] delm[arks] diffsplit dj[ump] earlier el[se] endf[unction] ex filetype fix[del] foldo[pen] grepa[dd] helpt[ags] if is[earch] k lad[dexpr] later lcl[ose] lf[ile] lg[etfile] l[ist] lmak[e] lne[xt] ln[oremap] lol[der] lr[ewind] lvimgrepa[dd] marks mks[ession] mod[e] nbkey nmapc[lear] omapc[lear] pc[lose] po[p] pre[serve] profd[el] ps[earch] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red[o] res[ize] ri[ght] rubyf[ile] san[dbox] sbf[irst] sbN[ext] scripte[ncoding] setg[lobal] sh[ell] sla[st] smapc[lear] sN[ext] snoreme spelld[ump] spellu[ndo] sre[wind] startr[eplace] sts[elect] sus[pend] tab tabf[ind] tabnew tabp[revious] tags te[aroff] tl[ast] tN[ext] try una[bbreviate] unh[ide] ve[rsion] vimgrepa[dd] vne[w] winc[md] wn[ext] wqa[ll] X xmapc[lear] XMLns xunme
+syn keyword vimCommand contained abo[veleft] arge[dit] as[cii] bf[irst] bo[tright] breakl[ist] buffers caddb[uffer] cb[uffer] cex[pr] cg[etfile] checkt[ime] cnew[er] cnorea[bbrev] conf[irm] cp[revious] debugg[reedy] diffg[et] diffthis dl[ist] echoe[rr] elsei[f] en[dif] exi[t] fina[lly] fo[ld] for ha[rdcopy] hid[e] ij[ump] isp[lit] keepalt laddf[ile] lb[uffer] le[ft] lfir[st] lgr[ep] ll lm[ap] lN[ext] lo[adview] lop[en] ls lw[indow] mat[ch] mksp[ell] m[ove] new noh[lsearch] on[ly] ped[it] popu prev[ious] prof[ile] pta[g] ptn[ext] pts[elect] py[thon] r[ead] redr[aw] ret[ab] rightb[elow] ru[ntime] sa[rgument] sbl[ast] sbp[revious] scrip[tnames] setl[ocal] sign sl[eep] sme sni[ff] snoremenu spe[llgood] spellw[rong] sta[g] stj[ump] sun[hide] sv[iew] tabc[lose] tabfir[st] tabn[ext] tabr[ewind] tc[l] tf[irst] tm to[pleft] ts[elect] u[ndo] unlo[ckvar] vert[ical] vi[sual] vs[plit] windo wN[ext] w[rite] xa[ll] xme xn[oremap] xunmenu
+syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] bp[revious] br[ewind] bun[load] cad[dexpr] cc cf[ile] c[hange] cla[st] cn[ext] col[der] con[tinue] cq[uit] delc[ommand] diffoff diffu[pdate] dr[op] echom[sg] em[enu] endt[ry] exu[sage] fin[d] foldc[lose] fu[nction] h[elp] his[tory] il[ist] iuna[bbrev] keepj[umps] lan[guage] lc[d] lefta[bove] lgetb[uffer] lgrepa[dd] lla[st] lmapc[lear] lnf[ile] loc[kmarks] lpf[ile] lt[ag] mak[e] menut[ranslate] mkvie[w] mzf[ile] n[ext] norea[bbrev] o[pen] pe[rl] popu[p] p[rint] promptf[ind] ptf[irst] ptN[ext] pu[t] qa[ll] rec[over] redraws[tatus] retu[rn] rub[y] rv[iminfo] sav[eas] sbm[odified] sbr[ewind] se[t] sf[ind] sil[ent] sm[agic] smenu sno[magic] sor[t] spelli[nfo] sp[lit] startg[replace] st[op] sunme syncbind tabd[o] tabl[ast] tabN[ext] tabs tcld[o] th[row] tm[enu] tp[revious] tu undoj[oin] up[date] vie[w] viu[sage] wa[ll] winp[os] wp[revious] ws[verb] x[it] xmenu xnoreme y[ank]
+syn keyword vimCommand contained arga[dd] argl[ocal] ba[ll] bm[odified] brea[k] bro[wse] bw[ipeout] caddf[ile] ccl[ose] cfir[st] changes cl[ist] cN[ext] colo[rscheme] cope[n] cr[ewind] d[elete] diffpatch dig[raphs] ds[earch] echon emenu* endw[hile] f[ile] fini[sh] folddoc[losed] go[to] helpf[ind] ia[bbrev] imapc[lear] j[oin] kee[pmarks]
syn match vimCommand contained "\<z[-+^.=]"
" vimOptions are caught only when contained in a vimSet {{{2
-syn keyword vimOption contained acd ai akm al aleph allowrevins altkeymap ambiwidth ambw anti antialias ar arab arabic arabicshape ari arshape autochdir autoindent autoread autowrite autowriteall aw awa background backspace backup backupcopy backupdir backupext backupskip balloondelay ballooneval balloonexpr bdir bdlay beval bex bexpr bg bh bin binary biosk bioskey bk bkc bl bomb breakat brk browsedir bs bsdir bsk bt bufhidden buflisted buftype casemap cb ccv cd cdpath cedit cf cfu ch charconvert ci cin cindent cink cinkeys cino cinoptions cinw cinwords clipboard cmdheight cmdwinheight cmp cms co columns com comments commentstring compatible complete completefunc completeopt confirm consk conskey copyindent cot cp cpo cpoptions cpt cscopepathcomp cscopeprg cscopequickfix cscopetag cscopetagorder cscopeverbose cspc csprg csqf cst csto csverb cuc cul cursorcolumn cursorline cwh debug deco def define delcombine dex dg dict dictionary diff diffexpr diffopt digraph dip dir directory display dy ea ead eadirection eb ed edcompatible ef efm ei ek enc encoding endofline eol ep equalalways equalprg errorbells errorfile errorformat esckeys et eventignore ex expandtab exrc fcl fcs fdc fde fdi fdl fdls fdm fdn fdo fdt fen fenc fencs fex ff ffs fileencoding fileencodings fileformat fileformats filetype fillchars fk fkmap flp fml fmr fo foldclose foldcolumn foldenable foldexpr foldignore foldlevel foldlevelstart foldmarker foldmethod foldminlines foldnestmax foldopen foldtext formatexpr formatlistpat formatoptions formatprg fp fs fsync ft gcr gd gdefault gfm gfn gfs gfw ghr go gp grepformat grepprg gtl gtt guicursor guifont guifontset guifontwide guiheadroom guioptions guipty guitablabel guitabtooltip helpfile helpheight helplang hf hh hi hid hidden highlight history hk hkmap hkmapp hkp hl hlg hls hlsearch ic icon iconstring ignorecase im imactivatekey imak imc imcmdline imd imdisable imi iminsert ims imsearch inc include includeexpr incsearch inde indentexpr indentkeys indk inex inf infercase insertmode is isf isfname isi isident isk iskeyword isp isprint joinspaces js key keymap keymodel keywordprg km kmp kp langmap langmenu laststatus lazyredraw lbr lcs linebreak lines linespace lisp lispwords list listchars lm lmap loadplugins lpl ls lsp lw lz ma macatsui magic makeef makeprg mat matchpairs matchtime maxcombine maxfuncdepth maxmapdepth maxmem maxmempattern maxmemtot mco mef menuitems mfd mh mis mkspellmem ml mls mm mmd mmp mmt mod modeline modelines modifiable modified more mouse mousef mousefocus mousehide mousem mousemodel mouses mouseshape mouset mousetime mp mps msm mzq mzquantum nf nrformats nu number numberwidth nuw odev oft ofu omnifunc opendevice operatorfunc opfunc osfiletype pa para paragraphs paste pastetoggle patchexpr patchmode path pdev penc pex pexpr pfn ph pheader pi pm pmbcs pmbfn popt preserveindent previewheight previewwindow printdevice printencoding printexpr printfont printheader printmbcharset printmbfont printoptions prompt pt pumheight pvh pvw qe quoteescape readonly remap report restorescreen revins ri rightleft rightleftcmd rl rlc ro rs rtp ru ruf ruler rulerformat runtimepath sb sbo sbr sc scb scr scroll scrollbind scrolljump scrolloff scrollopt scs sect sections secure sel selection selectmode sessionoptions sft sh shcf shell shellcmdflag shellpipe shellquote shellredir shellslash shelltemp shelltype shellxquote shiftround shiftwidth shm shortmess shortname showbreak showcmd showfulltag showmatch showmode showtabline shq si sidescroll sidescrolloff siso sj slm sm smartcase smartindent smarttab smc smd sn so softtabstop sol sp spc spell spellcapcheck spellfile spelllang spellsuggest spf spl splitbelow splitright spr sps sr srr ss ssl ssop st sta stal startofline statusline stl stmp sts su sua suffixes suffixesadd sw swapfile swapsync swb swf switchbuf sws sxq syn synmaxcol syntax ta tabline tabpagemax tabstop tag tagbsearch taglength tagrelative tags tagstack tal tb tbi tbidi tbis tbs tenc term termbidi termencoding terse textauto textmode textwidth tf tgst thesaurus tildeop timeout timeoutlen title titlelen titleold titlestring tl tm to toolbar toolbariconsize top tpm tr ts tsl tsr ttimeout ttimeoutlen ttm tty ttybuiltin ttyfast ttym ttymouse ttyscroll ttytype tw tx uc ul undolevels updatecount updatetime ut vb vbs vdir ve verbose verbosefile vfile vi viewdir viewoptions viminfo virtualedit visualbell vop wa wak warn wb wc wcm wd weirdinvert wfh wfw wh whichwrap wi wig wildchar wildcharm wildignore wildmenu wildmode wildoptions wim winaltkeys window winfixheight winfixwidth winheight winminheight winminwidth winwidth wiv wiw wm wmh wmnu wmw wop wrap wrapmargin wrapscan write writeany writebackup writedelay ws ww
+syn keyword vimOption contained acd ambiwidth arabicshape autowriteall backupdir bdlay binary breakat bufhidden cdpath cin cinwords columns completeopt cpo cscopetagorder csverb deco dictionary directory ed encoding errorfile exrc fdls fencs fileformats fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imak ims indentexpr is isp keywordprg lazyredraw lispwords ls makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pexpr pmbfn printexpr pt readonly rightleft rtp sb scroll sect sessionoptions shellpipe shellxquote showbreak shq slm smd spc spf sr sta sts swapfile sxq tabpagemax tags tbis terse thesaurus titleold toolbariconsize tsr ttyfast tx ut verbosefile virtualedit wb wfw wildcharm winaltkeys winminwidth wmnu write
+syn keyword vimOption contained ai ambw ari aw backupext beval biosk brk buflisted cedit cindent clipboard com confirm cpoptions cscopeverbose cuc def diff display edcompatible endofline errorformat fcl fdm fex filetype fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imc imsearch indentkeys isf isprint km lbr list lsp makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pfn popt printfont pumheight remap rightleftcmd ru sbo scrollbind sections sft shellquote shiftround showcmd si sm sn spell spl srr stal su swapsync syn tabstop tagstack tbs textauto tildeop titlestring top ttimeout ttym uc vb vfile visualbell wc wh wildignore window winwidth wmw writeany
+syn keyword vimOption contained akm anti arshape awa backupskip bex bioskey browsedir buftype cf cink cmdheight comments consk cpt cspc cul define diffexpr dy ef eol esckeys fcs fdn ff fillchars foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imcmdline inc indk isfname joinspaces kmp lcs listchars lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode ph preserveindent printheader pvh report rl ruf sbr scrolljump secure sh shellredir shiftwidth showfulltag sidescroll smartcase so spellcapcheck splitbelow ss startofline sua swb synmaxcol tag tal tenc textmode timeout tl tpm ttimeoutlen ttymouse ul vbs vi vop wcm whichwrap wildmenu winfixheight wiv wop writebackup
+syn keyword vimOption contained al antialias autochdir background balloondelay bexpr bk bs casemap cfu cinkeys cmdwinheight commentstring conskey cscopepathcomp csprg cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imd include inex isi js kp linebreak lm lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path pheader previewheight printmbcharset pvw restorescreen rlc ruler sc scrolloff sel shcf shellslash shm showmatch sidescrolloff smartindent softtabstop spellfile splitright ssl statusline suffixes swf syntax tagbsearch tb term textwidth timeoutlen tm tr ttm ttyscroll undolevels vdir viewdir wa wd wi wildmode winfixwidth wiw wrap writedelay
+syn keyword vimOption contained aleph ar autoindent backspace ballooneval bg bkc bsdir cb ch cino cmp compatible copyindent cscopeprg csqf cursorline dex digraph ead ei equalalways eventignore fde fdt fileencoding fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imdisable includeexpr inf isident key langmap lines lmap ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pi previewwindow printmbfont qe revins ro rulerformat scb scrollopt selection shell shelltemp shortmess showmode siso smarttab sol spelllang spr ssop stl suffixesadd switchbuf ta taglength tbi termbidi tf title to ts tty ttytype updatecount ve viewoptions wak weirdinvert wig wildoptions winheight wm wrapmargin ws
+syn keyword vimOption contained allowrevins arab autoread backup balloonexpr bh bl bsk ccv charconvert cinoptions cms complete cot cscopequickfix cst cwh dg dip eadirection ek equalprg ex fdi fen fileencodings flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imi incsearch infercase isk keymap langmenu linespace loadplugins macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pm printdevice printoptions quoteescape ri rs runtimepath scr scs selectmode shellcmdflag shelltype shortname showtabline sj smc sp spellsuggest sps st stmp sw sws tabline tagrelative tbidi termencoding tgst titlelen toolbar tsl ttybuiltin tw updatetime verbose viminfo warn wfh wildchar wim winminheight wmh wrapscan ww
+syn keyword vimOption contained altkeymap arabic autowrite backupcopy bdir bin bomb bt cd ci cinw co completefunc cp cscopetag csto debug dict dir eb enc errorbells expandtab fdl fenc fileformat fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatekey iminsert inde insertmode iskeyword keymodel laststatus lisp lpl magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste pex pmbcs printencoding prompt
" vimOptions: These are the turn-off setting variants {{{2
-syn keyword vimOption contained noacd noai noakm noallowrevins noaltkeymap noanti noantialias noar noarab noarabic noarabicshape noari noarshape noautochdir noautoindent noautoread noautowrite noautowriteall noaw noawa nobackup noballooneval nobeval nobin nobinary nobiosk nobioskey nobk nobl nobomb nobuflisted nocf noci nocin nocindent nocompatible noconfirm noconsk noconskey nocopyindent nocp nocscopetag nocscopeverbose nocst nocsverb nocuc nocul nocursorcolumn nocursorline nodeco nodelcombine nodg nodiff nodigraph nodisable noea noeb noed noedcompatible noek noendofline noeol noequalalways noerrorbells noesckeys noet noex noexpandtab noexrc nofen nofk nofkmap nofoldenable nogd nogdefault noguipty nohid nohidden nohk nohkmap nohkmapp nohkp nohls nohlsearch noic noicon noignorecase noim noimc noimcmdline noimd noincsearch noinf noinfercase noinsertmode nois nojoinspaces nojs nolazyredraw nolbr nolinebreak nolisp nolist noloadplugins nolpl nolz noma nomacatsui nomagic nomh noml nomod nomodeline nomodifiable nomodified nomore nomousef nomousefocus nomousehide nonu nonumber noodev noopendevice nopaste nopi nopreserveindent nopreviewwindow noprompt nopvw noreadonly noremap norestorescreen norevins nori norightleft norightleftcmd norl norlc noro nors noru noruler nosb nosc noscb noscrollbind noscs nosecure nosft noshellslash noshelltemp noshiftround noshortname noshowcmd noshowfulltag noshowmatch noshowmode nosi nosm nosmartcase nosmartindent nosmarttab nosmd nosn nosol nospell nosplitbelow nosplitright nospr nosr nossl nosta nostartofline nostmp noswapfile noswf nota notagbsearch notagrelative notagstack notbi notbidi notbs notermbidi noterse notextauto notextmode notf notgst notildeop notimeout notitle noto notop notr nottimeout nottybuiltin nottyfast notx novb novisualbell nowa nowarn nowb noweirdinvert nowfh nowfw nowildmenu nowinfixheight nowinfixwidth nowiv nowmnu nowrap nowrapscan nowrite nowriteany nowritebackup nows
+syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscopeverbose nocuc nocursorline nodg nodisable noeb noedcompatible noendofline noequalalways noesckeys noex noexrc nofk nofoldenable nogdefault nohid nohk nohkmapp nohls noic noignorecase noimc noimd noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw noremap norevins norightleft norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx novisualbell nowarn noweirdinvert nowfw nowinfixheight nowiv nowrap nowrite nowritebackup
+syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nocf nocindent noconsk nocp nocst nocul nodeco nodiff noea noed noek noeol noerrorbells noet noexpandtab nofen nofkmap nogd noguipty nohidden nohkmap nohkp nohlsearch noicon noim noimcmdline noincsearch noinfercase nois nojs nolbr nolisp noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly norestorescreen nori norightleftcmd norlc nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast novb nowa nowb nowfh nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
+syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocscopetag nocsverb nocursorcolumn nodelcombine nodigraph
" vimOptions: These are the invertible variants {{{2
-syn keyword vimOption contained invacd invai invakm invallowrevins invaltkeymap invanti invantialias invar invarab invarabic invarabicshape invari invarshape invautochdir invautoindent invautoread invautowrite invautowriteall invaw invawa invbackup invballooneval invbeval invbin invbinary invbiosk invbioskey invbk invbl invbomb invbuflisted invcf invci invcin invcindent invcompatible invconfirm invconsk invconskey invcopyindent invcp invcscopetag invcscopeverbose invcst invcsverb invcuc invcul invcursorcolumn invcursorline invdeco invdelcombine invdg invdiff invdigraph invdisable invea inveb inved invedcompatible invek invendofline inveol invequalalways inverrorbells invesckeys invet invex invexpandtab invexrc invfen invfk invfkmap invfoldenable invgd invgdefault invguipty invhid invhidden invhk invhkmap invhkmapp invhkp invhls invhlsearch invic invicon invignorecase invim invimc invimcmdline invimd invincsearch invinf invinfercase invinsertmode invis invjoinspaces invjs invlazyredraw invlbr invlinebreak invlisp invlist invloadplugins invlpl invlz invma invmacatsui invmagic invmh invml invmod invmodeline invmodifiable invmodified invmore invmousef invmousefocus invmousehide invnu invnumber invodev invopendevice invpaste invpi invpreserveindent invpreviewwindow invprompt invpvw invreadonly invremap invrestorescreen invrevins invri invrightleft invrightleftcmd invrl invrlc invro invrs invru invruler invsb invsc invscb invscrollbind invscs invsecure invsft invshellslash invshelltemp invshiftround invshortname invshowcmd invshowfulltag invshowmatch invshowmode invsi invsm invsmartcase invsmartindent invsmarttab invsmd invsn invsol invspell invsplitbelow invsplitright invspr invsr invssl invsta invstartofline invstmp invswapfile invswf invta invtagbsearch invtagrelative invtagstack invtbi invtbidi invtbs invtermbidi invterse invtextauto invtextmode invtf invtgst invtildeop invtimeout invtitle invto invtop invtr invttimeout invttybuiltin invttyfast invtx invvb invvisualbell invwa invwarn invwb invweirdinvert invwfh invwfw invwildmenu invwinfixheight invwinfixwidth invwiv invwmnu invwrap invwrapscan invwrite invwriteany invwritebackup invws
+syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbuflisted invcin invconfirm invcopyindent invcscopeverbose invcuc invcursorline invdg invdisable inveb invedcompatible invendofline invequalalways invesckeys invex invexrc invfk invfoldenable invgdefault invhid invhk invhkmapp invhls invic invignorecase invimc invimd invinf invinsertmode invjoinspaces invlazyredraw invlinebreak invlist invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invremap invrevins invrightleft invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invvisualbell invwarn invweirdinvert invwfw invwinfixheight invwiv invwrap invwrite invwritebackup
+syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invcf invcindent invconsk invcp invcst invcul invdeco invdiff invea inved invek inveol inverrorbells invet invexpandtab invfen invfkmap invgd invguipty invhidden invhkmap invhkp invhlsearch invicon invim invimcmdline invincsearch invinfercase invis invjs invlbr invlisp invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invrestorescreen invri invrightleftcmd invrlc invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invvb invwa invwb invwfh invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
+syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcscopetag invcsverb invcursorcolumn invdelcombine invdigraph
" termcap codes (which can also be set) {{{2
-syn keyword vimOption contained t_AB t_AF t_al t_AL t_bc t_cd t_ce t_Ce t_cl t_cm t_Co t_cs t_Cs t_CS t_CV t_da t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_te t_ti t_ts t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xs t_ZH t_ZR
+syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_cs t_Cs t_CS t_CV t_da t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_te t_ti t_ts t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xs t_ZH t_ZR
+syn keyword vimOption contained t_AF t_AL t_cd t_Ce t_cm
syn match vimOption contained "t_%1"
syn match vimOption contained "t_#2"
syn match vimOption contained "t_#4"
@@ -55,11 +70,24 @@ syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
-syn keyword vimFuncName contained add append argc argidx argv browse browsedir bufexists buflisted bufloaded bufname bufnr bufwinnr byte2line byteidx call changenr char2nr cindent col complete complete_add complete_check confirm copy count cscope_connection cursor deepcopy delete did_filetype diff_filler diff_hlID empty escape eval eventhandler executable exists expand expr8 extend feedkeys filereadable filewritable filter finddir findfile fnamemodify foldclosed foldclosedend foldlevel foldtext foldtextresult foreground function garbagecollect get getbufline getbufvar getchar getcharmod getcmdline getcmdpos getcmdtype getcwd getfontname getfperm getfsize getftime getftype getline getloclist getpos getqflist getreg getregtype gettabwinvar getwinposx getwinposy getwinvar glob globpath has has_key haslocaldir hasmapto histadd histdel histget histnr hlexists hlID hostname iconv indent index input inputdialog inputlist inputrestore inputsave inputsecret insert isdirectory islocked items join keys len libcall libcallnr line line2byte lispindent localtime map maparg mapcheck match matcharg matchend matchlist matchstr max min mkdir mode nextnonblank nr2char pathshorten prevnonblank printf pumvisible range readfile reltime reltimestr remote_expr remote_foreground remote_peek remote_read remote_send remove rename repeat resolve reverse search searchdecl searchpair searchpairpos searchpos server2client serverlist setbufvar setcmdpos setline setloclist setpos setqflist setreg settabwinvar setwinvar shellescape simplify sort soundfold spellbadword spellsuggest split str2nr strftime stridx string strlen strpart strridx strtrans submatch substitute synID synIDattr synIDtrans system tabpagebuflist tabpagenr tabpagewinnr tagfiles taglist tempname tolower toupper tr type values virtcol visualmode winbufnr wincol winheight winline winnr winrestcmd winrestview winsaveview winwidth writefile
+syn keyword vimFuncName contained add argidx browsedir bufloaded bufwinnr call cindent complete confirm cscope_connection delete diff_hlID eval exists expr8 feedkeys filewritable finddir fnamemodify foldclosedend foldtext foreground garbagecollect getbufline getchar getcmdline getcmdtype getfontname getfsize getftype getloclist getpos getreg gettabwinvar getwinposy glob has haslocaldir histadd histget hlexists hostname indent input inputlist inputsave insert islocked join len libcallnr line2byte localtime maparg match matcharg matchend matchstr min mode nr2char prevnonblank pumvisible readfile reltimestr remote_foreground remote_read remove repeat reverse searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabwinvar shellescape sort spellbadword split strftime string strpart strtrans substitute synIDattr system tabpagenr tagfiles tempname toupper type virtcol winbufnr winheight winnr winrestview winwidth
+syn keyword vimFuncName contained append argv bufexists bufname byte2line changenr clearmatches complete_add copy cursor did_filetype empty eventhandler expand extend filereadable filter findfile foldclosed foldlevel foldtextresult function get getbufvar getcharmod getcmdpos getcwd getfperm getftime getline getmatches getqflist getregtype getwinposx getwinvar globpath has_key hasmapto histdel histnr hlID iconv index inputdialog inputrestore inputsecret isdirectory items keys libcall line lispindent map mapcheck matchadd matchdelete matchlist max mkdir nextnonblank pathshorten printf range reltime remote_expr remote_peek remote_send rename resolve search searchpair searchpos serverlist setcmdpos setloclist setpos setreg setwinvar simplify soundfold spellsuggest str2nr stridx strlen strridx submatch synID synIDtrans tabpagebuflist tabpagewinnr taglist tolower tr values visualmode wincol winline winrestcmd winsaveview writefile
+syn keyword vimFuncName contained argc browse buflisted bufnr byteidx char2nr col complete_check count deepcopy diff_filler escape executable
"--- syntax above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
+" Deprecated variable options {{{2
+if exists("g:vim_minlines")
+ let g:vimsyn_minlines= g:vim_minlines
+endif
+if exists("g:vim_maxlines")
+ let g:vimsyn_maxlines= g:vim_maxlines
+endif
+if exists("g:vimsyntax_noerror")
+ let g:vimsyn_noerror= g:vimsyntax_noerror
+endif
+
" Numbers {{{2
" =======
syn match vimNumber "\<\d\+\([lL]\|\.\d\+\)\="
@@ -84,14 +112,14 @@ syn region vimInsert matchgroup=vimCommand start="^[: \t]*\(\d\+\(,\d\+\)\=\)\=i
" =======
syn match vimBehave "\<be\%[have]\>" skipwhite nextgroup=vimBehaveModel,vimBehaveError
syn keyword vimBehaveModel contained mswin xterm
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimBehaveError contained "[^ ]\+"
endif
" Filetypes {{{2
" =========
syn match vimFiletype "\<filet\%[ype]\(\s\+\I\i*\)*" skipwhite contains=vimFTCmd,vimFTOption,vimFTError
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimFTError contained "\I\i*"
endif
syn keyword vimFTCmd contained filet[ype]
@@ -100,22 +128,41 @@ syn keyword vimFTOption contained detect indent off on plugin
" Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2
" ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking.
syn cluster vimAugroupList contains=vimIsCommand,vimFunction,vimFunctionError,vimLineComment,vimSpecFile,vimOper,vimNumber,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
-syn region vimAugroup start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
+if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'a'
+ syn region vimAugroup fold start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
+else
+ syn region vimAugroup start="\<aug\%[roup]\>\s\+\K\k*" end="\<aug\%[roup]\>\s\+[eE][nN][dD]\>" contains=vimAugroupKey,vimAutoCmd,@vimAugroupList keepend
+endif
syn match vimAugroup "aug\%[roup]!" contains=vimAugroupKey
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimAugroupError "\<aug\%[roup]\>\s\+[eE][nN][dD]\>"
endif
syn keyword vimAugroupKey contained aug[roup]
+" Operators: {{{2
+" =========
+syn cluster vimOperGroup contains=vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
+syn match vimOper "\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile
+syn match vimOper "||\|&&\|[-+.]" skipwhite nextgroup=vimString,vimSpecFile
+syn region vimOperParen oneline matchgroup=vimOper start="(" end=")" contains=@vimOperGroup
+syn region vimOperParen oneline matchgroup=vimSep start="{" end="}" contains=@vimOperGroup nextgroup=vimVar
+if !exists("g:vimsyn_noerror")
+ syn match vimOperError ")"
+endif
+
" Functions : Tag is provided for those who wish to highlight tagged functions {{{2
" =========
syn cluster vimFuncList contains=vimCommand,vimFuncKey,Tag,vimFuncSID
-syn cluster vimFuncBodyList contains=vimIsCommand,vimFunction,vimFunctionError,vimFuncBody,vimLineComment,vimSpecFile,vimOper,vimNumber,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue
-if !exists("g:vimsyntax_noerror")
+syn cluster vimFuncBodyList contains=vimAddress,vimAutoCmd,vimCmplxRepeat,vimComment,vimComment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimExecute,vimIf,vimFunc,vimFunction,vimFunctionError,vimFuncVar,vimIsCommand,vimLet,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUserCommand
+if !exists("g:vimsyn_noerror")
syn match vimFunctionError "\<fu\%[nction]!\=\s\+\zs\U\i\{-}\ze\s*(" contains=vimFuncKey,vimFuncBlank nextgroup=vimFuncBody
endif
-syn match vimFunction "\<fu\%[nction]!\=\s\+\(\(<[sS][iI][dD]>\|[Ss]:\|\u\)\i*\|g:\(\I\i*\.\)\+\I\i*\)\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
-syn region vimFuncBody contained start=")" end="\<endf\%[unction]" contains=@vimFuncBodyList
+syn match vimFunction "\<fu\%[nction]!\=\s\+\(\(<[sS][iI][dD]>\|[Ss]:\|\u\|\i\+#\)\i*\|g:\(\I\i*\.\)\+\I\i*\)\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody
+if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'f'
+ syn region vimFuncBody contained fold start="\ze(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\)" contains=@vimFuncBodyList
+else
+ syn region vimFuncBody contained start="\ze(" matchgroup=vimCommand end="\<\(endf\>\|endfu\%[nction]\>\)" contains=@vimFuncBodyList
+endif
syn match vimFuncVar contained "a:\(\I\i*\|\d\+\)"
syn match vimFuncSID contained "\c<sid>\|\<s:"
syn keyword vimFuncKey contained fu[nction]
@@ -123,17 +170,6 @@ syn match vimFuncBlank contained "\s\+"
syn keyword vimPattern contained start skip end
-" Operators: {{{2
-" =========
-syn cluster vimOperGroup contains=vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
-syn match vimOper "\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile
-syn match vimOper "||\|&&\|[-+.]" skipwhite nextgroup=vimString,vimSpecFile
-syn region vimOperParen oneline matchgroup=vimOper start="(" end=")" contains=@vimOperGroup
-syn region vimOperParen oneline matchgroup=vimSep start="{" end="}" contains=@vimOperGroup nextgroup=vimVar
-if !exists("g:vimsyntax_noerror")
- syn match vimOperError ")"
-endif
-
" Special Filenames, Modifiers, Extension Removal: {{{2
" ===============================================
syn match vimSpecFile "<c\(word\|WORD\)>" nextgroup=vimSpecFileMod,vimSubst
@@ -156,7 +192,7 @@ syn match vimUserAttrb contained "-cou\%[nt]=\d\+" contains=vimNumber,vimOper,
syn match vimUserAttrb contained "-bang\=\>" contains=vimOper,vimUserAttrbKey
syn match vimUserAttrb contained "-bar\>" contains=vimOper,vimUserAttrbKey
syn match vimUserAttrb contained "-re\%[gister]\>" contains=vimOper,vimUserAttrbKey
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimUserCmdError contained "\S\+\>"
endif
syn case ignore
@@ -168,12 +204,6 @@ syn match vimUserAttrbCmpltFunc contained ",\%([sS]:\|<[sS][iI][dD]>\)\=\%(\h\
syn case match
syn match vimUserAttrbCmplt contained "custom,\u\w*"
-" Errors: {{{2
-" ======
-if !exists("g:vimsyntax_noerror")
- syn match vimElseIfErr "\<else\s\+if\>"
-endif
-
" Lower Priority Comments: after some vim commands... {{{2
" =======================
syn match vimComment excludenl +\s"[^\-:.%#=*].*$+lc=1 contains=@vimCommentGroup,vimCommentString
@@ -280,8 +310,9 @@ syn case match
" Maps {{{2
" ====
-syn match vimMap "\<map!\=\ze\s*[^(]" skipwhite nextgroup=vimMapMod,vimMapLhs
+syn match vimMap "\<map\>!\=\ze\s*[^(]" skipwhite nextgroup=vimMapMod,vimMapLhs
syn keyword vimMap cm[ap] cno[remap] im[ap] ino[remap] ln[oremap] nm[ap] nn[oremap] no[remap] om[ap] ono[remap] snor[emap] vm[ap] vn[oremap] xn[oremap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
+syn keyword vimMap mapc[lear]
syn match vimMapLhs contained "\S\+" contains=vimNotation,vimCtrlChar skipwhite nextgroup=vimMapRhs
syn match vimMapBang contained "!" skipwhite nextgroup=vimMapMod,vimMapLhs
syn match vimMapMod contained "\c<\(buffer\|expr\|\(local\)\=leader\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
@@ -315,13 +346,21 @@ syn match vimNotation "\(\\\|<lt>\)\=<\([cas]file\|abuf\|amatch\|cword\|cWORD\|c
syn match vimBracket contained "[\\<>]"
syn case match
-" User Function Highlighting (following Gautam Iyer's suggestion) {{{2
+" User Function Highlighting {{{2
+" (following Gautam Iyer's suggestion)
" ==========================
-syn match vimFunc "\%(\%([gGsS]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9.]\+\.\)*\I[a-zA-Z0-9.]*\)\ze\s*(" contains=vimFuncName,vimUserFunc,vimExecute
-syn match vimUserFunc contained "\%(\%([gGsS]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9.]\+\.\)*\I[a-zA-Z0-9.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation
+syn match vimFunc "\%(\%([gGsS]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_.]\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" contains=vimFuncName,vimUserFunc,vimExecute
+syn match vimUserFunc contained "\%(\%([gGsS]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_.]\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation
syn match vimNotFunc "\<if\>\|\<el\%[seif]\>"
-" Norm
+" Errors And Warnings: {{{2
+" ====================
+if !exists("g:vimsyn_noerror")
+ syn match vimElseIfErr "\<else\s\+if\>"
+ syn match vimBufnrWarn /\<bufnr\s*(\s*["']\.['"]\s*)/
+endif
+
+" Norm {{{2
" ====
syn match vimNorm "\<norm\%[al]!\=" skipwhite nextgroup=vimNormCmds
syn match vimNormCmds contained ".*$"
@@ -331,7 +370,7 @@ syn match vimNormCmds contained ".*$"
syn match vimGroupList contained "@\=[^ \t,]*" contains=vimGroupSpecial,vimPatSep
syn match vimGroupList contained "@\=[^ \t,]*," nextgroup=vimGroupList contains=vimGroupSpecial,vimPatSep
syn keyword vimGroupSpecial contained ALL ALLBUT
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimSynError contained "\i\+"
syn match vimSynError contained "\i\+=" nextgroup=vimGroupList
endif
@@ -344,7 +383,7 @@ syn match vimAuSyntax contained "\s+sy\%[ntax]" contains=vimCommand skipwhite
" Syntax: case {{{2
syn keyword vimSynType contained case skipwhite nextgroup=vimSynCase,vimSynCaseError
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimSynCaseError contained "\i\+"
endif
syn keyword vimSynCase contained ignore match
@@ -364,7 +403,7 @@ syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList
" Syntax: keyword {{{2
syn cluster vimSynKeyGroup contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
syn keyword vimSynType contained keyword skipwhite nextgroup=vimSynKeyRegion
-syn region vimSynKeyRegion contained keepend matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
+syn region vimSynKeyRegion contained oneline keepend matchgroup=vimGroupName start="\k\+" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
syn match vimSynKeyOpt contained "\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
" Syntax: match {{{2
@@ -400,7 +439,7 @@ syn match vimMtchComment contained '"[^"]\+$'
" Syntax: sync {{{2
" ============
syn keyword vimSynType contained sync skipwhite nextgroup=vimSyncC,vimSyncLines,vimSyncMatch,vimSyncError,vimSyncLinebreak,vimSyncLinecont,vimSyncRegion
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimSyncError contained "\i\+"
endif
syn keyword vimSyncC contained ccomment clear fromstart
@@ -438,14 +477,14 @@ syn case match
syn match vimHiFontname contained "[a-zA-Z\-*]\+"
syn match vimHiGuiFontname contained "'[a-zA-Z\-* ]\+'"
syn match vimHiGuiRgb contained "#\x\{6}"
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimHiCtermError contained "[^0-9]\i*"
endif
" Highlighting: hi group key=arg ... {{{2
syn cluster vimHiCluster contains=vimHiGroup,vimHiTerm,vimHiCTerm,vimHiStartStop,vimHiCtermFgBg,vimHiGui,vimHiGuiFont,vimHiGuiFgBg,vimHiKeyError,vimNotation
syn region vimHiKeyList contained oneline start="\i\+" skip="\\\\\|\\|" end="$\||" contains=@vimHiCluster
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
syn match vimHiKeyError contained "\i\+="he=e-1
endif
syn match vimHiTerm contained "\cterm="he=e-1 nextgroup=vimHiAttribList
@@ -485,71 +524,100 @@ syn region vimGlobal matchgroup=Statement start='\<v\%[global]!\=/' skip='\\.' e
" Scripts : perl,ruby : Benoit Cerrina {{{2
" ======= python,tcl: Johannes Zellner
-" allow users to prevent embedded script syntax highlighting
-" when vim doesn't have perl/python/ruby/tcl support. Do
-" so by setting g:vimembedscript= 0 in the user's <.vimrc>.
-if !exists("g:vimembedscript")
- let g:vimembedscript= 1
+" Allows users to specify the type of embedded script highlighting
+" they want: (perl/python/ruby/tcl support)
+" g:vimsyn_embed == 0 : don't embed any scripts
+" g:vimsyn_embed ~= 'm' : embed mzscheme (but only if vim supports it)
+" g:vimsyn_embed ~= 'p' : embed perl (but only if vim supports it)
+" g:vimsyn_embed ~= 'P' : embed python (but only if vim supports it)
+" g:vimsyn_embed ~= 'r' : embed ruby (but only if vim supports it)
+" g:vimsyn_embed ~= 't' : embed tcl (but only if vim supports it)
+if !exists("g:vimsyn_embed")
+ let g:vimsyn_embed= "mpPr"
endif
" [-- perl --] {{{3
-if (has("perl") || g:vimembedscript) && filereadable(expand("<sfile>:p:h")."/perl.vim")
+if (g:vimsyn_embed =~ 'p' && has("perl")) && filereadable(expand("<sfile>:p:h")."/perl.vim")
unlet! b:current_syntax
syn include @vimPerlScript <sfile>:p:h/perl.vim
- syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPerlScript
- syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*$+ end=+\.$+ contains=@vimPerlScript
+ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'p'
+ syn region vimPerlRegion fold matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPerlScript
+ syn region vimPerlRegion fold matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*$+ end=+\.$+ contains=@vimPerlScript
+ else
+ syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPerlScript
+ syn region vimPerlRegion matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*$+ end=+\.$+ contains=@vimPerlScript
+ endif
endif
" [-- ruby --] {{{3
-if (has("ruby") || g:vimembedscript) && filereadable(expand("<sfile>:p:h")."/ruby.vim")
+if (g:vimsyn_embed =~ 'r' && has("ruby")) && filereadable(expand("<sfile>:p:h")."/ruby.vim")
unlet! b:current_syntax
syn include @vimRubyScript <sfile>:p:h/ruby.vim
- syn region vimRubyRegion matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimRubyScript
+ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'r'
+ syn region vimRubyRegion fold matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimRubyScript
+ else
+ syn region vimRubyRegion fold matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimRubyScript
+ endif
syn region vimRubyRegion matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*$+ end=+\.$+ contains=@vimRubyScript
endif
" [-- python --] {{{3
-if (has("python") || g:vimembedscript) && filereadable(expand("<sfile>:p:h")."/python.vim")
+if (g:vimsyn_embed =~ 'P' && has("python")) && filereadable(expand("<sfile>:p:h")."/python.vim")
unlet! b:current_syntax
syn include @vimPythonScript <sfile>:p:h/python.vim
- syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPythonScript
- syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*$+ end=+\.$+ contains=@vimPythonScript
+ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'P'
+ syn region vimPythonRegion fold matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPythonScript
+ syn region vimPythonRegion fold matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*$+ end=+\.$+ contains=@vimPythonScript
+ else
+ syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimPythonScript
+ syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]\s*<<\s*$+ end=+\.$+ contains=@vimPythonScript
+ endif
endif
" [-- tcl --] {{{3
if has("win32") || has("win95") || has("win64") || has("win16")
" apparently has("tcl") has been hanging vim on some windows systems with cygwin
- let trytcl= (&shell !~ '\%(\<bash\>\|\<zsh\>\)\%(\.exe\)\=$') || g:vimembedscript
+ let trytcl= (&shell !~ '\<\%(bash\>\|4[nN][tT]\|\<zsh\)\>\%(\.exe\)\=$')
else
let trytcl= 1
endif
if trytcl
- if (has("tcl") || g:vimembedscript) && filereadable(expand("<sfile>:p:h")."/tcl.vim")
+ if (g:vimsyn_embed =~ 't' && has("tcl")) && filereadable(expand("<sfile>:p:h")."/tcl.vim")
unlet! b:current_syntax
syn include @vimTclScript <sfile>:p:h/tcl.vim
- syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimTclScript
- syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+ contains=@vimTclScript
+ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 't'
+ syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimTclScript
+ syn region vimTclRegion fold matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+ contains=@vimTclScript
+ else
+ syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimTclScript
+ syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+ contains=@vimTclScript
+ endif
endif
endif
unlet trytcl
" [-- mzscheme --] {{{3
-if (has("mzscheme") || g:vimembedscript) && filereadable(expand("<sfile>:p:h")."/scheme.vim")
+if (g:vimsyn_embed =~ 'm' && has("mzscheme")) && filereadable(expand("<sfile>:p:h")."/scheme.vim")
unlet! b:current_syntax
let iskKeep= &isk
syn include @vimMzSchemeScript <sfile>:p:h/scheme.vim
let &isk= iskKeep
- syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimMzSchemeScript
- syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*$+ end=+\.$+ contains=@vimMzSchemeScript
+ if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 't'
+ syn region vimMzSchemeRegion fold matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimMzSchemeScript
+ syn region vimMzSchemeRegion fold matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*$+ end=+\.$+ contains=@vimMzSchemeScript
+ else
+ syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*\z(.*\)$+ end=+^\z1$+ contains=@vimMzSchemeScript
+ syn region vimMzSchemeRegion matchgroup=vimScriptDelim start=+mz\%[scheme]\s*<<\s*$+ end=+\.$+ contains=@vimMzSchemeScript
+ endif
endif
" Synchronize (speed) {{{2
"============
-if exists("g:vim_minlines")
- exe "syn sync minlines=".g:vim_minlines
+if exists("g:vimsyn_minlines")
+ exe "syn sync minlines=".g:vimsyn_minlines
endif
-if exists("g:vim_maxlines")
- exe "syn sync maxlines=".g:vim_maxlines
+if exists("g:vimsyn_maxlines")
+ exe "syn sync maxlines=".g:vimsyn_maxlines
else
syn sync maxlines=60
endif
@@ -563,7 +631,7 @@ hi def link vimAuHighlight vimHighlight
hi def link vimSubst1 vimSubst
hi def link vimBehaveModel vimBehave
-if !exists("g:vimsyntax_noerror")
+if !exists("g:vimsyn_noerror")
hi def link vimBehaveError vimError
hi def link vimCollClassErr vimError
hi def link vimErrSetting vimError
@@ -577,6 +645,7 @@ if !exists("g:vimsyntax_noerror")
hi def link vimMapModErr vimError
hi def link vimSubstFlagErr vimError
hi def link vimSynCaseError vimError
+ hi def link vimBufnrWarn vimWarn
endif
hi def link vimAddress vimMark
@@ -708,6 +777,7 @@ hi def link vimSyncNone Type
hi def link vimTodo Todo
hi def link vimUserCmdError Error
hi def link vimUserAttrbCmpltFunc Special
+hi def link vimWarn WarningMsg
" Current Syntax Variable: {{{2
let b:current_syntax = "vim"
diff --git a/runtime/syntax/voscm.vim b/runtime/syntax/voscm.vim
new file mode 100644
index 000000000..7d6bea754
--- /dev/null
+++ b/runtime/syntax/voscm.vim
@@ -0,0 +1,94 @@
+" Vim syntax file
+" Language: VOS CM macro
+" Maintainer: Andrew McGill andrewm at lunch.za.net
+" Last Change: Apr 06, 2007
+" Version: 1
+" URL: http://lunch.za.net/
+"
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if exists("b:current_syntax")
+ finish
+endif
+
+syn case match
+" set iskeyword=48-57,_,a-z,A-Z
+
+syn match voscmStatement "^!"
+syn match voscmStatement "&\(label\|begin_parameters\|end_parameters\|goto\|attach_input\|break\|continue\|control\|detach_input\|display_line\|display_line_partial\|echo\|eof\|eval\|if\|mode\|return\|while\|set\|set_string\|then\|else\|do\|done\|end\)\>"
+syn match voscmJump "\(&label\|&goto\) *" nextgroup=voscmLabelId
+syn match voscmLabelId contained "\<[A-Za-z][A-Z_a-z0-9]* *$"
+syn match voscmSetvar "\(&set_string\|&set\) *" nextgroup=voscmVariable
+syn match voscmError "\(&set_string\|&set\) *&"
+syn match voscmVariable contained "\<[A-Za-z][A-Z_a-z0-9]\+\>"
+syn keyword voscmParamKeyword contained number req string switch allow byte disable_input hidden length longword max min no_abbrev output_path req required req_for_form word
+syn region voscmParamList matchgroup=voscmParam start="&begin_parameters" end="&end_parameters" contains=voscmParamKeyword,voscmString,voscmParamName,voscmParamId
+syn match voscmParamName contained "\(^\s*[A-Za-z_0-9]\+\s\+\)\@<=\k\+"
+syn match voscmParamId contained "\(^\s*\)\@<=\k\+"
+syn region par1 matchgroup=par1 start=/(/ end=/)/ contains=voscmFunction,voscmIdentifier,voscmString transparent
+" FIXME: functions should only be allowed after a bracket ... ie (ask ...):
+syn keyword voscmFunction contained abs access after ask before break byte calc ceil command_status concat
+syn keyword voscmFunction contained contents path_name copy count current_dir current_module date date_time
+syn keyword voscmFunction contained decimal directory_name end_of_file exists file_info floor given group_name
+syn keyword voscmFunction contained has_access hexadecimal home_dir index iso_date iso_date_time language_name
+syn keyword voscmFunction contained length lock_type locked ltrim master_disk max message min mod module_info
+syn keyword voscmFunction contained module_name object_name online path_name person_name process_dir process_info
+syn keyword voscmFunction contained process_type quote rank referencing_dir reverse rtrim search
+syn keyword voscmFunction contained software_purchased string substitute substr system_name terminal_info
+syn keyword voscmFunction contained terminal_name time translate trunc unique_string unquote user_name verify
+syn keyword voscmFunction contained where_path
+syn keyword voscmTodo contained TODO FIXME XXX DEBUG NOTE
+syn match voscmTab "\t\+"
+
+syn keyword voscmCommand add_entry_names add_library_path add_profile analyze_pc_samples attach_default_output attach_port batch bind break_process c c_preprocess call_thru cancel_batch_requests cancel_device_reservation cancel_print_requests cc change_current_dir check_posix cobol comment_on_manual compare_dirs compare_files convert_text_file copy_dir copy_file copy_tape cpp create_data_object create_deleted_record_index create_dir create_file create_index create_record_index create_tape_volumes cvt_fixed_to_stream cvt_stream_to_fixed debug delete_dir delete_file delete_index delete_library_path detach_default_output detach_port dismount_tape display display_access display_access_list display_batch_status display_current_dir display_current_module display_date_time display_default_access_list display_device_info display_dir_status display_disk_info display_disk_usage display_error display_file display_file_status display_line display_notices display_object_module_info display_print_defaults display_print_status display_program_module display_system_usage display_tape_params display_terminal_parameters dump_file dump_record dump_tape edit edit_form emacs enforce_region_locks fortran get_external_variable give_access give_default_access handle_sig_dfl harvest_pc_samples help kill line_edit link link_dirs list list_batch_requests list_devices list_gateways list_library_paths list_modules list_port_attachments list_print_requests list_process_cmd_limits list_save_tape list_systems list_tape list_terminal_types list_users locate_files locate_large_files login logout mount_tape move_device_reservation move_dir move_file mp_debug nls_edit_form pascal pl1 position_tape preprocess_file print profile propagate_access read_tape ready remove_access remove_default_access rename reserve_device restore_object save_object send_message set set_cpu_time_limit set_expiration_date set_external_variable set_file_allocation set_implicit_locking set_index_flags set_language set_library_paths set_line_wrap_width set_log_protected_file set_owner_access set_pipe_file set_priority set_ready set_safety_switch set_second_tape set_tape_drive_params set_tape_file_params set_tape_mount_params set_terminal_parameters set_text_file set_time_zone sleep sort start_logging start_process stop_logging stop_process tail_file text_data_merge translate_links truncate_file unlink update_batch_requests update_print_requests update_process_cmd_limits use_abbreviations use_message_file vcc verify_posix_access verify_save verify_system_access walk_dir where_command where_path who_locked write_tape
+
+syn match voscmIdentifier "&[A-Za-z][a-z0-9_A-Z]*&"
+
+syn match voscmString "'[^']*'"
+
+" Number formats
+syn match voscmNumber "\<\d\+\>"
+"Floating point number part only
+syn match voscmDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>"
+
+"syn region voscmComment start="^[ ]*&[ ]+" end="$"
+"syn match voscmComment "^[ ]*&[ ].*$"
+"syn match voscmComment "^&$"
+syn region voscmComment start="^[ ]*&[ ]" end="$" contains=voscmTodo
+syn match voscmComment "^&$"
+syn match voscmContinuation "&+$"
+
+"syn match voscmIdentifier "[A-Za-z0-9&._-]\+"
+
+"Synchronization with Statement terminator $
+" syn sync maxlines=100
+
+hi def link voscmConditional Conditional
+hi def link voscmStatement Statement
+hi def link voscmSetvar Statement
+hi def link voscmNumber Number
+hi def link voscmDecimalNumber Float
+hi def link voscmString String
+hi def link voscmIdentifier Identifier
+hi def link voscmVariable Identifier
+hi def link voscmComment Comment
+hi def link voscmJump Statement
+hi def link voscmContinuation Macro
+hi def link voscmLabelId String
+hi def link voscmParamList NONE
+hi def link voscmParamId Identifier
+hi def link voscmParamName String
+hi def link voscmParam Statement
+hi def link voscmParamKeyword Statement
+hi def link voscmFunction Function
+hi def link voscmCommand Structure
+"hi def link voscmIdentifier NONE
+"hi def link voscmSpecial Special " not used
+hi def link voscmTodo Todo
+hi def link voscmTab Error
+hi def link voscmError Error
+
+let b:current_syntax = "voscm"
+
+" vim: ts=8
diff --git a/runtime/syntax/xpm2.vim b/runtime/syntax/xpm2.vim
index 3a3de6f54..b057946c1 100644
--- a/runtime/syntax/xpm2.vim
+++ b/runtime/syntax/xpm2.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: X Pixmap v2
" Maintainer: Steve Wall (hitched97@velnet.com)
-" Last Change: 2001 Apr 25
+" Last Change: 2008 May 28
" Version: 5.8
"
" Made from xpm.vim by Ronald Schild <rs@scutum.de>
@@ -50,9 +50,15 @@ if has("gui_running")
let colors = substitute(s, '\s*\d\+\s\+\d\+\s\+\(\d\+\).*', '\1', '')
" get the 4th value: cpp = number of character per pixel
let cpp = substitute(s, '\s*\d\+\s\+\d\+\s\+\d\+\s\+\(\d\+\).*', '\1', '')
+ if cpp =~ '[^0-9]'
+ break " if cpp is not made of digits there must be something wrong
+ endif
- " highlight the Values string as normal string (no pixel string)
- exe 'syn match xpm2Values /'.s.'/'
+ " Highlight the Values string as normal string (no pixel string).
+ " Only when there is no slash, it would terminate the pattern.
+ if s !~ '/'
+ exe 'syn match xpm2Values /' . s . '/'
+ endif
HiLink xpm2Values Statement
let n = 1 " n = color index
@@ -118,7 +124,7 @@ if has("gui_running")
" if no color or color = "None" show background
if color == "" || substitute(color, '.*', '\L&', '') == 'none'
exe 'Hi xpm2Color'.n.' guifg=bg guibg=NONE'
- else
+ elseif color !~ "'"
exe 'Hi xpm2Color'.n." guifg='".color."' guibg='".color."'"
endif
let n = n + 1