mirror of
				https://github.com/vim/vim.git
				synced 2025-11-03 09:44:48 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
" Vim syntax file
 | 
						|
" Language: Comshare Dimension Definition Language
 | 
						|
" Maintainer:	Raul Segura Acevedo <raulseguraaceved@netscape.net>
 | 
						|
" Last change:	2016 Sep 20
 | 
						|
 | 
						|
" quit when a syntax file was already loaded
 | 
						|
if exists("b:current_syntax")
 | 
						|
	finish
 | 
						|
endif
 | 
						|
 | 
						|
sy case ignore
 | 
						|
sy sync fromstart
 | 
						|
sy keyword	cdlStatement	dimension hierarchy group grouphierarchy schedule class
 | 
						|
sy keyword	cdlType		add update file category main altername removeall required notrequired
 | 
						|
sy keyword	cdlConditional	if then elseif else endif and or not cons rpt xlt
 | 
						|
sy keyword	cdlFunction	ChildOf IChildOf LeafChildOf DescendantOf IDescendantOf LeafDescendantOf MemberIs CountOf
 | 
						|
 | 
						|
sy keyword	cdlIdentifier	contained id name desc description xlttype precision symbol curr_ name group_name rate_name
 | 
						|
sy keyword	cdlIdentifier	contained xcheck endbal accounttype natsign consolidate formula pctown usage periodicity
 | 
						|
sy match	cdlIdentifier	contained 'child\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'parent\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'grp\s*description'
 | 
						|
sy match	cdlIdentifier	contained 'grpchild\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'grpparent\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'preceding\s*member'
 | 
						|
sy match	cdlIdentifier	contained 'unit\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'unit\s*id'
 | 
						|
sy match	cdlIdentifier	contained 'schedule\s*name'
 | 
						|
sy match	cdlIdentifier	contained 'schedule\s*id'
 | 
						|
 | 
						|
sy match	cdlString	/\[[^]]*]/	contains=cdlRestricted,cdlNotSupported
 | 
						|
sy match	cdlRestricted	contained /[&*,_]/
 | 
						|
" not supported
 | 
						|
sy match	cdlNotSupported	contained /[:"!']/
 | 
						|
 | 
						|
sy keyword	cdlTodo		contained TODO FIXME XXX
 | 
						|
sy cluster	cdlCommentGroup contains=cdlTodo
 | 
						|
sy match	cdlComment	'//.*' contains=@cdlCommentGroup
 | 
						|
sy region	cdlComment	start="/\*" end="\*/" contains=@cdlCommentGroup fold
 | 
						|
sy match	cdlCommentE	"\*/"
 | 
						|
 | 
						|
sy region	cdlParen	transparent start='(' end=')' contains=ALLBUT,cdlParenE,cdlRestricted,cdlNotSupported
 | 
						|
"sy region	cdlParen	transparent start='(' end=')' contains=cdlIdentifier,cdlComment,cdlParenWordE
 | 
						|
sy match	cdlParenE	")"
 | 
						|
"sy match	cdlParenWordE	contained "\k\+"
 | 
						|
 | 
						|
sy keyword	cdlFxType	allocation downfoot expr xltgain
 | 
						|
"sy keyword	cdlFxType	contained allocation downfoot expr xltgain
 | 
						|
"sy region	cdlFx		transparent start='\k\+(' end=')' contains=cdlConditional,cdlFunction,cdlString,cdlComment,cdlFxType
 | 
						|
 | 
						|
set foldmethod=expr
 | 
						|
set foldexpr=(getline(v:lnum+1)=~'{'\|\|getline(v:lnum)=~'//\\s\\*\\{5}.*table')?'>1':1
 | 
						|
%foldo!
 | 
						|
set foldmethod=manual
 | 
						|
let b:match_words='\<if\>:\<then\>:\<elseif\>:\<else\>:\<endif\>'
 | 
						|
 | 
						|
" Define the default highlighting.
 | 
						|
" Only when an item doesn't have highlighting yet
 | 
						|
 | 
						|
hi def link cdlStatement	Statement
 | 
						|
hi def link cdlType		Type
 | 
						|
hi def link cdlFxType	Type
 | 
						|
hi def link cdlIdentifier	Identifier
 | 
						|
hi def link cdlString	String
 | 
						|
hi def link cdlRestricted	WarningMsg
 | 
						|
hi def link cdlNotSupported	ErrorMsg
 | 
						|
hi def link cdlTodo		Todo
 | 
						|
hi def link cdlComment	Comment
 | 
						|
hi def link cdlCommentE	ErrorMsg
 | 
						|
hi def link cdlParenE	ErrorMsg
 | 
						|
hi def link cdlParenWordE	ErrorMsg
 | 
						|
hi def link cdlFunction	Function
 | 
						|
hi def link cdlConditional	Conditional
 | 
						|
 | 
						|
 | 
						|
let b:current_syntax = "cdl"
 | 
						|
 | 
						|
" vim: ts=8
 |