summaryrefslogtreecommitdiff
path: root/runtime/syntax
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-04-14 20:42:25 +0000
committerBram Moolenaar <Bram@vim.org>2006-04-14 20:42:25 +0000
commit9e54a0e753578e10910a842d631cffde32d1f133 (patch)
tree493fbfc4e3c943016355f7fd131bd6eadf02fd0a /runtime/syntax
parent7fc904b610d5739dd7b72fb2f6b0e4b330c97179 (diff)
downloadvim-git-9e54a0e753578e10910a842d631cffde32d1f133.tar.gz
updated for version 7.0d04v7.0d04
Diffstat (limited to 'runtime/syntax')
-rw-r--r--runtime/syntax/html.vim138
-rw-r--r--runtime/syntax/idl.vim17
-rw-r--r--runtime/syntax/javascript.vim4
-rw-r--r--runtime/syntax/mma.vim92
-rw-r--r--runtime/syntax/netrw.vim (renamed from runtime/syntax/netrwlist.vim)0
-rw-r--r--runtime/syntax/nroff.vim6
6 files changed, 158 insertions, 99 deletions
diff --git a/runtime/syntax/html.vim b/runtime/syntax/html.vim
index a76dfccdc..85f9a0254 100644
--- a/runtime/syntax/html.vim
+++ b/runtime/syntax/html.vim
@@ -2,7 +2,7 @@
" Language: HTML
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/html.vim
-" Last Change: 2005 Jul 20
+" Last Change: 2006 April 13
" Please check :help html.vim for some comments and a description of the options
@@ -27,10 +27,6 @@ endif
syn case ignore
-if main_syntax == "html"
- syn spell toplevel
-endif
-
" mark illegal characters
syn match htmlError "[<>&]"
@@ -39,8 +35,8 @@ syn match htmlError "[<>&]"
syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc
-syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError
-syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
+syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError
+syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
syn match htmlTagError contained "[^>]<"ms=s+1
@@ -101,13 +97,13 @@ syn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};"
" Comments (the real ones or the old netscape ones)
if exists("html_wrong_comments")
- syn region htmlComment start=+<!--+ end=+--\s*>+
+ syn region htmlComment start=+<!--+ end=+--\s*>+
else
- syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError
+ syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError
syn match htmlCommentError contained "[^><!]"
syn region htmlCommentPart contained start=+--+ end=+--\s*+ contains=@htmlPreProc
endif
-syn region htmlComment start=+<!DOCTYPE+ keepend end=+>+
+syn region htmlComment start=+<!DOCTYPE+ keepend end=+>+
" server-parsed commands
syn region htmlPreProc start=+<!--#+ end=+-->+ contains=htmlPreStmt,htmlPreError,htmlPreAttr
@@ -158,14 +154,14 @@ if !exists("html_no_rendering")
syn region htmlH5 start="<h5\>" end="</h5>"me=e-5 contains=@htmlTop
syn region htmlH6 start="<h6\>" end="</h6>"me=e-5 contains=@htmlTop
syn region htmlHead start="<head\>" end="</head>"me=e-7 end="<body\>"me=e-5 end="<h[1-6]\>"me=e-3 contains=htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,htmlTitle,javaScript,cssStyle,@htmlPreproc
- syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
+ syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
endif
-syn keyword htmlTagName contained noscript
+syn keyword htmlTagName contained noscript
syn keyword htmlSpecialTagName contained script style
if main_syntax != 'java' || exists("java_javascript")
" JAVA SCRIPT
- syn include @htmlJavaScript <sfile>:p:h/javascript.vim
+ syn include @htmlJavaScript syntax/javascript.vim
unlet b:current_syntax
syn region javaScript start=+<script[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
syn region htmlScriptTag contained start=+<script+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
@@ -173,14 +169,14 @@ if main_syntax != 'java' || exists("java_javascript")
" html events (i.e. arguments that include javascript commands)
if exists("html_extended_events")
- syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ contains=htmlEventSQ
- syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ contains=htmlEventDQ
+ syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ contains=htmlEventSQ
+ syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ contains=htmlEventDQ
else
- syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ keepend contains=htmlEventSQ
- syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ keepend contains=htmlEventDQ
+ syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ keepend contains=htmlEventSQ
+ syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ keepend contains=htmlEventDQ
endif
- syn region htmlEventSQ contained start=+'+ms=s+1 end=+'+me=s-1 contains=@htmlJavaScript
- syn region htmlEventDQ contained start=+"+ms=s+1 end=+"+me=s-1 contains=@htmlJavaScript
+ syn region htmlEventSQ contained start=+'+ms=s+1 end=+'+me=s-1 contains=@htmlJavaScript
+ syn region htmlEventDQ contained start=+"+ms=s+1 end=+"+me=s-1 contains=@htmlJavaScript
HtmlHiLink htmlEventSQ htmlEvent
HtmlHiLink htmlEventDQ htmlEvent
@@ -190,7 +186,7 @@ endif
if main_syntax != 'java' || exists("java_vb")
" VB SCRIPT
- syn include @htmlVbScript <sfile>:p:h/vb.vim
+ syn include @htmlVbScript syntax/vb.vim
unlet b:current_syntax
syn region javaScript start=+<script [^>]*language *=[^>]*vbscript[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
endif
@@ -199,8 +195,8 @@ syn cluster htmlJavaScript add=@htmlPreproc
if main_syntax != 'java' || exists("java_css")
" embedded style sheets
- syn keyword htmlArg contained media
- syn include @htmlCss <sfile>:p:h/css.vim
+ syn keyword htmlArg contained media
+ syn include @htmlCss syntax/css.vim
unlet b:current_syntax
syn region cssStyle start=+<style+ keepend end=+</style>+ contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc
syn match htmlCssStyleComment contained "\(<!--\|-->\)"
@@ -223,65 +219,65 @@ if version >= 508 || !exists("did_html_syn_inits")
if version < 508
let did_html_syn_inits = 1
endif
- HtmlHiLink htmlTag Function
- HtmlHiLink htmlEndTag Identifier
- HtmlHiLink htmlArg Type
- HtmlHiLink htmlTagName htmlStatement
- HtmlHiLink htmlSpecialTagName Exception
- HtmlHiLink htmlValue String
- HtmlHiLink htmlSpecialChar Special
-
+ HtmlHiLink htmlTag Function
+ HtmlHiLink htmlEndTag Identifier
+ HtmlHiLink htmlArg Type
+ HtmlHiLink htmlTagName htmlStatement
+ HtmlHiLink htmlSpecialTagName Exception
+ HtmlHiLink htmlValue String
+ HtmlHiLink htmlSpecialChar Special
+
if !exists("html_no_rendering")
- HtmlHiLink htmlH1 Title
- HtmlHiLink htmlH2 htmlH1
- HtmlHiLink htmlH3 htmlH2
- HtmlHiLink htmlH4 htmlH3
- HtmlHiLink htmlH5 htmlH4
- HtmlHiLink htmlH6 htmlH5
- HtmlHiLink htmlHead PreProc
- HtmlHiLink htmlTitle Title
- HtmlHiLink htmlBoldItalicUnderline htmlBoldUnderlineItalic
- HtmlHiLink htmlUnderlineBold htmlBoldUnderline
- HtmlHiLink htmlUnderlineItalicBold htmlBoldUnderlineItalic
- HtmlHiLink htmlUnderlineBoldItalic htmlBoldUnderlineItalic
- HtmlHiLink htmlItalicUnderline htmlUnderlineItalic
- HtmlHiLink htmlItalicBold htmlBoldItalic
- HtmlHiLink htmlItalicBoldUnderline htmlBoldUnderlineItalic
- HtmlHiLink htmlItalicUnderlineBold htmlBoldUnderlineItalic
- HtmlHiLink htmlLink Underlined
+ HtmlHiLink htmlH1 Title
+ HtmlHiLink htmlH2 htmlH1
+ HtmlHiLink htmlH3 htmlH2
+ HtmlHiLink htmlH4 htmlH3
+ HtmlHiLink htmlH5 htmlH4
+ HtmlHiLink htmlH6 htmlH5
+ HtmlHiLink htmlHead PreProc
+ HtmlHiLink htmlTitle Title
+ HtmlHiLink htmlBoldItalicUnderline htmlBoldUnderlineItalic
+ HtmlHiLink htmlUnderlineBold htmlBoldUnderline
+ HtmlHiLink htmlUnderlineItalicBold htmlBoldUnderlineItalic
+ HtmlHiLink htmlUnderlineBoldItalic htmlBoldUnderlineItalic
+ HtmlHiLink htmlItalicUnderline htmlUnderlineItalic
+ HtmlHiLink htmlItalicBold htmlBoldItalic
+ HtmlHiLink htmlItalicBoldUnderline htmlBoldUnderlineItalic
+ HtmlHiLink htmlItalicUnderlineBold htmlBoldUnderlineItalic
+ HtmlHiLink htmlLink Underlined
if !exists("html_my_rendering")
- hi def htmlBold term=bold cterm=bold gui=bold
- hi def htmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline
- hi def htmlBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic
+ hi def htmlBold term=bold cterm=bold gui=bold
+ hi def htmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline
+ hi def htmlBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic
hi def htmlBoldUnderlineItalic term=bold,italic,underline cterm=bold,italic,underline gui=bold,italic,underline
- hi def htmlUnderline term=underline cterm=underline gui=underline
+ hi def htmlUnderline term=underline cterm=underline gui=underline
hi def htmlUnderlineItalic term=italic,underline cterm=italic,underline gui=italic,underline
- hi def htmlItalic term=italic cterm=italic gui=italic
+ hi def htmlItalic term=italic cterm=italic gui=italic
endif
endif
-
- HtmlHiLink htmlPreStmt PreProc
- HtmlHiLink htmlPreError Error
- HtmlHiLink htmlPreProc PreProc
- HtmlHiLink htmlPreAttr String
+
+ HtmlHiLink htmlPreStmt PreProc
+ HtmlHiLink htmlPreError Error
+ HtmlHiLink htmlPreProc PreProc
+ HtmlHiLink htmlPreAttr String
HtmlHiLink htmlPreProcAttrName PreProc
HtmlHiLink htmlPreProcAttrError Error
- HtmlHiLink htmlSpecial Special
- HtmlHiLink htmlSpecialChar Special
- HtmlHiLink htmlString String
- HtmlHiLink htmlStatement Statement
- HtmlHiLink htmlComment Comment
- HtmlHiLink htmlCommentPart Comment
- HtmlHiLink htmlValue String
- HtmlHiLink htmlCommentError htmlError
- HtmlHiLink htmlTagError htmlError
- HtmlHiLink htmlEvent javaScript
- HtmlHiLink htmlError Error
-
- HtmlHiLink javaScript Special
+ HtmlHiLink htmlSpecial Special
+ HtmlHiLink htmlSpecialChar Special
+ HtmlHiLink htmlString String
+ HtmlHiLink htmlStatement Statement
+ HtmlHiLink htmlComment Comment
+ HtmlHiLink htmlCommentPart Comment
+ HtmlHiLink htmlValue String
+ HtmlHiLink htmlCommentError htmlError
+ HtmlHiLink htmlTagError htmlError
+ HtmlHiLink htmlEvent javaScript
+ HtmlHiLink htmlError Error
+
+ HtmlHiLink javaScript Special
HtmlHiLink javaScriptExpression javaScript
HtmlHiLink htmlCssStyleComment Comment
- HtmlHiLink htmlCssDefinition Special
+ HtmlHiLink htmlCssDefinition Special
endif
delcommand HtmlHiLink
diff --git a/runtime/syntax/idl.vim b/runtime/syntax/idl.vim
index 855dc2172..39041fcac 100644
--- a/runtime/syntax/idl.vim
+++ b/runtime/syntax/idl.vim
@@ -1,8 +1,9 @@
" Vim syntax file
" Language: IDL (Interface Description Language)
-" Created By: Jody Goldberg <jody@gnome.org>
-" Maintainer: Michael Geddes <michaelrgeddes@optushome.com.au>
-" Last Change: 2004 Jul 20
+" Created By: Jody Goldberg
+" Maintainer: Michael Geddes <vim@frog.wheelycreek.net>
+" Last Change: Thu Apr 13 2006
+
" This is an experiment. IDL's structure is simple enough to permit a full
" grammar based approach to rather than using a few heuristics. The result
@@ -13,6 +14,10 @@
"
" The more complex of the extensions are disabled by defining idl_no_extensions.
"
+" History:
+" 2.0: Michael's new version
+" 2.1: Support for Vim 7 spell (Anduin Withers)
+"
if exists("b:current_syntax")
finish
@@ -32,7 +37,7 @@ syn match idlSemiColon contained ";"
syn match idlCommaArg contained "," skipempty skipwhite nextgroup=idlSimpDecl
syn region idlArraySize1 contained start=:\[: end=:\]: skipempty skipwhite nextgroup=idlArraySize1,idlError,idlSemiColon,idlCommaArg contains=idlArraySize1,idlLiteral
syn match idlSimpDecl contained "[a-zA-Z][a-zA-Z0-9_]*" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlCommaArg,idlArraySize1
-syn region idlString contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+
+syn region idlString contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+ contains=@Spell
syn match idlLiteral contained "[1-9]\d*\(\.\d*\)\="
syn match idlLiteral contained "0"
syn match idlLiteral contained "\.\d\+"
@@ -42,8 +47,8 @@ syn keyword idlLiteral contained TRUE FALSE
" Comments
syn keyword idlTodo contained TODO FIXME XXX
-syn region idlComment start="/\*" end="\*/" contains=idlTodo
-syn match idlComment "//.*" contains=idlTodo
+syn region idlComment start="/\*" end="\*/" contains=idlTodo,@Spell
+syn match idlComment "//.*" contains=idlTodo,@Spell
syn match idlCommentError "\*/"
" C style Preprocessor
diff --git a/runtime/syntax/javascript.vim b/runtime/syntax/javascript.vim
index 9e959e1de..a1b9e157a 100644
--- a/runtime/syntax/javascript.vim
+++ b/runtime/syntax/javascript.vim
@@ -7,7 +7,7 @@
" (ss) repaired several quoting and grouping glitches
" (ss) fixed regex parsing issue with multiple qualifiers [gi]
" (ss) additional factoring of keywords, globals, and members
-" Last Change: 2005 Nov 12 (ss)
+" Last Change: 2006 Jan 15
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -41,7 +41,7 @@ syn region javaScriptStringS start=+'+ skip=+\\\\\|\\'+ end=+'\|$+ co
syn match javaScriptSpecialCharacter "'\\.'"
syn match javaScriptNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
-syn region javaScriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gi]\{0,2\}\s*$+ end=+/[gi]\{0,2\}\s*[;.,)]+me=e-1 contains=@htmlPreproc oneline
+syn region javaScriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gi]\{0,2\}\s*$+ end=+/[gi]\{0,2\}\s*[;.,)\]}]+me=e-1 contains=@htmlPreproc oneline
syn keyword javaScriptConditional if else switch
syn keyword javaScriptRepeat while for do in
diff --git a/runtime/syntax/mma.vim b/runtime/syntax/mma.vim
index 37988ed07..12aac9cc4 100644
--- a/runtime/syntax/mma.vim
+++ b/runtime/syntax/mma.vim
@@ -1,11 +1,12 @@
" Vim syntax file
" Language: Mathematica
" Maintainer: steve layland <layland@wolfram.com>
-" Last Change: Tue May 10 18:31:00 CDT 2005
-" Source: http://vim.sourceforge.net/scripts/script.php?script_id=1273
-" http://members.wri.com/layland/vim/syntax/mma.vim
-"
+" Last Change: Thu May 19 21:36:04 CDT 2005
+" Source: http://members.wri.com/layland/vim/syntax/mma.vim
+" http://vim.sourceforge.net/scripts/script.php?script_id=1273
+" Id: $Id$
" NOTE:
+"
" Empty .m files will automatically be presumed as Matlab files
" unless you have the following in your .vimrc:
"
@@ -23,6 +24,12 @@
" from the Java vim syntax file by Claudio Fleiner. Thanks!
" o Everything else written by steve <layland@wolfram.com>
"
+" Bugs:
+" o Vim 6.1 didn't really have support for character classes
+" of other named character classes. For example, [\a\d]
+" didn't work. Therefore, a lot of this code uses explicit
+" character classes instead: [0-9a-zA-Z]
+"
" TODO:
" folding
" fix nesting
@@ -78,19 +85,20 @@ syntax keyword mmaVariable Protected Listable OneIdentity Orderless Flat Constan
" Comment Sections:
" this:
" :that:
-syntax match mmaItem "\%(^[( |*\t]*\)\@<=\%(:\+\|\a\)[a-zA-Z0-9 ]\+:" contained contains=@mmaNotes
+syntax match mmaItem "\%(^[( |*\t]*\)\@<=\%(:\+\|\w\)\w\+\%( \w\+\)\{0,3}:" contained contains=@mmaNotes
" Comment Keywords:
syntax keyword mmaTodo TODO NOTE HEY contained
syntax match mmaTodo "X\{3,}" contained
syntax keyword mmaFixme FIX[ME] FIXTHIS BROKEN contained
+syntax match mmaFixme "BUG\%( *\#\=[0-9]\+\)\=" contained
" yay pirates...
syntax match mmaFixme "\%(Y\=A\+R\+G\+\|GRR\+\|CR\+A\+P\+\)\%(!\+\)\=" contained
" EmPHAsis:
" this unnecessary, but whatever :)
-syntax match mmaemPHAsis "\%(^\|\s\)\([_/]\)[a-zA-Z0-9]\+\%(\s\+[a-zA-Z0-9]\+\)*\1\%(\s\|$\)" contained contains=mmaemPHAsis
-syntax match mmaemPHAsis "\%(^\|\s\)(\@<!\*[a-zA-Z0-9]\+\%(\s\+[a-zA-Z0-9]\+\)*)\@!\*\%(\s\|$\)" contained contains=mmaemPHAsis
+syntax match mmaemPHAsis "\%(^\|\s\)\([_/]\)[a-zA-Z0-9]\+\%([- \t':]\+[a-zA-Z0-9]\+\)*\1\%(\s\|$\)" contained contains=mmaemPHAsis
+syntax match mmaemPHAsis "\%(^\|\s\)(\@<!\*[a-zA-Z0-9]\+\%([- \t':]\+[a-zA-Z0-9]\+\)*)\@!\*\%(\s\|$\)" contained contains=mmaemPHAsis
" Regular Comments:
" (* *)
@@ -112,9 +120,11 @@ syntax match mmaCommentStar "^\s*\*\+" contained
" Variables:
" Dollar sign variables
-syntax match mmaVariable "$\a\+\d*"
-" Preceding contexts
-syntax match mmaVariable "`\=\a\+\d*`"
+syntax match mmaVariable "\$\a\+[0-9a-zA-Z$]*"
+
+" Preceding and Following Contexts
+syntax match mmaVariable "`[a-zA-Z$]\+[0-9a-zA-Z$]*" contains=mmaVariable
+syntax match mmaVariable "[a-zA-Z$]\+[0-9a-zA-Z$]*`" contains=mmaVariable
" Strings:
" "string"
@@ -179,9 +189,11 @@ syntax match mmaOperator "[*+=^.:?-]"
syntax match mmaOperator "\%(\~\~\=\)"
syntax match mmaOperator "\%(=\{2,3}\|=\=!=\|||\=\|&&\|!\)" contains=ALLBUT,mmaPureFunction
-" Function Usage Messages:
+" Symbol Tags:
" "SymbolName::item"
-syntax match mmaMessage "$\=\a\+\d*::\a\+\d*"
+"syntax match mmaSymbol "`\=[a-zA-Z$]\+[0-9a-zA-Z$]*\%(`\%([a-zA-Z$]\+[0-9a-zA-Z$]*\)\=\)*" contained
+syntax match mmaMessage "`\=\([a-zA-Z$]\+[0-9a-zA-Z$]*\)\%(`\%([a-zA-Z$]\+[0-9a-zA-Z$]*\)\=\)*::\a\+" contains=mmaMessageType
+syntax match mmaMessageType "::\a\+"hs=s+2 contained
" Pure Functions:
syntax match mmaPureFunction "#\%(#\|\d\+\)\="
@@ -208,7 +220,7 @@ syntax match mmaUnicode "\\\%(\x\{3}\|\.\x\{2}\|:\x\{4}\)"
" Syntax Errors:
syntax match mmaError "\*)" containedin=ALLBUT,@mmaComments,@mmaStrings
-syntax match mmaError "\%([&:|+*/?~-]\{3,}\|[.=]\{4,}\|_\@<=\.\{2,}\|`\{2,}\)" containedin=ALLBUT,@mmaComments,@mmaStrings
+syntax match mmaError "\%([/]{3,}\|[&:|+*?~-]\{3,}\|[.=]\{4,}\|_\@<=\.\{2,}\|`\{2,}\)" containedin=ALLBUT,@mmaComments,@mmaStrings
" Punctuation:
" things that shouldn't really be highlighted, or highlighted
@@ -217,13 +229,56 @@ syntax match mmaError "\%([&:|+*/?~-]\{3,}\|[.=]\{4,}\|_\@<=\.\{2,}\|`\{2,}\)" c
" TODO - use Delimiter group?
syntax match mmaBoring "[(){}]" contained
+" ------------------------------------
+" future explorations...
+" ------------------------------------
" Function Arguments:
" anything between brackets []
-" TODO - make good folds for this.
-"syntax region mmaArgument start="\[" end="]" containedin=ALLBUT,@mmaComments,@mmaCommentStrings transparent fold
-"syntax sync fromstart
+" (fold)
+"syntax region mmaArgument start="\[" end="\]" containedin=ALLBUT,@mmaComments,@mmaStrings transparent fold
+
+" Lists:
+" (fold)
+"syntax region mmaLists start="{" end="}" containedin=ALLBUT,@mmaComments,@mmaStrings transparent fold
+
+" Regions:
+" (fold)
+"syntax region mmaRegion start="(\*\+[^<]*<!--[^>]*\*\+)" end="--> \*)" containedin=ALLBUT,@mmaStrings transparent fold keepend
+
+" show fold text
+set commentstring='(*%s*)'
+"set foldtext=MmaFoldText()
+
+"function MmaFoldText()
+" let line = getline(v:foldstart)
+"
+" let lines = v:foldend-v:foldstart+1
+"
+" let sub = substitute(line, '(\*\+|\*\+)|[-*_]\+', '', 'g')
+"
+" if match(line, '(\*') != -1
+" let lines = lines.' line comment'
+" else
+" let lines = lines.' lines'
+" endif
+"
+" return v:folddashes.' '.lines.' '.sub
+"endf
+
+"this is slow for computing folds, but it does so accurately
+syntax sync fromstart
+
+" but this seems to do alright for non fold syntax coloring.
+" for folding, however, it doesn't get the nesting right.
+" TODO - find sync group for multiline modules? ick...
+
+" sync multi line comments
+"syntax sync match syncComments groupthere NONE "\*)"
+"syntax sync match syncComments groupthere mmaComment "(\*"
+
"set foldmethod=syntax
-"set foldminlines=10
+"set foldnestmax=1
+"set foldminlines=15
if version >= 508 || !exists("did_mma_syn_inits")
if version < 508
@@ -238,12 +293,14 @@ if version >= 508 || !exists("did_mma_syn_inits")
" :so $VIMRUNTIME/syntax/hitest.vim and tweak these to
" look good in yours
+
HiLink mmaComment Comment
HiLink mmaCommentStar Comment
HiLink mmaFunctionComment Comment
HiLink mmaLooseQuote Comment
HiLink mmaGenericFunction Function
HiLink mmaVariable Identifier
+" HiLink mmaSymbol Identifier
HiLink mmaOperator Operator
HiLink mmaPatternOp Operator
HiLink mmaPureFunction Operator
@@ -259,6 +316,7 @@ if version >= 508 || !exists("did_mma_syn_inits")
HiLink mmaTodo Todo
HiLink mmaemPHAsis Special
HiLink mmaFunctionTitle Special
+ HiLink mmaMessageType Special
HiLink mmaItem Preproc
delcommand HiLink
diff --git a/runtime/syntax/netrwlist.vim b/runtime/syntax/netrw.vim
index 8dee30383..8dee30383 100644
--- a/runtime/syntax/netrwlist.vim
+++ b/runtime/syntax/netrw.vim
diff --git a/runtime/syntax/nroff.vim b/runtime/syntax/nroff.vim
index 2f004d605..6f2a13134 100644
--- a/runtime/syntax/nroff.vim
+++ b/runtime/syntax/nroff.vim
@@ -2,7 +2,7 @@
" Language: nroff/groff
" Maintainer: Alejandro López-Valencia <dradul@yahoo.com>
" URL: http://dradul.tripod.com/vim
-" Last Change: 2003 May 24
+" Last Change: 2006 Apr 14
"
" {{{1 Acknowledgements
"
@@ -125,12 +125,12 @@ if exists("b:nroff_is_groff")
"
" GNU troff allows long request names
"
-syn match nroffReqName /[^\t \\\[?]\+/ contained nextgroup=nroffReqArg
+ syn match nroffReqName /[^\t \\\[?]\+/ contained nextgroup=nroffReqArg
else
syn match nroffReqName /[^\t \\\[?]\{1,2}/ contained nextgroup=nroffReqArg
endif
-syn region roffReqArg start=/\S/ skip=/\\$/ end=/$/ contained contains=nroffEscape,@nroffSpecial,nroffString,nroffError,nroffSpaceError,nroffNumBlock,nroffComment
+syn region nroffReqArg start=/\S/ skip=/\\$/ end=/$/ contained contains=nroffEscape,@nroffSpecial,nroffString,nroffError,nroffSpaceError,nroffNumBlock,nroffComment
" {{{2 Conditional: .if .ie .el
syn match nroffReqName /\(if\|ie\)/ contained nextgroup=nroffCond skipwhite