mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-03 17:24:29 +00:00 
			
		
		
		
	Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7
Excluding:
  Amiga icons (*.info, icons/)
  doc/hangulin.txt
  tutor/
  spell/
  lang/ (only used for menu translations)
  macros/maze/, macros/hanoi/, macros/life/, macros/urm/
      These were used to test vi compatibility.
  termcap
      "Demonstration of a termcap file (for the Amiga and Archimedes)"
Helped-by: Rich Wareham <rjw57@cam.ac.uk>
Helped-by: John <john.schmidt.h@gmail.com>
Helped-by: Yann <yann@yann-salaun.com>
Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com>
Helped-by: drasill <github@tof2k.com>
Helped-by: Tae Sandoval Murgan <taecilla@gmail.com>
Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
		
	
		
			
				
	
	
		
			136 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
" Vim syntax file
 | 
						|
" Language:		lace
 | 
						|
" Maintainer:	Jocelyn Fiat <utilities@eiffel.com>
 | 
						|
" Last Change:	2001 May 09
 | 
						|
 | 
						|
" Copyright Interactive Software Engineering, 1998
 | 
						|
" You are free to use this file as you please, but
 | 
						|
" if you make a change or improvement you must send
 | 
						|
" it to the maintainer at <utilities@eiffel.com>
 | 
						|
 | 
						|
 | 
						|
" 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
 | 
						|
 | 
						|
" LACE is case insensitive, but the style guide lines are not.
 | 
						|
 | 
						|
if !exists("lace_case_insensitive")
 | 
						|
	syn case match
 | 
						|
else
 | 
						|
	syn case ignore
 | 
						|
endif
 | 
						|
 | 
						|
" A bunch of useful LACE keywords
 | 
						|
syn keyword laceTopStruct		system root default option visible cluster
 | 
						|
syn keyword laceTopStruct		external generate end
 | 
						|
syn keyword laceOptionClause	collect assertion debug optimize trace
 | 
						|
syn keyword laceOptionClause	profile inline precompiled multithreaded
 | 
						|
syn keyword laceOptionClause	exception_trace dead_code_removal
 | 
						|
syn keyword laceOptionClause	array_optimization
 | 
						|
syn keyword laceOptionClause	inlining_size inlining
 | 
						|
syn keyword laceOptionClause	console_application dynamic_runtime
 | 
						|
syn keyword laceOptionClause	line_generation
 | 
						|
syn keyword laceOptionMark		yes no all
 | 
						|
syn keyword laceOptionMark		require ensure invariant loop check
 | 
						|
syn keyword laceClusterProp		use include exclude
 | 
						|
syn keyword laceAdaptClassName	adapt ignore rename as
 | 
						|
syn keyword laceAdaptClassName	creation export visible
 | 
						|
syn keyword laceExternal		include_path object makefile
 | 
						|
 | 
						|
" Operators
 | 
						|
syn match   laceOperator		"\$"
 | 
						|
syn match   laceBrackets		"[[\]]"
 | 
						|
syn match   laceExport			"[{}]"
 | 
						|
 | 
						|
" Constants
 | 
						|
syn keyword laceBool		true false
 | 
						|
syn keyword laceBool		True False
 | 
						|
syn region  laceString		start=+"+ skip=+%"+ end=+"+ contains=laceEscape,laceStringError
 | 
						|
syn match   laceEscape		contained "%[^/]"
 | 
						|
syn match   laceEscape		contained "%/\d\+/"
 | 
						|
syn match   laceEscape		contained "^[ \t]*%"
 | 
						|
syn match   laceEscape		contained "%[ \t]*$"
 | 
						|
syn match   laceStringError	contained "%/[^0-9]"
 | 
						|
syn match   laceStringError	contained "%/\d\+[^0-9/]"
 | 
						|
syn match   laceStringError	"'\(%[^/]\|%/\d\+/\|[^'%]\)\+'"
 | 
						|
syn match   laceCharacter	"'\(%[^/]\|%/\d\+/\|[^'%]\)'" contains=laceEscape
 | 
						|
syn match   laceNumber		"-\=\<\d\+\(_\d\+\)*\>"
 | 
						|
syn match   laceNumber		"\<[01]\+[bB]\>"
 | 
						|
syn match   laceNumber		"-\=\<\d\+\(_\d\+\)*\.\(\d\+\(_\d\+\)*\)\=\([eE][-+]\=\d\+\(_\d\+\)*\)\="
 | 
						|
syn match   laceNumber		"-\=\.\d\+\(_\d\+\)*\([eE][-+]\=\d\+\(_\d\+\)*\)\="
 | 
						|
syn match   laceComment		"--.*" contains=laceTodo
 | 
						|
 | 
						|
 | 
						|
syn case match
 | 
						|
 | 
						|
" Case sensitive stuff
 | 
						|
 | 
						|
syn keyword laceTodo		TODO XXX FIXME
 | 
						|
syn match	laceClassName	"\<[A-Z][A-Z0-9_]*\>"
 | 
						|
syn match	laceCluster		"[a-zA-Z][a-zA-Z0-9_]*\s*:"
 | 
						|
syn match	laceCluster		"[a-zA-Z][a-zA-Z0-9_]*\s*(\s*[a-zA-Z][a-zA-Z0-9_]*\s*)\s*:"
 | 
						|
 | 
						|
" Catch mismatched parentheses
 | 
						|
syn match laceParenError	")"
 | 
						|
syn match laceBracketError	"\]"
 | 
						|
syn region laceGeneric		transparent matchgroup=laceBrackets start="\[" end="\]" contains=ALLBUT,laceBracketError
 | 
						|
syn region laceParen		transparent start="(" end=")" contains=ALLBUT,laceParenError
 | 
						|
 | 
						|
" Should suffice for even very long strings and expressions
 | 
						|
syn sync lines=40
 | 
						|
 | 
						|
" 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_lace_syntax_inits")
 | 
						|
  if version < 508
 | 
						|
    let did_lace_syntax_inits = 1
 | 
						|
    command -nargs=+ HiLink hi link <args>
 | 
						|
  else
 | 
						|
    command -nargs=+ HiLink hi def link <args>
 | 
						|
  endif
 | 
						|
 | 
						|
  HiLink laceTopStruct			PreProc
 | 
						|
 | 
						|
  HiLink laceOptionClause		Statement
 | 
						|
  HiLink laceOptionMark			Constant
 | 
						|
  HiLink laceClusterProp		Label
 | 
						|
  HiLink laceAdaptClassName		Label
 | 
						|
  HiLink laceExternal			Statement
 | 
						|
  HiLink laceCluster			ModeMsg
 | 
						|
 | 
						|
  HiLink laceEscape				Special
 | 
						|
 | 
						|
  HiLink laceBool				Boolean
 | 
						|
  HiLink laceString				String
 | 
						|
  HiLink laceCharacter			Character
 | 
						|
  HiLink laceClassName			Type
 | 
						|
  HiLink laceNumber				Number
 | 
						|
 | 
						|
  HiLink laceOperator			Special
 | 
						|
  HiLink laceArray				Special
 | 
						|
  HiLink laceExport				Special
 | 
						|
  HiLink laceCreation			Special
 | 
						|
  HiLink laceBrackets			Special
 | 
						|
  HiLink laceConstraint			Special
 | 
						|
 | 
						|
  HiLink laceComment			Comment
 | 
						|
 | 
						|
  HiLink laceError				Error
 | 
						|
  HiLink laceStringError		Error
 | 
						|
  HiLink laceParenError			Error
 | 
						|
  HiLink laceBracketError		Error
 | 
						|
  HiLink laceTodo				Todo
 | 
						|
 | 
						|
  delcommand HiLink
 | 
						|
endif
 | 
						|
 | 
						|
let b:current_syntax = "lace"
 | 
						|
 | 
						|
" vim: ts=4
 |