mirror of
				https://github.com/vim/vim.git
				synced 2025-10-31 09:57:14 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			102 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:	FORM
 | |
| " Maintainer:	Michael M. Tung <michael.tung@uni-mainz.de>
 | |
| " Last Change:	2001 May 10
 | |
| 
 | |
| " First public release based on 'Symbolic Manipulation with FORM'
 | |
| " by J.A.M. Vermaseren, CAN, Netherlands, 1991.
 | |
| " This syntax file is still in development. Please send suggestions
 | |
| " to the maintainer.
 | |
| 
 | |
| " 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
 | |
| 
 | |
| syn case ignore
 | |
| 
 | |
| " A bunch of useful FORM keywords
 | |
| syn keyword formType		global local
 | |
| syn keyword formHeaderStatement	symbol symbols cfunction cfunctions
 | |
| syn keyword formHeaderStatement	function functions vector vectors
 | |
| syn keyword formHeaderStatement	set sets index indices
 | |
| syn keyword formHeaderStatement	dimension dimensions unittrace
 | |
| syn keyword formStatement	id identify drop skip
 | |
| syn keyword formStatement	write nwrite
 | |
| syn keyword formStatement	format print nprint load save
 | |
| syn keyword formStatement	bracket brackets
 | |
| syn keyword formStatement	multiply count match only discard
 | |
| syn keyword formStatement	trace4 traceN contract symmetrize antisymmetrize
 | |
| syn keyword formConditional	if else endif while
 | |
| syn keyword formConditional	repeat endrepeat label goto
 | |
| 
 | |
| " some special functions
 | |
| syn keyword formStatement	g_ gi_ g5_ g6_ g7_ 5_ 6_ 7_
 | |
| syn keyword formStatement	e_ d_ delta_ theta_ sum_ sump_
 | |
| 
 | |
| " pattern matching for keywords
 | |
| syn match   formComment		"^\ *\*.*$"
 | |
| syn match   formComment		"\;\ *\*.*$"
 | |
| syn region  formString		start=+"+  end=+"+
 | |
| syn region  formString		start=+'+  end=+'+
 | |
| syn match   formPreProc		"^\=\#[a-zA-z][a-zA-Z0-9]*\>"
 | |
| syn match   formNumber		"\<\d\+\>"
 | |
| syn match   formNumber		"\<\d\+\.\d*\>"
 | |
| syn match   formNumber		"\.\d\+\>"
 | |
| syn match   formNumber		"-\d" contains=Number
 | |
| syn match   formNumber		"-\.\d" contains=Number
 | |
| syn match   formNumber		"i_\+\>"
 | |
| syn match   formNumber		"fac_\+\>"
 | |
| syn match   formDirective	"^\=\.[a-zA-z][a-zA-Z0-9]*\>"
 | |
| 
 | |
| " hi User Labels
 | |
| syn sync ccomment formComment minlines=10
 | |
| 
 | |
| " 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_form_syn_inits")
 | |
|   if version < 508
 | |
|     let did_form_syn_inits = 1
 | |
|     command -nargs=+ HiLink hi link <args>
 | |
|   else
 | |
|     command -nargs=+ HiLink hi def link <args>
 | |
|   endif
 | |
| 
 | |
|   HiLink formConditional	Conditional
 | |
|   HiLink formNumber		Number
 | |
|   HiLink formStatement		Statement
 | |
|   HiLink formComment		Comment
 | |
|   HiLink formPreProc		PreProc
 | |
|   HiLink formDirective		PreProc
 | |
|   HiLink formType		Type
 | |
|   HiLink formString		String
 | |
| 
 | |
|   if !exists("form_enhanced_color")
 | |
|     HiLink formHeaderStatement	Statement
 | |
|   else
 | |
|   " enhanced color mode
 | |
|     HiLink formHeaderStatement	HeaderStatement
 | |
|     " dark and a light background for local types
 | |
|     if &background == "dark"
 | |
|       hi HeaderStatement term=underline ctermfg=LightGreen guifg=LightGreen gui=bold
 | |
|     else
 | |
|       hi HeaderStatement term=underline ctermfg=DarkGreen guifg=SeaGreen gui=bold
 | |
|     endif
 | |
|     " change slightly the default for dark gvim
 | |
|     if has("gui_running") && &background == "dark"
 | |
|       hi Conditional guifg=LightBlue gui=bold
 | |
|       hi Statement guifg=LightYellow
 | |
|     endif
 | |
|   endif
 | |
| 
 | |
|   delcommand HiLink
 | |
| endif
 | |
| 
 | |
|   let b:current_syntax = "form"
 | |
| 
 | |
| " vim: ts=8
 |