mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			99 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:		CL
 | |
| " 			(pronounced alphabetically: "Cee-El".
 | |
| " 			CL stands for Clever Language,
 | |
| " 			but the language is CL, not "Clever".
 | |
| " 			CL was created by Multibase, http://www.mbase.com.au)
 | |
| " Filename extensions:	*.ent
 | |
| "			*.eni
 | |
| " Maintainer:		Philip Uren	<philuSPAX@ieee.org> Remove SPAX spam block
 | |
| " Version:              6
 | |
| " Last Change:		Mar 06 2013
 | |
| 
 | |
| " quit when a syntax file was already loaded
 | |
| if exists("b:current_syntax")
 | |
| 	finish
 | |
| endif
 | |
| 
 | |
| setlocal iskeyword=@,48-57,_,-
 | |
| 
 | |
| syn case ignore
 | |
| 
 | |
| syn sync lines=300
 | |
| 
 | |
| "If/else/elsif/endif and while/wend mismatch errors
 | |
| syn match	clifError	"\<wend\>"
 | |
| syn match	clifError	"\<elsif\>"
 | |
| syn match	clifError	"\<else\>"
 | |
| syn match	clifError	"\<endif\>"
 | |
| 
 | |
| syn match	clSpaceError	"\s\+$"
 | |
| 
 | |
| " If and while regions
 | |
| syn region	clLoop		transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
 | |
| syn region	clIf		transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>"   contains=ALLBUT,clBreak,clProcedure
 | |
| 
 | |
| " Make those TODO notes and debugging stand out!
 | |
| syn keyword	clTodo		contained	TODO BUG DEBUG FIX
 | |
| syn match	clNeedsWork	contained	"NEED[S]*\s\s*WORK"
 | |
| syn keyword	clDebug		contained	debug
 | |
| 
 | |
| syn match	clComment	"#.*$"		contains=clTodo,clNeedsWork,@Spell
 | |
| syn region	clProcedure	oneline		start="^\s*[{}]" end="$"
 | |
| syn match	clInclude	"^\s*include\s.*"
 | |
| 
 | |
| " We don't put "debug" in the clSetOptions;
 | |
| " we contain it in clSet so we can make it stand out.
 | |
| syn keyword	clSetOptions	transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
 | |
| syn match	clSet		"^\s*set\s.*" contains=clSetOptions,clDebug
 | |
| 
 | |
| syn match	clPreProc	"^\s*#P.*"
 | |
| 
 | |
| syn keyword	clConditional	else elsif
 | |
| syn keyword	clWhile		continue endloop
 | |
| " 'break' needs to be a region so we can sync on it above.
 | |
| syn region	clBreak		oneline start="^\s*break" end="$"
 | |
| 
 | |
| syn match	clOperator	"[!;|)(:.><+*=-]"
 | |
| 
 | |
| syn match	clNumber	"\<\d\+\(u\=l\=\|lu\|f\)\>"
 | |
| 
 | |
| syn region	clString	matchgroup=clQuote	start=+"+ end=+"+	skip=+\\"+ contains=@Spell
 | |
| syn region	clString	matchgroup=clQuote	start=+'+ end=+'+	skip=+\\'+ contains=@Spell
 | |
| 
 | |
| syn keyword	clReserved	ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
 | |
| 
 | |
| syn keyword	clFunction	asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
 | |
| 
 | |
| syn keyword	clStatement	clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
 | |
| 
 | |
| " Define the default highlighting.
 | |
| " Only when an item doesn't have highlighting yet
 | |
| 
 | |
| hi def link clifError	Error
 | |
| hi def link clSpaceError	Error
 | |
| hi def link clWhile		Repeat
 | |
| hi def link clConditional	Conditional
 | |
| hi def link clDebug		Debug
 | |
| hi def link clNeedsWork	Todo
 | |
| hi def link clTodo		Todo
 | |
| hi def link clComment	Comment
 | |
| hi def link clProcedure	Procedure
 | |
| hi def link clBreak		Procedure
 | |
| hi def link clInclude	Include
 | |
| hi def link clSetOption	Statement
 | |
| hi def link clSet		Identifier
 | |
| hi def link clPreProc	PreProc
 | |
| hi def link clOperator	Operator
 | |
| hi def link clNumber		Number
 | |
| hi def link clString		String
 | |
| hi def link clQuote		Delimiter
 | |
| hi def link clReserved	Identifier
 | |
| hi def link clFunction	Function
 | |
| hi def link clStatement	Statement
 | |
| 
 | |
| 
 | |
| let b:current_syntax = "cl"
 | |
| 
 | |
| " vim: ts=8 sw=8
 | 
