mirror of
				https://github.com/vim/vim.git
				synced 2025-10-31 09:57:14 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			111 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:     Dot
 | |
| " Filenames:    *.dot
 | |
| " Maintainer:   Markus Mottl  <markus.mottl@gmail.com>
 | |
| " URL:          http://www.ocaml.info/vim/syntax/dot.vim
 | |
| " Last Change:  2011 May 17 - improved identifier matching + two new keywords
 | |
| "               2001 May 04 - initial version
 | |
| 
 | |
| " 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
 | |
| 
 | |
| " Errors
 | |
| syn match    dotParErr     ")"
 | |
| syn match    dotBrackErr   "]"
 | |
| syn match    dotBraceErr   "}"
 | |
| 
 | |
| " Enclosing delimiters
 | |
| syn region   dotEncl transparent matchgroup=dotParEncl start="(" matchgroup=dotParEncl end=")" contains=ALLBUT,dotParErr
 | |
| syn region   dotEncl transparent matchgroup=dotBrackEncl start="\[" matchgroup=dotBrackEncl end="\]" contains=ALLBUT,dotBrackErr
 | |
| syn region   dotEncl transparent matchgroup=dotBraceEncl start="{" matchgroup=dotBraceEncl end="}" contains=ALLBUT,dotBraceErr
 | |
| 
 | |
| " Comments
 | |
| syn region   dotComment start="//" end="$" contains=dotComment,dotTodo
 | |
| syn region   dotComment start="/\*" end="\*/" contains=dotComment,dotTodo
 | |
| syn keyword  dotTodo contained TODO FIXME XXX
 | |
| 
 | |
| " Strings
 | |
| syn region   dotString    start=+"+ skip=+\\\\\|\\"+ end=+"+
 | |
| 
 | |
| " General keywords
 | |
| syn keyword  dotKeyword  digraph node edge subgraph
 | |
| 
 | |
| " Graph attributes
 | |
| syn keyword  dotType center layers margin mclimit name nodesep nslimit
 | |
| syn keyword  dotType ordering page pagedir rank rankdir ranksep ratio
 | |
| syn keyword  dotType rotate size
 | |
| 
 | |
| " Node attributes
 | |
| syn keyword  dotType distortion fillcolor fontcolor fontname fontsize
 | |
| syn keyword  dotType height layer orientation peripheries regular
 | |
| syn keyword  dotType shape shapefile sides skew width
 | |
| 
 | |
| " Edge attributes
 | |
| syn keyword  dotType arrowhead arrowsize arrowtail constraint decorateP
 | |
| syn keyword  dotType dir headclip headlabel headport labelangle labeldistance
 | |
| syn keyword  dotType labelfontcolor labelfontname labelfontsize
 | |
| syn keyword  dotType minlen port_label_distance samehead sametail
 | |
| syn keyword  dotType tailclip taillabel tailport weight
 | |
| 
 | |
| " Shared attributes (graphs, nodes, edges)
 | |
| syn keyword  dotType color
 | |
| 
 | |
| " Shared attributes (graphs and edges)
 | |
| syn keyword  dotType bgcolor label URL
 | |
| 
 | |
| " Shared attributes (nodes and edges)
 | |
| syn keyword  dotType fontcolor fontname fontsize layer style
 | |
| 
 | |
| " Special chars
 | |
| syn match    dotKeyChar  "="
 | |
| syn match    dotKeyChar  ";"
 | |
| syn match    dotKeyChar  "->"
 | |
| 
 | |
| " Identifier
 | |
| syn match    dotIdentifier /\<\w\+\(:\w\+\)\?\>/
 | |
| 
 | |
| " Synchronization
 | |
| syn sync minlines=50
 | |
| syn sync maxlines=500
 | |
| 
 | |
| " 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_dot_syntax_inits")
 | |
|   if version < 508
 | |
|     let did_dot_syntax_inits = 1
 | |
|     command -nargs=+ HiLink hi link <args>
 | |
|   else
 | |
|     command -nargs=+ HiLink hi def link <args>
 | |
|   endif
 | |
| 
 | |
|   HiLink dotParErr	 Error
 | |
|   HiLink dotBraceErr	 Error
 | |
|   HiLink dotBrackErr	 Error
 | |
| 
 | |
|   HiLink dotComment	 Comment
 | |
|   HiLink dotTodo	 Todo
 | |
| 
 | |
|   HiLink dotParEncl	 Keyword
 | |
|   HiLink dotBrackEncl	 Keyword
 | |
|   HiLink dotBraceEncl	 Keyword
 | |
| 
 | |
|   HiLink dotKeyword	 Keyword
 | |
|   HiLink dotType	 Type
 | |
|   HiLink dotKeyChar	 Keyword
 | |
| 
 | |
|   HiLink dotString	 String
 | |
|   HiLink dotIdentifier	 Identifier
 | |
| 
 | |
|   delcommand HiLink
 | |
| endif
 | |
| 
 | |
| let b:current_syntax = "dot"
 | |
| 
 | |
| " vim: ts=8
 |