blob: 08a6b357f04a25f3186affecc7d16b9dfba7c17f [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: GDMO
3" (ISO-10165-4; Guidelines for the Definition of Managed Object)
4" Maintainer: Gyuman Kim <violino@dooly.modacom.co.kr>
5" URL: http://dooly.modacom.co.kr/gdmo.vim
6" Last change: 2001 Sep 02
7
8" For version 5.x: Clear all syntax items
9" For version 6.x: Quit when a syntax file was already loaded
10if version < 600
11 syntax clear
12elseif exists("b:current_syntax")
13 finish
14endif
15
16" keyword definitions
17syn match gdmoCategory "MANAGED\s\+OBJECT\s\+CLASS"
18syn keyword gdmoCategory NOTIFICATION ATTRIBUTE BEHAVIOUR PACKAGE ACTION
19syn match gdmoCategory "NAME\s\+BINDING"
20syn match gdmoRelationship "DERIVED\s\+FROM"
21syn match gdmoRelationship "SUPERIOR\s\+OBJECT\s\+CLASS"
22syn match gdmoRelationship "SUBORDINATE\s\+OBJECT\s\+CLASS"
23syn match gdmoExtension "AND\s\+SUBCLASSES"
24syn match gdmoDefinition "DEFINED\s\+AS"
25syn match gdmoDefinition "REGISTERED\s\+AS"
26syn match gdmoExtension "ORDER\s\+BY"
27syn match gdmoReference "WITH\s\+ATTRIBUTE"
28syn match gdmoReference "WITH\s\+INFORMATION\s\+SYNTAX"
29syn match gdmoReference "WITH\s\+REPLY\s\+SYNTAX"
30syn match gdmoReference "WITH\s\+ATTRIBUTE\s\+SYNTAX"
31syn match gdmoExtension "AND\s\+ATTRIBUTE\s\+IDS"
32syn match gdmoExtension "MATCHES\s\+FOR"
33syn match gdmoReference "CHARACTERIZED\s\+BY"
34syn match gdmoReference "CONDITIONAL\s\+PACKAGES"
35syn match gdmoExtension "PRESENT\s\+IF"
36syn match gdmoExtension "DEFAULT\s\+VALUE"
37syn match gdmoExtension "PERMITTED\s\+VALUES"
38syn match gdmoExtension "REQUIRED\s\+VALUES"
39syn match gdmoExtension "NAMED\s\+BY"
40syn keyword gdmoReference ATTRIBUTES NOTIFICATIONS ACTIONS
41syn keyword gdmoExtension DELETE CREATE
42syn keyword gdmoExtension EQUALITY SUBSTRINGS ORDERING
43syn match gdmoExtension "REPLACE-WITH-DEFAULT"
44syn match gdmoExtension "GET"
45syn match gdmoExtension "GET-REPLACE"
46syn match gdmoExtension "ADD-REMOVE"
47syn match gdmoExtension "WITH-REFERENCE-OBJECT"
48syn match gdmoExtension "WITH-AUTOMATIC-INSTANCE-NAMING"
49syn match gdmoExtension "ONLY-IF-NO-CONTAINED-OBJECTS"
50
51
52" Strings and constants
53syn match gdmoSpecial contained "\\\d\d\d\|\\."
54syn region gdmoString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gdmoSpecial
55syn match gdmoCharacter "'[^\\]'"
56syn match gdmoSpecialCharacter "'\\.'"
57syn match gdmoNumber "0[xX][0-9a-fA-F]\+\>"
58syn match gdmoLineComment "--.*"
59syn match gdmoLineComment "--.*--"
60
61syn match gdmoDefinition "^\s*[a-zA-Z][-a-zA-Z0-9_.\[\] \t{}]* *::="me=e-3
62syn match gdmoBraces "[{}]"
63
64syn sync ccomment gdmoComment
65
66" Define the default highlighting.
67" For version 5.7 and earlier: only when not done already
68" For version 5.8 and later: only when an item doesn't have highlighting yet
69if version >= 508 || !exists("did_gdmo_syntax_inits")
70 if version < 508
71 let did_gdmo_syntax_inits = 1
72 command -nargs=+ HiLink hi link <args>
73 else
74 command -nargs=+ HiLink hi def link <args>
75 endif
76
77 HiLink gdmoCategory Structure
78 HiLink gdmoRelationship Macro
79 HiLink gdmoDefinition Statement
80 HiLink gdmoReference Type
81 HiLink gdmoExtension Operator
82 HiLink gdmoBraces Function
83 HiLink gdmoSpecial Special
84 HiLink gdmoString String
85 HiLink gdmoCharacter Character
86 HiLink gdmoSpecialCharacter gdmoSpecial
87 HiLink gdmoComment Comment
88 HiLink gdmoLineComment gdmoComment
89 HiLink gdmoType Type
90
91 delcommand HiLink
92endif
93
94let b:current_syntax = "gdmo"
95
96" vim: ts=8