Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
haste.vim143 linesDownload Raw Back to syntax
1" Vim syntax file2" Language:	HASTE - a language for VLSI IC programming3" Maintainer:	M. Tranchero - maurizio.tranchero?gmail.com4" Credits:	some parts have been taken from vhdl, verilog, and C syntax5"		files6" Version:	0.97" Last Change:	0.9 improvement of haste numbers detection8" Change:	0.8 error matching for wrong hierarchical connections 9" Change:	0.7 added more rules to highlight pre-processor directives10 11" HASTE12if exists("b:current_syntax")13    finish14endif15" quit when a syntax file was already loaded16if exists("b:current_syntax")17  finish18endif19 20" case is significant21syn case match22 23" HASTE keywords24syn keyword hasteStatement act alias arb array begin bitvec 25syn keyword hasteStatement bitwidth boolvec broad case26syn keyword hasteStatement cast chan const dataprobe do edge27syn keyword hasteStatement else end export false ff fi file28syn keyword hasteStatement fit for forever func if import29syn keyword hasteStatement inprobe is les main narb narrow30syn keyword hasteStatement negedge od of or outprobe pas31syn keyword hasteStatement posedge probe proc ram ramreg32syn keyword hasteStatement repeat rom romreg sample sel si33syn keyword hasteStatement sign sizeof skip stop then true34syn keyword hasteStatement type until var wait wire35syn keyword hasteFutureExt Z ffe partial 36syn keyword hasteVerilog   buf reg while 37 38" Special match for "if", "or", and "else" since "else if"39" and other "else+if" combination shouldn't be highlighted.40" The right keyword is "or" 41syn match   hasteStatement	"\<\(if\|then\|else\|fi\)\>"42syn match   hasteNone		"\<else\s\+if\>$"43syn match   hasteNone		"\<else\s\+if\>\s"44syn match   hasteNone		"\<elseif\>\s"45syn match   hasteNone		"\<elsif\>\s"46syn match   hasteStatement	"\<\(case\|is\|si\)\>"47syn match   hasteStatement	"\<\(repeat\|until\)\>"48syn match   hasteStatement	"\<\(forever\|do\|od\)\>"49syn match   hasteStatement	"\<\(for\|do\|od\)\>"50syn match   hasteStatement	"\<\(do\|or\|od\)\>"51syn match   hasteStatement	"\<\(sel\|les\)\>"52syn match   hasteError		"\<\d\+[_a-zA-Z]\+\>"53syn match   hasteError		"\(\([[:alnum:]]\+\s*(\s\+\|)\s*,\)\)\s*\([[:alnum:]]\+\s*(\)"54 55" Predifined Haste types56syn keyword hasteType bool57 58" Values for standard Haste types59" syn match hasteVector "\'[0L1HXWZU\-\?]\'"60 61syn match  hasteVector "0b\"[01_]\+\""62syn match  hasteVector "0x\"[0-9a-f_]\+\""63syn match  hasteCharacter "'.'"64" syn region hasteString start=+"+  end=+"+65syn match  hasteIncluded	display contained "<[^>]*>"66syn match  hasteIncluded	display contained "<[^"]*>"67syn region hasteInclude	start="^\s*#include\>\s*" end="$" contains=hasteIncluded,hasteString68 69" integer numbers70syn match hasteNumber "\d\+\^[[:alnum:]]*[-+]\{0,1\}[[:alnum:]]*"71syn match hasteNumber "-\=\<\d\+\(\^[+\-]\=\d\+\)\>"72syn match hasteNumber "-\=\<\d\+\>"73" syn match hasteNumber "0*2#[01_]\+#\(\^[+\-]\=\d\+\)\="74" syn match hasteNumber "0*16#[0-9a-f_]\+#\(\^[+\-]\=\d\+\)\="75" operators76syn keyword hasteSeparators	& , . \| 77syn keyword hasteExecution	\|\| ; @78syn keyword hasteOperator	:= ? ! :79syn keyword hasteTypeConstr	"[" << >> .. "]" ~80syn keyword hasteExprOp		< <= >= > = # <> + - * == ##81syn keyword hasteMisc		( ) 0x 0b82"83syn match   hasteSeparators	"[&:\|,.]"84syn match   hasteOperator	":="85syn match   hasteOperator	":"86syn match   hasteOperator	"?"87syn match   hasteOperator	"!"88syn match   hasteExecution	"||"89syn match   hasteExecution	";"90syn match   hasteExecution	"@"91syn match   hasteType		"\[\["92syn match   hasteType		"\]\]"93syn match   hasteType		"<<"94syn match   hasteType		">>"95syn match   hasteExprOp		"<"96syn match   hasteExprOp		"<="97syn match   hasteExprOp		">="98syn match   hasteExprOp		">"99syn match   hasteExprOp		"<>"100syn match   hasteExprOp		"="101syn match   hasteExprOp		"=="102syn match   hasteExprOp		"##"103" syn match   hasteExprOp		"#"104syn match   hasteExprOp		"*"105syn match   hasteExprOp		"+"106 107syn region  hasteComment start="/\*" end="\*/" contains=@Spell108syn region  hasteComment start="{" end="}" contains=@Spell109syn match   hasteComment "//.*" contains=@Spell110 111" Define the default highlighting.112" Only when an item doesn't have highlighting yet113hi def link hasteSpecial	Special114hi def link hasteStatement	Statement115hi def link hasteCharacter	String116hi def link hasteString		String117hi def link hasteVector		String118hi def link hasteBoolean	String119hi def link hasteComment	Comment120hi def link hasteNumber		String121hi def link hasteTime		String122hi def link hasteType		Type123hi def link hasteGlobal		Error124hi def link hasteError		Error125hi def link hasteAttribute	Type126"127hi def link hasteSeparators	Special128hi def link hasteExecution	Special129hi def link hasteTypeConstr	Special130hi def link hasteOperator	Type131hi def link hasteExprOp		Type132hi def link hasteMisc		String133hi def link hasteFutureExt 	Error134hi def link hasteVerilog	Error135hi def link hasteDefine		Macro136hi def link hasteInclude	Include137" hi def link hastePreProc	Preproc138" hi def link hastePreProcVar	Special139 140let b:current_syntax = "haste"141 142" vim: ts=8143 
codekingpro/portable-devtools · Team Ai