mirror of
https://github.com/vim/vim
synced 2025-03-16 14:57:52 +01:00
63 lines
1.8 KiB
VimL
63 lines
1.8 KiB
VimL
" Vim syntax file
|
|
" Language: Mathematica
|
|
" Maintainer: Wolfgang Waltenberger <wwalten@ben.tuwien.ac.at>
|
|
" Last Change: Thu 26 Apr 2001 13:20:03 CEST
|
|
|
|
if version < 600
|
|
syntax clear
|
|
elseif exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
syn match mmaError "\*)"
|
|
syn match mmaFixme "FIXME"
|
|
syn region mmaComment start=+(\*+ end=+\*)+ skipempty contains=mmaFixme
|
|
syn match mmaMessage "\a*::\a*"
|
|
syn region mmaString start=+'+ end=+'+
|
|
syn region mmaString start=+"+ end=+"+
|
|
syn region mmaString start=+\\\"+ end=+\"+
|
|
syn region mmaString start=+\"+ end=+\"+
|
|
|
|
syn match mmaVariable "$\a*"
|
|
|
|
syn match mmaPattern "[A-Za-z01-9`]*_\{1,3}"
|
|
syn match mmaPattern "[A-Za-z01-9`]*_\{1,3}\(Integer\|Real\|Pattern\|Symbol\)"
|
|
syn match mmaPattern "[A-Za-z01-9`]*_\{1,3}\(Rational\|Complex\|Head\)"
|
|
syn match mmaPattern "[A-Za-z01-9`]*_\{1,3}?[A-Za-z01-9`]*"
|
|
|
|
" prefix/infix/postfix notations
|
|
syn match mmaGenericFunction "[A-Za-z01-9`]*\s*\(\[\|@\)"he=e-1
|
|
syn match mmaGenericFunction "[A-Za-z01-9`]*\s*\(/@\|@@\)"he=e-2
|
|
syn match mmaGenericFunction "\~\s*[A-Za-z01-9`]*\s*\~"hs=s+1,he=e-1
|
|
syn match mmaGenericFunction "//\s*[A-Za-z01-9`]*"hs=s+2
|
|
syn match mmaOperator "/;"
|
|
|
|
syn match mmaPureFunction "#\d*"
|
|
syn match mmaPureFunction "&"
|
|
|
|
syn match mmaUnicode "\\\[[a-zA-Z01-9]*\]"
|
|
|
|
if version >= 508 || !exists("did_mma_syn_inits")
|
|
if version < 508
|
|
let did_mma_syn_inits = 1
|
|
command -nargs=+ HiLink hi link <args>
|
|
else
|
|
command -nargs=+ HiLink hi def link <args>
|
|
endif
|
|
|
|
HiLink mmaOperator Operator
|
|
HiLink mmaVariable Identifier
|
|
HiLink mmaString String
|
|
HiLink mmaUnicode String
|
|
HiLink mmaMessage Identifier
|
|
HiLink mmaPattern Identifier
|
|
HiLink mmaGenericFunction Function
|
|
HiLink mmaError Error
|
|
HiLink mmaFixme Error
|
|
HiLink mmaComment Comment
|
|
HiLink mmaPureFunction Operator
|
|
|
|
delcommand HiLink
|
|
endif
|
|
|
|
let b:current_syntax = "mma"
|