blob: add451456105217a529433a37b6968cbd92092b8 [file] [log] [blame]
Bram Moolenaar3577c6f2008-06-24 21:16:56 +00001" Vim syntax file
Bram Moolenaared39e1d2008-08-09 17:55:22 +00002" Language: ProMeLa
Bram Moolenaar3577c6f2008-06-24 21:16:56 +00003" Maintainer: Maurizio Tranchero <maurizio.tranchero@polito.it> - <maurizio.tranchero@gmail.com>
4" First Release: Mon Oct 16 08:49:46 CEST 2006
Bram Moolenaared39e1d2008-08-09 17:55:22 +00005" Last Change: Thu Aug 7 21:22:48 CEST 2008
6" Version: 0.5
Bram Moolenaar3577c6f2008-06-24 21:16:56 +00007
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02008" quit when a syntax file was already loaded
9if exists("b:current_syntax")
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000010 finish
11endif
12
13" case is significant
14" syn case ignore
15" ProMeLa Keywords
16syn keyword promelaStatement proctype if else while chan do od fi break goto unless
17syn keyword promelaStatement active assert label atomic
18syn keyword promelaFunctions skip timeout run
Bram Moolenaared39e1d2008-08-09 17:55:22 +000019syn keyword promelaTodo contained TODO
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000020" ProMeLa Types
21syn keyword promelaType bit bool byte short int
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000022" Operators and special characters
23syn match promelaOperator "!"
24syn match promelaOperator "?"
25syn match promelaOperator "->"
26syn match promelaOperator "="
27syn match promelaOperator "+"
28syn match promelaOperator "*"
29syn match promelaOperator "/"
30syn match promelaOperator "-"
31syn match promelaOperator "<"
32syn match promelaOperator ">"
33syn match promelaOperator "<="
34syn match promelaOperator ">="
35syn match promelaSpecial "\["
36syn match promelaSpecial "\]"
37syn match promelaSpecial ";"
38syn match promelaSpecial "::"
Bram Moolenaared39e1d2008-08-09 17:55:22 +000039" ProMeLa Comments
40syn region promelaComment start="/\*" end="\*/" contains=promelaTodo,@Spell
41syn match promelaComment "//.*" contains=promelaTodo,@Spell
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000042
43" Class Linking
Bram Moolenaared39e1d2008-08-09 17:55:22 +000044hi def link promelaStatement Statement
45hi def link promelaType Type
46hi def link promelaComment Comment
47hi def link promelaOperator Type
48hi def link promelaSpecial Special
49hi def link promelaFunctions Special
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000050hi def link promelaString String
Bram Moolenaared39e1d2008-08-09 17:55:22 +000051hi def link promelaTodo Todo
Bram Moolenaar3577c6f2008-06-24 21:16:56 +000052
53let b:current_syntax = "promela"