101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:	ROCKLinux .desc
 | |
| " Maintainer:	Piotr Esden-Tempski <esden@rocklinux.org>
 | |
| " Last Change:	2002 Apr 23
 | |
| 
 | |
| " 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
 | |
| 
 | |
| " syntax definitions
 | |
| 
 | |
| setl iskeyword+=-
 | |
| syn keyword descFlag DIETLIBC contained
 | |
| syn keyword descLicense Unknown GPL LGPL FDL MIT BSD OpenSource Free-to-use Commercial contained
 | |
| 
 | |
| " tags
 | |
| syn match descTag /^\[\(I\|TITLE\)\]/
 | |
| syn match descTag /^\[\(T\|TEXT\)\]/ contained
 | |
| syn match descTag /^\[\(U\|URL\)\]/
 | |
| syn match descTag /^\[\(A\|AUTHOR\)\]/
 | |
| syn match descTag /^\[\(M\|MAINTAINER\)\]/
 | |
| syn match descTag /^\[\(C\|CATEGORY\)\]/ contained
 | |
| syn match descTag /^\[\(F\|FLAG\)\]/ contained
 | |
| syn match descTag /^\[\(E\|DEP\|DEPENDENCY\)\]/
 | |
| syn match descTag /^\[\(R\|ARCH\|ARCHITECTURE\)\]/
 | |
| syn match descTag /^\[\(L\|LICENSE\)\]/ contained
 | |
| syn match descTag /^\[\(S\|STATUS\)\]/
 | |
| syn match descTag /^\[\(V\|VER\|VERSION\)\]/
 | |
| syn match descTag /^\[\(P\|PRI\|PRIORITY\)\]/ nextgroup=descInstall skipwhite
 | |
| syn match descTag /^\[\(D\|DOWN\|DOWNLOAD\)\]/ nextgroup=descSum skipwhite
 | |
| 
 | |
| " misc
 | |
| syn match descUrl /\w\+:\/\/\S\+/
 | |
| syn match descCategory /\w\+\/\w\+/ contained
 | |
| syn match descEmail /<\w\+@[\.A-Za-z0-9]\+>/
 | |
| 
 | |
| " priority tag
 | |
| syn match descInstallX /X/ contained
 | |
| syn match descInstallO /O/ contained
 | |
| syn match descInstall /[OX]/ contained contains=descInstallX,descInstallO nextgroup=descStage skipwhite
 | |
| syn match descDash /-/ contained
 | |
| syn match descDigit /\d/ contained
 | |
| syn match descStage /[\-0][\-1][\-2][\-3][\-4][\-5][\-6][\-7][\-8][\-9]/ contained contains=descDash,descDigit nextgroup=descCompilePriority skipwhite
 | |
| syn match descCompilePriority /\d\{3}\.\d\{3}/ contained
 | |
| 
 | |
| " download tag
 | |
| syn match descSum /\d\+/ contained nextgroup=descTarball skipwhite
 | |
| syn match descTarball /\S\+/ contained nextgroup=descUrl skipwhite
 | |
| 
 | |
| 
 | |
| " tag regions
 | |
| syn region descText start=/^\[\(T\|TEXT\)\]/ end=/$/ contains=descTag,descUrl,descEmail
 | |
| 
 | |
| syn region descTagRegion start=/^\[\(C\|CATEGORY\)\]/ end=/$/ contains=descTag,descCategory
 | |
| 
 | |
| syn region descTagRegion start=/^\[\(F\|FLAG\)\]/ end=/$/ contains=descTag,descFlag
 | |
| 
 | |
| syn region descTagRegion start=/^\[\(L\|LICENSE\)\]/ end=/$/ contains=descTag,descLicense
 | |
| 
 | |
| " For version 5.7 and earlier: only when not done already
 | |
| " Define the default highlighting.
 | |
| " For version 5.8 and later: only when an item doesn't have highlighting yet
 | |
| if version >= 508 || !exists("did_desc_syntax_inits")
 | |
|   if version < 508
 | |
|     let did_desc_syntax_inits = 1
 | |
|     command -nargs=+ HiLink hi link <args>
 | |
|   else
 | |
|     command -nargs=+ HiLink hi def link <args>
 | |
|   endif
 | |
| 
 | |
|   HiLink descFlag		Identifier
 | |
|   HiLink descLicense		Identifier
 | |
|   HiLink descCategory		Identifier
 | |
| 
 | |
|   HiLink descTag		Type
 | |
|   HiLink descUrl		Underlined
 | |
|   HiLink descEmail		Underlined
 | |
| 
 | |
|   " priority tag colors
 | |
|   HiLink descInstallX		Boolean
 | |
|   HiLink descInstallO		Type
 | |
|   HiLink descDash		Operator
 | |
|   HiLink descDigit		Number
 | |
|   HiLink descCompilePriority	Number
 | |
| 
 | |
|   " download tag colors
 | |
|   HiLink descSum		Number
 | |
|   HiLink descTarball		Underlined
 | |
| 
 | |
|   " tag region colors
 | |
|   HiLink descText		Comment
 | |
| 
 | |
|   delcommand HiLink
 | |
| endif
 | |
| 
 | |
| let b:current_syntax = "desc"
 |