codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: LOTOS (Language Of Temporal Ordering Specifications, IS8807)3" Maintainer: Daniel Amyot <damyot@csi.uottawa.ca>4" Last Change: Wed Aug 19 19985" URL: http://lotos.csi.uottawa.ca/~damyot/vim/lotos.vim6" This file is an adaptation of pascal.vim by Mario Eusebio7" I'm not sure I understand all of the syntax highlight language,8" but this file seems to do the job for standard LOTOS.9 10" quit when a syntax file was already loaded11if exists("b:current_syntax")12 finish13endif14 15syn case ignore16 17"Comments in LOTOS are between (* and *)18syn region lotosComment start="(\*" end="\*)" contains=lotosTodo19 20"Operators [], [...], >>, ->, |||, |[...]|, ||, ;, !, ?, :, =, ,, :=21syn match lotosDelimiter "[][]"22syn match lotosDelimiter ">>"23syn match lotosDelimiter "->"24syn match lotosDelimiter "\[>"25syn match lotosDelimiter "[|;!?:=,]"26 27"Regular keywords28syn keyword lotosStatement specification endspec process endproc29syn keyword lotosStatement where behaviour behavior30syn keyword lotosStatement any let par accept choice hide of in31syn keyword lotosStatement i stop exit noexit32 33"Operators from the Abstract Data Types in IS880734syn keyword lotosOperator eq ne succ and or xor implies iff35syn keyword lotosOperator not true false36syn keyword lotosOperator Insert Remove IsIn NotIn Union Ints37syn keyword lotosOperator Minus Includes IsSubsetOf38syn keyword lotosOperator lt le ge gt 039 40"Sorts in IS880741syn keyword lotosSort Boolean Bool FBoolean FBool Element42syn keyword lotosSort Set String NaturalNumber Nat HexString43syn keyword lotosSort HexDigit DecString DecDigit44syn keyword lotosSort OctString OctDigit BitString Bit45syn keyword lotosSort Octet OctetString46 47"Keywords for ADTs48syn keyword lotosType type endtype library endlib sorts formalsorts49syn keyword lotosType eqns formaleqns opns formalopns forall ofsort is50syn keyword lotosType for renamedby actualizedby sortnames opnnames51syn keyword lotosType using52 53syn sync lines=25054 55" Define the default highlighting.56" Only when an item doesn't have highlighting yet57 58hi def link lotosStatement Statement59hi def link lotosProcess Label60hi def link lotosOperator Operator61hi def link lotosSort Function62hi def link lotosType Type63hi def link lotosComment Comment64hi def link lotosDelimiter String65 66 67let b:current_syntax = "lotos"68 69" vim: ts=870 