Mercurial > vim
annotate runtime/syntax/lotos.vim @ 32169:763fac292d5e
Added tag v9.0.1415 for changeset 6bdf843c30231851efbb85a230e9e5e5d9cacd34
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 19 Mar 2023 21:45:06 +0100 |
parents | 46763b01cd9a |
children |
rev | line source |
---|---|
7 | 1 " Vim syntax file |
2 " Language: LOTOS (Language Of Temporal Ordering Specifications, IS8807) | |
3 " Maintainer: Daniel Amyot <damyot@csi.uottawa.ca> | |
4 " Last Change: Wed Aug 19 1998 | |
5 " URL: http://lotos.csi.uottawa.ca/~damyot/vim/lotos.vim | |
6 " This file is an adaptation of pascal.vim by Mario Eusebio | |
7 " 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 | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
7
diff
changeset
|
10 " quit when a syntax file was already loaded |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
7
diff
changeset
|
11 if exists("b:current_syntax") |
7 | 12 finish |
13 endif | |
14 | |
15 syn case ignore | |
16 | |
17 "Comments in LOTOS are between (* and *) | |
18 syn region lotosComment start="(\*" end="\*)" contains=lotosTodo | |
19 | |
20 "Operators [], [...], >>, ->, |||, |[...]|, ||, ;, !, ?, :, =, ,, := | |
21 syn match lotosDelimiter "[][]" | |
22 syn match lotosDelimiter ">>" | |
23 syn match lotosDelimiter "->" | |
24 syn match lotosDelimiter "\[>" | |
25 syn match lotosDelimiter "[|;!?:=,]" | |
26 | |
27 "Regular keywords | |
28 syn keyword lotosStatement specification endspec process endproc | |
29 syn keyword lotosStatement where behaviour behavior | |
30 syn keyword lotosStatement any let par accept choice hide of in | |
31 syn keyword lotosStatement i stop exit noexit | |
32 | |
33 "Operators from the Abstract Data Types in IS8807 | |
34 syn keyword lotosOperator eq ne succ and or xor implies iff | |
35 syn keyword lotosOperator not true false | |
36 syn keyword lotosOperator Insert Remove IsIn NotIn Union Ints | |
37 syn keyword lotosOperator Minus Includes IsSubsetOf | |
38 syn keyword lotosOperator lt le ge gt 0 | |
39 | |
40 "Sorts in IS8807 | |
41 syn keyword lotosSort Boolean Bool FBoolean FBool Element | |
42 syn keyword lotosSort Set String NaturalNumber Nat HexString | |
43 syn keyword lotosSort HexDigit DecString DecDigit | |
44 syn keyword lotosSort OctString OctDigit BitString Bit | |
45 syn keyword lotosSort Octet OctetString | |
46 | |
47 "Keywords for ADTs | |
48 syn keyword lotosType type endtype library endlib sorts formalsorts | |
49 syn keyword lotosType eqns formaleqns opns formalopns forall ofsort is | |
50 syn keyword lotosType for renamedby actualizedby sortnames opnnames | |
51 syn keyword lotosType using | |
52 | |
53 syn sync lines=250 | |
54 | |
55 " Define the default highlighting. | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
7
diff
changeset
|
56 " Only when an item doesn't have highlighting yet |
7 | 57 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
58 hi def link lotosStatement Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
59 hi def link lotosProcess Label |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
60 hi def link lotosOperator Operator |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
61 hi def link lotosSort Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
62 hi def link lotosType Type |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
63 hi def link lotosComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
64 hi def link lotosDelimiter String |
7 | 65 |
66 | |
67 let b:current_syntax = "lotos" | |
68 | |
69 " vim: ts=8 |