mirror of
				https://github.com/vim/vim.git
				synced 2025-10-30 09:47:20 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			168 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			168 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:	SDL
 | |
| " Maintainer:	Michael Piefel <piefel@informatik.hu-berlin.de>
 | |
| " Last Change:	2 May 2001
 | |
| 
 | |
| " For version 5.x: Clear all syntax items
 | |
| " For version 6.x: Quit when a syntax file was already loaded
 | |
| if version < 600
 | |
|     syntax clear
 | |
| elseif exists("b:current_syntax")
 | |
|     finish
 | |
| endif
 | |
| 
 | |
| if !exists("sdl_2000")
 | |
|     syntax case ignore
 | |
| endif
 | |
| 
 | |
| " A bunch of useful SDL keywords
 | |
| syn keyword sdlStatement	task else nextstate
 | |
| syn keyword sdlStatement	in out with from interface
 | |
| syn keyword sdlStatement	to via env and use
 | |
| syn keyword sdlStatement	process procedure block system service type
 | |
| syn keyword sdlStatement	endprocess endprocedure endblock endsystem
 | |
| syn keyword sdlStatement	package endpackage connection endconnection
 | |
| syn keyword sdlStatement	channel endchannel connect
 | |
| syn keyword sdlStatement	synonym dcl signal gate timer signallist signalset
 | |
| syn keyword sdlStatement	create output set reset call
 | |
| syn keyword sdlStatement	operators literals
 | |
| syn keyword sdlStatement	active alternative any as atleast constants
 | |
| syn keyword sdlStatement	default endalternative endmacro endoperator
 | |
| syn keyword sdlStatement	endselect endsubstructure external
 | |
| syn keyword sdlStatement	if then fi for import macro macrodefinition
 | |
| syn keyword sdlStatement	macroid mod nameclass nodelay not operator or
 | |
| syn keyword sdlStatement	parent provided referenced rem
 | |
| syn keyword sdlStatement	select spelling substructure xor
 | |
| syn keyword sdlNewState		state endstate
 | |
| syn keyword sdlInput		input start stop return none save priority
 | |
| syn keyword sdlConditional	decision enddecision join
 | |
| syn keyword sdlVirtual		virtual redefined finalized adding inherits
 | |
| syn keyword sdlExported		remote exported export
 | |
| 
 | |
| if !exists("sdl_no_96")
 | |
|     syn keyword sdlStatement	all axioms constant endgenerator endrefinement endservice
 | |
|     syn keyword sdlStatement	error fpar generator literal map noequality ordering
 | |
|     syn keyword sdlStatement	refinement returns revealed reverse service signalroute
 | |
|     syn keyword sdlStatement	view viewed
 | |
|     syn keyword sdlExported	imported
 | |
| endif
 | |
| 
 | |
| if exists("sdl_2000")
 | |
|     syn keyword sdlStatement	abstract aggregation association break choice composition
 | |
|     syn keyword sdlStatement	continue endmethod handle method
 | |
|     syn keyword sdlStatement	ordered private protected public
 | |
|     syn keyword sdlException	exceptionhandler endexceptionhandler onexception
 | |
|     syn keyword sdlException	catch new raise
 | |
|     " The same in uppercase
 | |
|     syn keyword sdlStatement	TASK ELSE NEXTSTATE
 | |
|     syn keyword sdlStatement	IN OUT WITH FROM INTERFACE
 | |
|     syn keyword sdlStatement	TO VIA ENV AND USE
 | |
|     syn keyword sdlStatement	PROCESS PROCEDURE BLOCK SYSTEM SERVICE TYPE
 | |
|     syn keyword sdlStatement	ENDPROCESS ENDPROCEDURE ENDBLOCK ENDSYSTEM
 | |
|     syn keyword sdlStatement	PACKAGE ENDPACKAGE CONNECTION ENDCONNECTION
 | |
|     syn keyword sdlStatement	CHANNEL ENDCHANNEL CONNECT
 | |
|     syn keyword sdlStatement	SYNONYM DCL SIGNAL GATE TIMER SIGNALLIST SIGNALSET
 | |
|     syn keyword sdlStatement	CREATE OUTPUT SET RESET CALL
 | |
|     syn keyword sdlStatement	OPERATORS LITERALS
 | |
|     syn keyword sdlStatement	ACTIVE ALTERNATIVE ANY AS ATLEAST CONSTANTS
 | |
|     syn keyword sdlStatement	DEFAULT ENDALTERNATIVE ENDMACRO ENDOPERATOR
 | |
|     syn keyword sdlStatement	ENDSELECT ENDSUBSTRUCTURE EXTERNAL
 | |
|     syn keyword sdlStatement	IF THEN FI FOR IMPORT MACRO MACRODEFINITION
 | |
|     syn keyword sdlStatement	MACROID MOD NAMECLASS NODELAY NOT OPERATOR OR
 | |
|     syn keyword sdlStatement	PARENT PROVIDED REFERENCED REM
 | |
|     syn keyword sdlStatement	SELECT SPELLING SUBSTRUCTURE XOR
 | |
|     syn keyword sdlNewState	STATE ENDSTATE
 | |
|     syn keyword sdlInput	INPUT START STOP RETURN NONE SAVE PRIORITY
 | |
|     syn keyword sdlConditional	DECISION ENDDECISION JOIN
 | |
|     syn keyword sdlVirtual	VIRTUAL REDEFINED FINALIZED ADDING INHERITS
 | |
|     syn keyword sdlExported	REMOTE EXPORTED EXPORT
 | |
| 
 | |
|     syn keyword sdlStatement	ABSTRACT AGGREGATION ASSOCIATION BREAK CHOICE COMPOSITION
 | |
|     syn keyword sdlStatement	CONTINUE ENDMETHOD ENDOBJECT ENDVALUE HANDLE METHOD OBJECT
 | |
|     syn keyword sdlStatement	ORDERED PRIVATE PROTECTED PUBLIC
 | |
|     syn keyword sdlException	EXCEPTIONHANDLER ENDEXCEPTIONHANDLER ONEXCEPTION
 | |
|     syn keyword sdlException	CATCH NEW RAISE
 | |
| endif
 | |
| 
 | |
| " String and Character contstants
 | |
| " Highlight special characters (those which have a backslash) differently
 | |
| syn match   sdlSpecial		contained "\\\d\d\d\|\\."
 | |
| syn region  sdlString		start=+"+  skip=+\\\\\|\\"+  end=+"+  contains=cSpecial
 | |
| syn region  sdlString		start=+'+  skip=+''+  end=+'+
 | |
| 
 | |
| " No, this doesn't happen, I just wanted to scare you. SDL really allows all
 | |
| " these characters for identifiers; fortunately, keywords manage without them.
 | |
| " set iskeyword=@,48-57,_,192-214,216-246,248-255,-
 | |
| 
 | |
| syn region sdlComment		start="/\*"  end="\*/"
 | |
| syn region sdlComment		start="comment"  end=";"
 | |
| syn region sdlComment		start="--" end="--\|$"
 | |
| syn match  sdlCommentError	"\*/"
 | |
| 
 | |
| syn keyword sdlOperator		present
 | |
| syn keyword sdlType		integer real natural duration pid boolean time
 | |
| syn keyword sdlType		character charstring ia5string
 | |
| syn keyword sdlType		self now sender offspring
 | |
| syn keyword sdlStructure	asntype endasntype syntype endsyntype struct
 | |
| 
 | |
| if !exists("sdl_no_96")
 | |
|     syn keyword sdlStructure	newtype endnewtype
 | |
| endif
 | |
| 
 | |
| if exists("sdl_2000")
 | |
|     syn keyword sdlStructure	object endobject value endvalue
 | |
|     " The same in uppercase
 | |
|     syn keyword sdlStructure	OBJECT ENDOBJECT VALUE ENDVALUE
 | |
|     syn keyword sdlOperator	PRESENT
 | |
|     syn keyword sdlType		INTEGER NATURAL DURATION PID BOOLEAN TIME
 | |
|     syn keyword sdlType		CHARSTRING IA5STRING
 | |
|     syn keyword sdlType		SELF NOW SENDER OFFSPRING
 | |
|     syn keyword sdlStructure	ASNTYPE ENDASNTYPE SYNTYPE ENDSYNTYPE STRUCT
 | |
| endif
 | |
| 
 | |
| " ASN.1 in SDL
 | |
| syn case match
 | |
| syn keyword sdlType		SET OF BOOLEAN INTEGER REAL BIT OCTET
 | |
| syn keyword sdlType		SEQUENCE CHOICE
 | |
| syn keyword sdlType		STRING OBJECT IDENTIFIER NULL
 | |
| 
 | |
| syn sync ccomment sdlComment
 | |
| 
 | |
| " Define the default highlighting.
 | |
| " For version 5.7 and earlier: only when not done already
 | |
| " For version 5.8 and later: only when an item doesn't have highlighting yet
 | |
| if version >= 508 || !exists("did_sdl_syn_inits")
 | |
|     if version < 508
 | |
| 	let did_sdl_syn_inits = 1
 | |
| 	command -nargs=+ HiLink hi link <args>
 | |
| 	command -nargs=+ Hi     hi <args>
 | |
|     else
 | |
| 	command -nargs=+ HiLink hi def link <args>
 | |
| 	command -nargs=+ Hi     hi def <args>
 | |
|     endif
 | |
| 
 | |
|     HiLink  sdlException	Label
 | |
|     HiLink  sdlConditional	sdlStatement
 | |
|     HiLink  sdlVirtual		sdlStatement
 | |
|     HiLink  sdlExported		sdlFlag
 | |
|     HiLink  sdlCommentError	sdlError
 | |
|     HiLink  sdlOperator		Operator
 | |
|     HiLink  sdlStructure	sdlType
 | |
|     Hi	    sdlStatement	term=bold ctermfg=4 guifg=Blue
 | |
|     Hi	    sdlFlag		term=bold ctermfg=4 guifg=Blue gui=italic
 | |
|     Hi	    sdlNewState		term=italic ctermfg=2 guifg=Magenta gui=underline
 | |
|     Hi	    sdlInput		term=bold guifg=Red
 | |
|     HiLink  sdlType		Type
 | |
|     HiLink  sdlString		String
 | |
|     HiLink  sdlComment		Comment
 | |
|     HiLink  sdlSpecial		Special
 | |
|     HiLink  sdlError		Error
 | |
| 
 | |
|     delcommand HiLink
 | |
|     delcommand Hi
 | |
| endif
 | |
| 
 | |
| let b:current_syntax = "sdl"
 | |
| 
 | |
| " vim: ts=8
 |