mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-04 01:34:25 +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>
		
	
		
			
				
	
	
		
			220 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			220 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
" Vim syntax file
 | 
						|
" Language:	Virata AConfig Configuration Script
 | 
						|
" Maintainer:	Manuel M.H. Stol	<mmh.stol@gmx.net>
 | 
						|
" Last Change:	2003 May 11
 | 
						|
" Vim URL:	http://www.vim.org/lang.html
 | 
						|
" Virata URL:	http://www.globespanvirata.com/
 | 
						|
 | 
						|
 | 
						|
" Virata AConfig Configuration Script syntax
 | 
						|
"  Can be detected by: 1) Extension .hw, .sw, .pkg and .module
 | 
						|
"		       2) The file name pattern "mk.*\.cfg"
 | 
						|
"		       3) The string "Virata" in the first 5 lines
 | 
						|
 | 
						|
 | 
						|
" Setup Syntax:
 | 
						|
if version < 600
 | 
						|
  "  Clear old syntax settings
 | 
						|
  syn clear
 | 
						|
elseif exists("b:current_syntax")
 | 
						|
  finish
 | 
						|
endif
 | 
						|
"  Virata syntax is case insensitive (mostly)
 | 
						|
syn case ignore
 | 
						|
 | 
						|
 | 
						|
 | 
						|
" Comments:
 | 
						|
" Virata comments start with %, but % is not a keyword character
 | 
						|
syn region  virataComment	start="^%" start="\s%"lc=1 keepend end="$" contains=@virataGrpInComments
 | 
						|
syn region  virataSpclComment	start="^%%" start="\s%%"lc=1 keepend end="$" contains=@virataGrpInComments
 | 
						|
syn keyword virataInCommentTodo	contained TODO FIXME XXX[XXXXX] REVIEW TBD
 | 
						|
syn cluster virataGrpInComments	contains=virataInCommentTodo
 | 
						|
syn cluster virataGrpComments	contains=@virataGrpInComments,virataComment,virataSpclComment
 | 
						|
 | 
						|
 | 
						|
" Constants:
 | 
						|
syn match   virataStringError	+["]+
 | 
						|
syn region  virataString	start=+"+ skip=+\(\\\\\|\\"\)+ end=+"+ oneline contains=virataSpclCharError,virataSpclChar,@virataGrpDefSubsts
 | 
						|
syn match   virataCharacter	+'[^']\{-}'+ contains=virataSpclCharError,virataSpclChar
 | 
						|
syn match   virataSpclChar	contained +\\\(x\x\+\|\o\{1,3}\|['\"?\\abefnrtv]\)+
 | 
						|
syn match   virataNumberError	"\<\d\{-1,}\I\{-1,}\>"
 | 
						|
syn match   virataNumberError	"\<0x\x*\X\x*\>"
 | 
						|
syn match   virataNumberError	"\<\d\+\.\d*\(e[+-]\=\d\+\)\=\>"
 | 
						|
syn match   virataDecNumber	"\<\d\+U\=L\=\>"
 | 
						|
syn match   virataHexNumber	"\<0x\x\+U\=L\=\>"
 | 
						|
syn match   virataSizeNumber	"\<\d\+[BKM]\>"he=e-1
 | 
						|
syn match   virataSizeNumber	"\<\d\+[KM]B\>"he=e-2
 | 
						|
syn cluster virataGrpNumbers	contains=virataNumberError,virataDecNumber,virataHexNumber,virataSizeNumber
 | 
						|
syn cluster virataGrpConstants	contains=@virataGrpNumbers,virataStringError,virataString,virataCharacter,virataSpclChar
 | 
						|
 | 
						|
 | 
						|
" Identifiers:
 | 
						|
syn match   virataIdentError	contained "\<\D\S*\>"
 | 
						|
syn match   virataIdentifier	contained "\<\I\i\{-}\(\-\i\{-1,}\)*\>" contains=@virataGrpDefSubsts
 | 
						|
syn match   virataFileIdent	contained "\F\f*" contains=@virataGrpDefSubsts
 | 
						|
syn cluster virataGrpIdents	contains=virataIdentifier,virataIdentError
 | 
						|
syn cluster virataGrpFileIdents	contains=virataFileIdent,virataIdentError
 | 
						|
 | 
						|
 | 
						|
" Statements:
 | 
						|
syn match   virataStatement	"^\s*Config\(\(/Kernel\)\=\.\(hs\=\|s\)\)\=\>"
 | 
						|
syn match   virataStatement	"^\s*Config\s\+\I\i\{-}\(\-\i\{-1,}\)*\.\(hs\=\|s\)\>"
 | 
						|
syn match   virataStatement	"^\s*Make\.\I\i\{-}\(\-\i\{-1}\)*\>" skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataStatement	"^\s*Make\.c\(at\)\=++\s"me=e-1 skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataStatement	"^\s*\(Architecture\|GetEnv\|Reserved\|\(Un\)\=Define\|Version\)\>" skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataStatement	"^\s*\(Hardware\|ModuleSource\|\(Release\)\=Path\|Software\)\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
syn match   virataStatement	"^\s*\(DefaultPri\|Hydrogen\)\>" skipwhite nextgroup=virataDecNumber,virataNumberError
 | 
						|
syn match   virataStatement	"^\s*\(NoInit\|PCI\|SysLink\)\>"
 | 
						|
syn match   virataStatement	"^\s*Allow\s\+\(ModuleConfig\)\>"
 | 
						|
syn match   virataStatement	"^\s*NoWarn\s\+\(Export\|Parse\=able\|Relative]\)\>"
 | 
						|
syn match   virataStatement	"^\s*Debug\s\+O\(ff\|n\)\>"
 | 
						|
 | 
						|
" Import (Package <exec>|Module <name> from <dir>)
 | 
						|
syn region  virataImportDef	transparent matchgroup=virataStatement start="^\s*Import\>" keepend end="$" contains=virataInImport,virataModuleDef,virataNumberError,virataStringError,@virataGrpDefSubsts
 | 
						|
syn match   virataInImport	contained "\<\(Module\|Package\|from\)\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
" Export (Header <header file>|SLibrary <obj file>)
 | 
						|
syn region  virataExportDef	transparent matchgroup=virataStatement start="^\s*Export\>" keepend end="$" contains=virataInExport,virataNumberError,virataStringError,@virataGrpDefSubsts
 | 
						|
syn match   virataInExport	contained "\<\(Header\|[SU]Library\)\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
" Process <name> is <dir/exec>
 | 
						|
syn region  virataProcessDef	transparent matchgroup=virataStatement start="^\s*Process\>" keepend end="$" contains=virataInProcess,virataInExec,virataNumberError,virataStringError,@virataGrpDefSubsts,@virataGrpIdents
 | 
						|
syn match   virataInProcess	contained "\<is\>"
 | 
						|
" Instance <name> of <module>
 | 
						|
syn region  virataInstanceDef	transparent matchgroup=virataStatement start="^\s*Instance\>" keepend end="$" contains=virataInInstance,virataNumberError,virataStringError,@virataGrpDefSubsts,@virataGrpIdents
 | 
						|
syn match   virataInInstance	contained "\<of\>"
 | 
						|
" Module <name> from <dir>
 | 
						|
syn region  virataModuleDef	transparent matchgroup=virataStatement start="^\s*\(Package\|Module\)\>" keepend end="$" contains=virataInModule,virataNumberError,virataStringError,@virataGrpDefSubsts
 | 
						|
syn match   virataInModule	contained "^\s*Package\>"hs=e-7 skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataInModule	contained "^\s*Module\>"hs=e-6 skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataInModule	contained "\<from\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
" Colour <name> from <dir>
 | 
						|
syn region  virataColourDef	transparent matchgroup=virataStatement start="^\s*Colour\>" keepend end="$" contains=virataInColour,virataNumberError,virataStringError,@virataGrpDefSubsts
 | 
						|
syn match   virataInColour	contained "^\s*Colour\>"hs=e-6 skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataInColour	contained "\<from\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
" Link {<link cmds>}
 | 
						|
" Object {Executable [<ExecOptions>]}
 | 
						|
syn match   virataStatement	"^\s*\(Link\|Object\)"
 | 
						|
" Executable <name> [<ExecOptions>]
 | 
						|
syn region  virataExecDef	transparent matchgroup=virataStatement start="^\s*Executable\>" keepend end="$" contains=virataInExec,virataNumberError,virataStringError
 | 
						|
syn match   virataInExec	contained "^\s*Executable\>" skipwhite nextgroup=@virataGrpDefSubsts,@virataGrpIdents
 | 
						|
syn match   virataInExec	contained "\<\(epilogue\|pro\(logue\|cess\)\|qhandler\)\>" skipwhite nextgroup=@virataGrpDefSubsts,@virataGrpIdents
 | 
						|
syn match   virataInExec	contained "\<\(priority\|stack\)\>" skipwhite nextgroup=@virataGrpDefSubsts,@virataGrpNumbers
 | 
						|
" Message <name> {<msg format>}
 | 
						|
" MessageId <number>
 | 
						|
syn match   virataStatement	"^\s*Message\(Id\)\=\>" skipwhite nextgroup=@virataGrpNumbers
 | 
						|
" MakeRule <make suffix=file> {<make cmds>}
 | 
						|
syn region  virataMakeDef	transparent matchgroup=virataStatement start="^\s*MakeRule\>" keepend end="$" contains=virataInMake,@virataGrpDefSubsts
 | 
						|
syn case match
 | 
						|
syn match   virataInMake	contained "\<N\>"
 | 
						|
syn case ignore
 | 
						|
" (Append|Edit|Copy)Rule <make suffix=file> <subst cmd>
 | 
						|
syn match   virataStatement	"^\s*\(Append\|Copy\|Edit\)Rule\>"
 | 
						|
" AlterRules in <file> <subst cmd>
 | 
						|
syn region  virataAlterDef	transparent matchgroup=virataStatement start="^\s*AlterRules\>" keepend end="$" contains=virataInAlter,@virataGrpDefSubsts
 | 
						|
syn match   virataInAlter	contained "\<in\>" skipwhite nextgroup=@virataGrpIdents
 | 
						|
" Clustering
 | 
						|
syn cluster virataGrpInStatmnts	contains=virataInImport,virataInExport,virataInExec,virataInProcess,virataInAlter,virataInInstance,virataInModule,virataInColour
 | 
						|
syn cluster virataGrpStatements	contains=@virataGrpInStatmnts,virataStatement,virataImportDef,virataExportDef,virataExecDef,virataProcessDef,virataAlterDef,virataInstanceDef,virataModuleDef,virataColourDef
 | 
						|
 | 
						|
 | 
						|
" MkFlash.Cfg File Statements:
 | 
						|
syn region  virataCfgFileDef	transparent matchgroup=virataCfgStatement start="^\s*Dir\>" start="^\s*\a\{-}File\>" start="^\s*OutputFile\d\d\=\>" start="^\s*\a\w\{-}[NP]PFile\>" keepend end="$" contains=@virataGrpFileIdents
 | 
						|
syn region  virataCfgSizeDef	transparent matchgroup=virataCfgStatement start="^\s*\a\{-}Size\>" start="^\s*ConfigInfo\>" keepend end="$" contains=@virataGrpNumbers,@virataGrpDefSubsts,virataIdentError
 | 
						|
syn region  virataCfgNumberDef	transparent matchgroup=virataCfgStatement start="^\s*FlashchipNum\(b\(er\=\)\=\)\=\>" start="^\s*Granularity\>" keepend end="$" contains=@virataGrpNumbers,@virataGrpDefSubsts
 | 
						|
syn region  virataCfgMacAddrDef	transparent matchgroup=virataCfgStatement start="^\s*MacAddress\>" keepend end="$" contains=virataNumberError,virataStringError,virataIdentError,virataInMacAddr,@virataGrpDefSubsts
 | 
						|
syn match   virataInMacAddr	contained "\x[:]\x\{1,2}\>"lc=2
 | 
						|
syn match   virataInMacAddr	contained "\s\x\{1,2}[:]\x"lc=1,me=e-1,he=e-2 nextgroup=virataInMacAddr
 | 
						|
syn match   virataCfgStatement	"^\s*Target\>" skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn cluster virataGrpCfgs	contains=virataCfgStatement,virataCfgFileDef,virataCfgSizeDef,virataCfgNumberDef,virataCfgMacAddrDef,virataInMacAddr
 | 
						|
 | 
						|
 | 
						|
 | 
						|
" PreProcessor Instructions:
 | 
						|
"  Defines
 | 
						|
syn match   virataDefine	"^\s*\(Un\)\=Set\>" skipwhite nextgroup=@virataGrpIdents
 | 
						|
syn match   virataInclude	"^\s*Include\>" skipwhite nextgroup=@virataGrpFileIdents
 | 
						|
syn match   virataDefSubstError	"[^$]\$"lc=1
 | 
						|
syn match   virataDefSubstError	"\$\(\w\|{\(.\{-}}\)\=\)"
 | 
						|
syn case match
 | 
						|
syn match   virataDefSubst	"\$\(\d\|[DINORS]\|{\I\i\{-}\(\-\i\{-1,}\)*}\)"
 | 
						|
syn case ignore
 | 
						|
"  Conditionals
 | 
						|
syn cluster virataGrpCntnPreCon	contains=ALLBUT,@virataGrpInComments,@virataGrpFileIdents,@virataGrpInStatmnts
 | 
						|
syn region  virataPreConDef	transparent matchgroup=virataPreCondit start="^\s*If\>" end="^\s*Endif\>" contains=@virataGrpCntnPreCon
 | 
						|
syn match   virataPreCondit	contained "^\s*Else\(\s\+If\)\=\>"
 | 
						|
syn region  virataPreConDef	transparent matchgroup=virataPreCondit start="^\s*ForEach\>" end="^\s*Done\>" contains=@virataGrpCntnPreCon
 | 
						|
"  Pre-Processors
 | 
						|
syn region  virataPreProc	start="^\s*Error\>" start="^\s*Warning\>" oneline end="$" contains=@virataGrpConstants,@virataGrpDefSubsts
 | 
						|
syn cluster virataGrpDefSubsts	contains=virataDefSubstError,virataDefSubst
 | 
						|
syn cluster virataGrpPreProcs	contains=@virataGrpDefSubsts,virataDefine,virataInclude,virataPreConDef,virataPreCondit,virataPreProc
 | 
						|
 | 
						|
 | 
						|
" Synchronize Syntax:
 | 
						|
syn sync clear
 | 
						|
syn sync minlines=50		"for multiple region nesting
 | 
						|
 | 
						|
 | 
						|
 | 
						|
" 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_virata_syntax_inits")
 | 
						|
  if version < 508
 | 
						|
    let did_virata_syntax_inits = 1
 | 
						|
    command -nargs=+ HiLink hi link <args>
 | 
						|
  else
 | 
						|
    command -nargs=+ HiLink hi def link <args>
 | 
						|
  endif
 | 
						|
 | 
						|
  " Sub Links:
 | 
						|
  HiLink virataDefSubstError	virataPreProcError
 | 
						|
  HiLink virataDefSubst		virataPreProc
 | 
						|
  HiLink virataInAlter		virataOperator
 | 
						|
  HiLink virataInExec		virataOperator
 | 
						|
  HiLink virataInExport		virataOperator
 | 
						|
  HiLink virataInImport		virataOperator
 | 
						|
  HiLink virataInInstance	virataOperator
 | 
						|
  HiLink virataInMake		virataOperator
 | 
						|
  HiLink virataInModule		virataOperator
 | 
						|
  HiLink virataInProcess	virataOperator
 | 
						|
  HiLink virataInMacAddr	virataHexNumber
 | 
						|
 | 
						|
  " Comment Group:
 | 
						|
  HiLink virataComment		Comment
 | 
						|
  HiLink virataSpclComment	SpecialComment
 | 
						|
  HiLink virataInCommentTodo	Todo
 | 
						|
 | 
						|
  " Constant Group:
 | 
						|
  HiLink virataString		String
 | 
						|
  HiLink virataStringError	Error
 | 
						|
  HiLink virataCharacter	Character
 | 
						|
  HiLink virataSpclChar		Special
 | 
						|
  HiLink virataDecNumber	Number
 | 
						|
  HiLink virataHexNumber	Number
 | 
						|
  HiLink virataSizeNumber	Number
 | 
						|
  HiLink virataNumberError	Error
 | 
						|
 | 
						|
  " Identifier Group:
 | 
						|
  HiLink virataIdentError	Error
 | 
						|
 | 
						|
  " PreProc Group:
 | 
						|
  HiLink virataPreProc		PreProc
 | 
						|
  HiLink virataDefine		Define
 | 
						|
  HiLink virataInclude		Include
 | 
						|
  HiLink virataPreCondit	PreCondit
 | 
						|
  HiLink virataPreProcError	Error
 | 
						|
  HiLink virataPreProcWarn	Todo
 | 
						|
 | 
						|
  " Directive Group:
 | 
						|
  HiLink virataStatement	Statement
 | 
						|
  HiLink virataCfgStatement	Statement
 | 
						|
  HiLink virataOperator		Operator
 | 
						|
  HiLink virataDirective	Keyword
 | 
						|
 | 
						|
  delcommand HiLink
 | 
						|
endif
 | 
						|
 | 
						|
let b:current_syntax = "virata"
 | 
						|
 | 
						|
" vim:ts=8:sw=2:noet:
 |