69 lines
1.6 KiB
VimL
69 lines
1.6 KiB
VimL
" Maude syntax file.
|
|
|
|
if exists('b:current_syntax')
|
|
finish
|
|
endif
|
|
let b:current_syntax = 'maude'
|
|
|
|
" also most other things...
|
|
setlocal iskeyword+=-
|
|
|
|
setlocal commentstring=***%s comments=b:***,b:---
|
|
|
|
|
|
syn keyword maudeModule mod endm fmod endfm th endth fth endfth is
|
|
hi def link maudeModule Structure
|
|
|
|
syn keyword maudeView view from to endv
|
|
hi def link maudeView maudeModule
|
|
|
|
syn keyword maudeImport protecting pr including inc extending ex
|
|
hi def link maudeImport Include
|
|
|
|
syn keyword maudeSort sort sorts subsort subsorts
|
|
hi def link maudeSort StorageClass
|
|
|
|
|
|
syn keyword maudeOp op ops
|
|
hi def link maudeOp Constant
|
|
|
|
syn keyword maudeVar var vars
|
|
hi def link maudeVar Identifier
|
|
|
|
syn keyword maudeEq eq ceq
|
|
hi def link maudeEq Function
|
|
|
|
syn keyword maudeRl rl crl
|
|
hi def link maudeRl maudeEq
|
|
|
|
syn keyword maudeMb mb cmb
|
|
hi def link maudeMb maudeEq
|
|
|
|
syn keyword maudeIf if
|
|
syn match maudeIf '/\\'
|
|
hi def link maudeIf Conditional
|
|
|
|
syn match maudeUnderscore '_'
|
|
hi def link maudeUnderscore Special
|
|
|
|
syn match maudePunc '\%(^\|\s\)\zs\%(::\?\|->\|=>\|=\%(=\|/=\)\?\)\ze\%(\s\|$\)'
|
|
hi def link maudePunc Operator
|
|
|
|
syn match maudeDelim '[{}\[\](),]\|\%(^\|\s\)\zs\.\ze\%(\s\|$\)'
|
|
hi def link maudeDelim Delimiter
|
|
|
|
|
|
syn keyword maudeCommand reduce red rewrite rew load set quit
|
|
hi def link maudeCommand Special
|
|
|
|
|
|
syn region maudeComment start='\%(^\|\s\)\zs\%(\*\*\*\|---\)' end='$'
|
|
\ contains=maudeCommentP,maudeTodo
|
|
hi def link maudeComment Comment
|
|
syn region maudeCommentP contained start='(' end=')'
|
|
\ contains=maudeCommentP,maudeTodo
|
|
hi def link maudeCommentP maudeComment
|
|
|
|
syn keyword maudeTodo contained TODO FIXME XXX
|
|
hi def link maudeTodo Todo
|