43 lines
1.2 KiB
VimL
43 lines
1.2 KiB
VimL
" Vim syntax file
|
|
" Language: MGS
|
|
" Filenames: *.mgs
|
|
" Maintainers: Martin Potier <mpotier@lacl.fr>
|
|
" Last Change: 2015 April 10 - Initial file
|
|
|
|
if exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
" MGS is case sensitive.
|
|
syn case match
|
|
|
|
" Keywords
|
|
syn keyword mgsIfThenElseFi if then else fi
|
|
syn keyword mgsKeywords fun trans gbf
|
|
|
|
" Comments
|
|
syn match mgsLineComment "//.*$" contains=mgsLineComment,mgsOCamlLikeComment,mgsCppLikeComment
|
|
syn region mgsOCamlLikeComment start="(\*" end="\*)" contains=mgsLineComment,mgsOCamlLikeComment,mgsCppLikeComment
|
|
syn region mgsCppLikeComment start="/\*" end="\*/" contains=mgsLineComment,mgsOCamlLikeComment,mgsCppLikeComment
|
|
|
|
" Command block
|
|
syn region mgsCommandBlock start="^!set" end=";;"
|
|
|
|
" Strings
|
|
syn region mgsString start=+"+ skip=+\\\\\|\\"+ end=+"+
|
|
|
|
let b:current_syntax = "mgs"
|
|
|
|
hi def link mgsKeywords Statement
|
|
hi def link mgsIfThenElseFi Statement
|
|
hi def link mgsLineComment Comment
|
|
hi def link mgsOCamlLikeComment Comment
|
|
hi def link mgsCppLikeComment Comment
|
|
hi def link mgsCommandBlock PreProc
|
|
hi def link mgsString Constant
|
|
|
|
"hi def link celTodo Todo
|
|
"hi def link celHip Type
|
|
"hi def link celString Constant
|
|
"hi def link celNumber Constant
|