1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: GDMO 3071d4279SBram Moolenaar" (ISO-10165-4; Guidelines for the Definition of Managed Object) 4251e1912SBram Moolenaar" Maintainer: Gyuman (Chester) Kim <[email protected]> 5251e1912SBram Moolenaar" URL: http://classicalprogrammer.wikidot.com/local--files/vim-syntax-file-for-gdmo/gdmo.vim 6251e1912SBram Moolenaar" Last change: 8th June, 2011 7071d4279SBram Moolenaar 889bcfda6SBram Moolenaar" quit when a syntax file was already loaded 989bcfda6SBram Moolenaarif exists("b:current_syntax") 10071d4279SBram Moolenaar finish 11071d4279SBram Moolenaarendif 12071d4279SBram Moolenaar 13071d4279SBram Moolenaar" keyword definitions 14071d4279SBram Moolenaarsyn match gdmoCategory "MANAGED\s\+OBJECT\s\+CLASS" 15071d4279SBram Moolenaarsyn keyword gdmoCategory NOTIFICATION ATTRIBUTE BEHAVIOUR PACKAGE ACTION 16071d4279SBram Moolenaarsyn match gdmoCategory "NAME\s\+BINDING" 17071d4279SBram Moolenaarsyn match gdmoRelationship "DERIVED\s\+FROM" 18071d4279SBram Moolenaarsyn match gdmoRelationship "SUPERIOR\s\+OBJECT\s\+CLASS" 19071d4279SBram Moolenaarsyn match gdmoRelationship "SUBORDINATE\s\+OBJECT\s\+CLASS" 20071d4279SBram Moolenaarsyn match gdmoExtension "AND\s\+SUBCLASSES" 21071d4279SBram Moolenaarsyn match gdmoDefinition "DEFINED\s\+AS" 22071d4279SBram Moolenaarsyn match gdmoDefinition "REGISTERED\s\+AS" 23071d4279SBram Moolenaarsyn match gdmoExtension "ORDER\s\+BY" 24071d4279SBram Moolenaarsyn match gdmoReference "WITH\s\+ATTRIBUTE" 25071d4279SBram Moolenaarsyn match gdmoReference "WITH\s\+INFORMATION\s\+SYNTAX" 26071d4279SBram Moolenaarsyn match gdmoReference "WITH\s\+REPLY\s\+SYNTAX" 27071d4279SBram Moolenaarsyn match gdmoReference "WITH\s\+ATTRIBUTE\s\+SYNTAX" 28071d4279SBram Moolenaarsyn match gdmoExtension "AND\s\+ATTRIBUTE\s\+IDS" 29071d4279SBram Moolenaarsyn match gdmoExtension "MATCHES\s\+FOR" 30071d4279SBram Moolenaarsyn match gdmoReference "CHARACTERIZED\s\+BY" 31071d4279SBram Moolenaarsyn match gdmoReference "CONDITIONAL\s\+PACKAGES" 32071d4279SBram Moolenaarsyn match gdmoExtension "PRESENT\s\+IF" 33071d4279SBram Moolenaarsyn match gdmoExtension "DEFAULT\s\+VALUE" 34071d4279SBram Moolenaarsyn match gdmoExtension "PERMITTED\s\+VALUES" 35071d4279SBram Moolenaarsyn match gdmoExtension "REQUIRED\s\+VALUES" 36071d4279SBram Moolenaarsyn match gdmoExtension "NAMED\s\+BY" 37071d4279SBram Moolenaarsyn keyword gdmoReference ATTRIBUTES NOTIFICATIONS ACTIONS 38071d4279SBram Moolenaarsyn keyword gdmoExtension DELETE CREATE 39071d4279SBram Moolenaarsyn keyword gdmoExtension EQUALITY SUBSTRINGS ORDERING 40071d4279SBram Moolenaarsyn match gdmoExtension "REPLACE-WITH-DEFAULT" 41071d4279SBram Moolenaarsyn match gdmoExtension "GET" 42071d4279SBram Moolenaarsyn match gdmoExtension "GET-REPLACE" 43071d4279SBram Moolenaarsyn match gdmoExtension "ADD-REMOVE" 44071d4279SBram Moolenaarsyn match gdmoExtension "WITH-REFERENCE-OBJECT" 45071d4279SBram Moolenaarsyn match gdmoExtension "WITH-AUTOMATIC-INSTANCE-NAMING" 46071d4279SBram Moolenaarsyn match gdmoExtension "ONLY-IF-NO-CONTAINED-OBJECTS" 47071d4279SBram Moolenaar 48071d4279SBram Moolenaar 49071d4279SBram Moolenaar" Strings and constants 50071d4279SBram Moolenaarsyn match gdmoSpecial contained "\\\d\d\d\|\\." 51071d4279SBram Moolenaarsyn region gdmoString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gdmoSpecial 52071d4279SBram Moolenaarsyn match gdmoCharacter "'[^\\]'" 53071d4279SBram Moolenaarsyn match gdmoSpecialCharacter "'\\.'" 54071d4279SBram Moolenaarsyn match gdmoNumber "0[xX][0-9a-fA-F]\+\>" 55071d4279SBram Moolenaarsyn match gdmoLineComment "--.*" 56071d4279SBram Moolenaarsyn match gdmoLineComment "--.*--" 57071d4279SBram Moolenaar 58071d4279SBram Moolenaarsyn match gdmoDefinition "^\s*[a-zA-Z][-a-zA-Z0-9_.\[\] \t{}]* *::="me=e-3 59071d4279SBram Moolenaarsyn match gdmoBraces "[{}]" 60071d4279SBram Moolenaar 61071d4279SBram Moolenaarsyn sync ccomment gdmoComment 62071d4279SBram Moolenaar 63071d4279SBram Moolenaar" Define the default highlighting. 6489bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 65071d4279SBram Moolenaar 66*f37506f6SBram Moolenaarhi def link gdmoCategory Structure 67*f37506f6SBram Moolenaarhi def link gdmoRelationship Macro 68*f37506f6SBram Moolenaarhi def link gdmoDefinition Statement 69*f37506f6SBram Moolenaarhi def link gdmoReference Type 70*f37506f6SBram Moolenaarhi def link gdmoExtension Operator 71*f37506f6SBram Moolenaarhi def link gdmoBraces Function 72*f37506f6SBram Moolenaarhi def link gdmoSpecial Special 73*f37506f6SBram Moolenaarhi def link gdmoString String 74*f37506f6SBram Moolenaarhi def link gdmoCharacter Character 75*f37506f6SBram Moolenaarhi def link gdmoSpecialCharacter gdmoSpecial 76*f37506f6SBram Moolenaarhi def link gdmoComment Comment 77*f37506f6SBram Moolenaarhi def link gdmoLineComment gdmoComment 78*f37506f6SBram Moolenaarhi def link gdmoType Type 79071d4279SBram Moolenaar 80071d4279SBram Moolenaar 81071d4279SBram Moolenaarlet b:current_syntax = "gdmo" 82071d4279SBram Moolenaar 83071d4279SBram Moolenaar" vim: ts=8 84