blob: 73629b14950089f2ae4586349a46c437d40d2832 [file] [log] [blame]
Bram Moolenaar89a9c152021-08-29 21:55:35 +02001" Vim syntax file
2" Language: Structurizr DSL
3" Maintainer: Bastian Venthur <venthur@debian.org>
4" Last Change: 2021-08-16
5" Remark: For a language reference, see
6" https://github.com/structurizr/dsl
7
8
9if exists("b:current_syntax")
10 finish
11endif
12
13syn case ignore
14
15" comments
16syn match scomment "#.*$"
17syn match scomment "//.*$"
18syn region scomment start="/\*" end="\*/"
19
20" keywords
21syn keyword skeyword animation
22syn keyword skeyword autoLayout
23syn keyword skeyword branding
24syn keyword skeyword component
25syn keyword skeyword configuration
26syn keyword skeyword container
27syn keyword skeyword containerinstance
28syn keyword skeyword custom
29syn keyword skeyword deployment
30syn keyword skeyword deploymentenvironment
31syn keyword skeyword deploymentgroup
32syn keyword skeyword deploymentnode
33syn keyword skeyword dynamic
34syn keyword skeyword element
35syn keyword skeyword enterprise
36syn keyword skeyword exclude
37syn keyword skeyword filtered
38syn keyword skeyword group
39syn keyword skeyword healthcheck
40syn keyword skeyword impliedrelationships
41syn keyword skeyword include
42syn keyword skeyword infrastructurenode
43syn keyword skeyword model
44syn keyword skeyword person
45syn keyword skeyword perspectives
46syn keyword skeyword properties
47syn keyword skeyword relationship
48syn keyword skeyword softwaresystem
49syn keyword skeyword softwaresysteminstance
50syn keyword skeyword styles
51syn keyword skeyword systemcontext
52syn keyword skeyword systemlandscape
53syn keyword skeyword tags
54syn keyword skeyword terminology
55syn keyword skeyword theme
56syn keyword skeyword title
57syn keyword skeyword url
58syn keyword skeyword users
59syn keyword skeyword views
60syn keyword skeyword workspace
61
62syn match skeyword "\!adrs\s\+"
63syn match skeyword "\!constant\s\+"
64syn match skeyword "\!docs\s\+"
65syn match skeyword "\!identifiers\s\+"
66syn match skeyword "\!include\s\+"
67
68syn region sstring oneline start='"' end='"'
69
70syn region sblock start='{' end='}' fold transparent
71
72hi def link sstring string
73hi def link scomment comment
74hi def link skeyword keyword
75
76let b:current_syntax = "structurizr"