neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

sdl.vim (6563B)


      1 " Vim syntax file
      2 " Language:	SDL
      3 " Maintainer:	Michael Piefel <entwurf@piefel.de>
      4 " Last Change:	2 May 2001
      5 
      6 " quit when a syntax file was already loaded
      7 if exists("b:current_syntax")
      8    finish
      9 endif
     10 
     11 if !exists("sdl_2000")
     12    syntax case ignore
     13 endif
     14 
     15 " A bunch of useful SDL keywords
     16 syn keyword sdlStatement	task else nextstate
     17 syn keyword sdlStatement	in out with from interface
     18 syn keyword sdlStatement	to via env and use
     19 syn keyword sdlStatement	process procedure block system service type
     20 syn keyword sdlStatement	endprocess endprocedure endblock endsystem
     21 syn keyword sdlStatement	package endpackage connection endconnection
     22 syn keyword sdlStatement	channel endchannel connect
     23 syn keyword sdlStatement	synonym dcl signal gate timer signallist signalset
     24 syn keyword sdlStatement	create output set reset call
     25 syn keyword sdlStatement	operators literals
     26 syn keyword sdlStatement	active alternative any as atleast constants
     27 syn keyword sdlStatement	default endalternative endmacro endoperator
     28 syn keyword sdlStatement	endselect endsubstructure external
     29 syn keyword sdlStatement	if then fi for import macro macrodefinition
     30 syn keyword sdlStatement	macroid mod nameclass nodelay not operator or
     31 syn keyword sdlStatement	parent provided referenced rem
     32 syn keyword sdlStatement	select spelling substructure xor
     33 syn keyword sdlNewState		state endstate
     34 syn keyword sdlInput		input start stop return none save priority
     35 syn keyword sdlConditional	decision enddecision join
     36 syn keyword sdlVirtual		virtual redefined finalized adding inherits
     37 syn keyword sdlExported		remote exported export
     38 
     39 if !exists("sdl_no_96")
     40    syn keyword sdlStatement	all axioms constant endgenerator endrefinement endservice
     41    syn keyword sdlStatement	error fpar generator literal map noequality ordering
     42    syn keyword sdlStatement	refinement returns revealed reverse service signalroute
     43    syn keyword sdlStatement	view viewed
     44    syn keyword sdlExported	imported
     45 endif
     46 
     47 if exists("sdl_2000")
     48    syn keyword sdlStatement	abstract aggregation association break choice composition
     49    syn keyword sdlStatement	continue endmethod handle method
     50    syn keyword sdlStatement	ordered private protected public
     51    syn keyword sdlException	exceptionhandler endexceptionhandler onexception
     52    syn keyword sdlException	catch new raise
     53    " The same in uppercase
     54    syn keyword sdlStatement	TASK ELSE NEXTSTATE
     55    syn keyword sdlStatement	IN OUT WITH FROM INTERFACE
     56    syn keyword sdlStatement	TO VIA ENV AND USE
     57    syn keyword sdlStatement	PROCESS PROCEDURE BLOCK SYSTEM SERVICE TYPE
     58    syn keyword sdlStatement	ENDPROCESS ENDPROCEDURE ENDBLOCK ENDSYSTEM
     59    syn keyword sdlStatement	PACKAGE ENDPACKAGE CONNECTION ENDCONNECTION
     60    syn keyword sdlStatement	CHANNEL ENDCHANNEL CONNECT
     61    syn keyword sdlStatement	SYNONYM DCL SIGNAL GATE TIMER SIGNALLIST SIGNALSET
     62    syn keyword sdlStatement	CREATE OUTPUT SET RESET CALL
     63    syn keyword sdlStatement	OPERATORS LITERALS
     64    syn keyword sdlStatement	ACTIVE ALTERNATIVE ANY AS ATLEAST CONSTANTS
     65    syn keyword sdlStatement	DEFAULT ENDALTERNATIVE ENDMACRO ENDOPERATOR
     66    syn keyword sdlStatement	ENDSELECT ENDSUBSTRUCTURE EXTERNAL
     67    syn keyword sdlStatement	IF THEN FI FOR IMPORT MACRO MACRODEFINITION
     68    syn keyword sdlStatement	MACROID MOD NAMECLASS NODELAY NOT OPERATOR OR
     69    syn keyword sdlStatement	PARENT PROVIDED REFERENCED REM
     70    syn keyword sdlStatement	SELECT SPELLING SUBSTRUCTURE XOR
     71    syn keyword sdlNewState	STATE ENDSTATE
     72    syn keyword sdlInput	INPUT START STOP RETURN NONE SAVE PRIORITY
     73    syn keyword sdlConditional	DECISION ENDDECISION JOIN
     74    syn keyword sdlVirtual	VIRTUAL REDEFINED FINALIZED ADDING INHERITS
     75    syn keyword sdlExported	REMOTE EXPORTED EXPORT
     76 
     77    syn keyword sdlStatement	ABSTRACT AGGREGATION ASSOCIATION BREAK CHOICE COMPOSITION
     78    syn keyword sdlStatement	CONTINUE ENDMETHOD ENDOBJECT ENDVALUE HANDLE METHOD OBJECT
     79    syn keyword sdlStatement	ORDERED PRIVATE PROTECTED PUBLIC
     80    syn keyword sdlException	EXCEPTIONHANDLER ENDEXCEPTIONHANDLER ONEXCEPTION
     81    syn keyword sdlException	CATCH NEW RAISE
     82 endif
     83 
     84 " String and Character contstants
     85 " Highlight special characters (those which have a backslash) differently
     86 syn match   sdlSpecial		contained "\\\d\d\d\|\\."
     87 syn region  sdlString		start=+"+  skip=+\\\\\|\\"+  end=+"+  contains=cSpecial
     88 syn region  sdlString		start=+'+  skip=+''+  end=+'+
     89 
     90 " No, this doesn't happen, I just wanted to scare you. SDL really allows all
     91 " these characters for identifiers; fortunately, keywords manage without them.
     92 " set iskeyword=@,48-57,_,192-214,216-246,248-255,-
     93 
     94 syn region sdlComment		start="/\*"  end="\*/"
     95 syn region sdlComment		start="comment"  end=";"
     96 syn region sdlComment		start="--" end="--\|$"
     97 syn match  sdlCommentError	"\*/"
     98 
     99 syn keyword sdlOperator		present
    100 syn keyword sdlType		integer real natural duration pid boolean time
    101 syn keyword sdlType		character charstring ia5string
    102 syn keyword sdlType		self now sender offspring
    103 syn keyword sdlStructure	asntype endasntype syntype endsyntype struct
    104 
    105 if !exists("sdl_no_96")
    106    syn keyword sdlStructure	newtype endnewtype
    107 endif
    108 
    109 if exists("sdl_2000")
    110    syn keyword sdlStructure	object endobject value endvalue
    111    " The same in uppercase
    112    syn keyword sdlStructure	OBJECT ENDOBJECT VALUE ENDVALUE
    113    syn keyword sdlOperator	PRESENT
    114    syn keyword sdlType		INTEGER NATURAL DURATION PID BOOLEAN TIME
    115    syn keyword sdlType		CHARSTRING IA5STRING
    116    syn keyword sdlType		SELF NOW SENDER OFFSPRING
    117    syn keyword sdlStructure	ASNTYPE ENDASNTYPE SYNTYPE ENDSYNTYPE STRUCT
    118 endif
    119 
    120 " ASN.1 in SDL
    121 syn case match
    122 syn keyword sdlType		SET OF BOOLEAN INTEGER REAL BIT OCTET
    123 syn keyword sdlType		SEQUENCE CHOICE
    124 syn keyword sdlType		STRING OBJECT IDENTIFIER NULL
    125 
    126 syn sync ccomment sdlComment
    127 
    128 " Define the default highlighting.
    129 " Only when an item doesn't have highlighting yet
    130 command -nargs=+ Hi     hi def <args>
    131 
    132 hi def link sdlException	Label
    133 hi def link sdlConditional	sdlStatement
    134 hi def link sdlVirtual		sdlStatement
    135 hi def link sdlExported		sdlFlag
    136 hi def link sdlCommentError	sdlError
    137 hi def link sdlOperator		Operator
    138 hi def link sdlStructure	sdlType
    139 Hi	    sdlStatement	term=bold ctermfg=4 guifg=Blue
    140 Hi	    sdlFlag		term=bold ctermfg=4 guifg=Blue gui=italic
    141 Hi	    sdlNewState		term=italic ctermfg=2 guifg=Magenta gui=underline
    142 Hi	    sdlInput		term=bold guifg=Red
    143 hi def link sdlType		Type
    144 hi def link sdlString		String
    145 hi def link sdlComment		Comment
    146 hi def link sdlSpecial		Special
    147 hi def link sdlError		Error
    148 
    149 delcommand Hi
    150 
    151 let b:current_syntax = "sdl"
    152 
    153 " vim: ts=8