| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | " Vim syntax file | 
					
						
							|  |  |  |  | " Language:	SAS | 
					
						
							|  |  |  |  | " Maintainer:	James Kidd <james.kidd@covance.com> | 
					
						
							| 
									
										
										
										
											2012-04-25 19:07:41 +02:00
										 |  |  |  | " Last Change:  2012 Apr 20 | 
					
						
							|  |  |  |  | "               Corrected bug causing some keywords to appear as strings instead | 
					
						
							|  |  |  |  | "               18 Jul 2008 by Paulo Tanimoto <ptanimoto@gmail.com> | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | "               Fixed comments with * taking multiple lines. | 
					
						
							|  |  |  |  | "               Fixed highlighting of macro keywords. | 
					
						
							|  |  |  |  | "               Added words to cases that didn't fit anywhere. | 
					
						
							|  |  |  |  | "             	02 Jun 2003 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | "		Added highlighting for additional keywords and such; | 
					
						
							|  |  |  |  | "		Attempted to match SAS default syntax colors; | 
					
						
							|  |  |  |  | "		Changed syncing so it doesn't lose colors on large blocks; | 
					
						
							|  |  |  |  | "		Much thanks to Bob Heckel for knowledgeable tweaking. | 
					
						
							|  |  |  |  | "  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 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region sasString	start=+"+  skip=+\\\\\|\\"+  end=+"+ | 
					
						
							|  |  |  |  | syn region sasString	start=+'+  skip=+\\\\\|\\"+  end=+'+ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Want region from 'cards;' to ';' to be captured (Bob Heckel) | 
					
						
							|  |  |  |  | syn region sasCards	start="^\s*CARDS.*" end="^\s*;\s*$" | 
					
						
							|  |  |  |  | syn region sasCards	start="^\s*DATALINES.*" end="^\s*;\s*$" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match sasNumber	"-\=\<\d*\.\=[0-9_]\>" | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | " Block comment | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | syn region sasComment	start="/\*"  end="\*/" contains=sasTodo | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | " Ignore misleading //JCL SYNTAX... (Bob Heckel) | 
					
						
							|  |  |  |  | syn region sasComment	start="[^/][^/]/\*"  end="\*/" contains=sasTodo | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | " Previous code for comments was written by Bob Heckel | 
					
						
							|  |  |  |  | " Comments with * may take multiple lines (Paulo Tanimoto) | 
					
						
							|  |  |  |  | syn region sasComment start=";\s*\*"hs=s+1 end=";" contains=sasTodo | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | " Comments with * starting after a semicolon (Paulo Tanimoto) | 
					
						
							|  |  |  |  | syn region sasComment start="^\s*\*" end=";" contains=sasTodo | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | " This line defines macro variables in code.  HiLink at end of file | 
					
						
							|  |  |  |  | " defines the color scheme. Begin region with ampersand and end with | 
					
						
							|  |  |  |  | " any non-word character offset by -1; put ampersand in the skip list | 
					
						
							|  |  |  |  | " just in case it is used to concatenate macro variable values. | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Thanks to ronald h<>llwarth for this fix to an intra-versioning | 
					
						
							|  |  |  |  | " problem with this little feature | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | if version < 600 | 
					
						
							|  |  |  |  |    syn region sasMacroVar	start="\&" skip="[_&]" end="\W"he=e-1 | 
					
						
							|  |  |  |  | else		 " for the older Vim's just do it their way ... | 
					
						
							|  |  |  |  |    syn region sasMacroVar	start="&" skip="[_&]" end="\W"he=e-1 | 
					
						
							|  |  |  |  | endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " I dont think specific PROCs need to be listed if use this line (Bob Heckel). | 
					
						
							|  |  |  |  | syn match sasProc		"^\s*PROC \w\+" | 
					
						
							|  |  |  |  | syn keyword sasStep		RUN QUIT DATA | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Base SAS Procs - version 8.1 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword sasConditional	DO ELSE END IF THEN UNTIL WHILE | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword sasStatement	ABORT ARRAY ATTRIB BY CALL CARDS CARDS4 CATNAME | 
					
						
							|  |  |  |  | syn keyword sasStatement	CONTINUE DATALINES DATALINES4 DELETE DISPLAY | 
					
						
							|  |  |  |  | syn keyword sasStatement	DM DROP ENDSAS ERROR FILE FILENAME FOOTNOTE | 
					
						
							|  |  |  |  | syn keyword sasStatement	FORMAT GOTO INFILE INFORMAT INPUT KEEP | 
					
						
							|  |  |  |  | syn keyword sasStatement	LABEL LEAVE LENGTH LIBNAME LINK LIST LOSTCARD | 
					
						
							|  |  |  |  | syn keyword sasStatement	MERGE MISSING MODIFY OPTIONS OUTPUT PAGE | 
					
						
							|  |  |  |  | syn keyword sasStatement	PUT REDIRECT REMOVE RENAME REPLACE RETAIN | 
					
						
							|  |  |  |  | syn keyword sasStatement	RETURN SELECT SET SKIP STARTSAS STOP TITLE | 
					
						
							|  |  |  |  | syn keyword sasStatement	UPDATE WAITSAS WHERE WINDOW X SYSTASK | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Keywords that are used in Proc SQL | 
					
						
							|  |  |  |  | " I left them as statements because SAS's enhanced editor highlights | 
					
						
							|  |  |  |  | " them the same as normal statements used in data steps (Jim Kidd) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword sasStatement	ADD AND ALTER AS CASCADE CHECK CREATE | 
					
						
							|  |  |  |  | syn keyword sasStatement	DELETE DESCRIBE DISTINCT DROP FOREIGN | 
					
						
							|  |  |  |  | syn keyword sasStatement	FROM GROUP HAVING INDEX INSERT INTO IN | 
					
						
							|  |  |  |  | syn keyword sasStatement	KEY LIKE MESSAGE MODIFY MSGTYPE NOT | 
					
						
							|  |  |  |  | syn keyword sasStatement	NULL ON OR ORDER PRIMARY REFERENCES | 
					
						
							|  |  |  |  | syn keyword sasStatement	RESET RESTRICT SELECT SET TABLE | 
					
						
							|  |  |  |  | syn keyword sasStatement	UNIQUE UPDATE VALIDATE VIEW WHERE | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | " Match declarations have to appear one per line (Paulo Tanimoto) | 
					
						
							|  |  |  |  | syn match sasStatement	"FOOTNOTE\d" | 
					
						
							|  |  |  |  | syn match sasStatement	"TITLE\d" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Match declarations have to appear one per line (Paulo Tanimoto) | 
					
						
							|  |  |  |  | syn match sasMacro "%BQUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%NRBQUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%CMPRES" | 
					
						
							|  |  |  |  | syn match sasMacro "%QCMPRES" | 
					
						
							|  |  |  |  | syn match sasMacro "%COMPSTOR" | 
					
						
							|  |  |  |  | syn match sasMacro "%DATATYP" | 
					
						
							|  |  |  |  | syn match sasMacro "%DISPLAY" | 
					
						
							|  |  |  |  | syn match sasMacro "%DO" | 
					
						
							|  |  |  |  | syn match sasMacro "%ELSE" | 
					
						
							|  |  |  |  | syn match sasMacro "%END" | 
					
						
							|  |  |  |  | syn match sasMacro "%EVAL" | 
					
						
							|  |  |  |  | syn match sasMacro "%GLOBAL" | 
					
						
							|  |  |  |  | syn match sasMacro "%GOTO" | 
					
						
							|  |  |  |  | syn match sasMacro "%IF" | 
					
						
							|  |  |  |  | syn match sasMacro "%INDEX" | 
					
						
							|  |  |  |  | syn match sasMacro "%INPUT" | 
					
						
							|  |  |  |  | syn match sasMacro "%KEYDEF" | 
					
						
							|  |  |  |  | syn match sasMacro "%LABEL" | 
					
						
							|  |  |  |  | syn match sasMacro "%LEFT" | 
					
						
							|  |  |  |  | syn match sasMacro "%LENGTH" | 
					
						
							|  |  |  |  | syn match sasMacro "%LET" | 
					
						
							|  |  |  |  | syn match sasMacro "%LOCAL" | 
					
						
							|  |  |  |  | syn match sasMacro "%LOWCASE" | 
					
						
							|  |  |  |  | syn match sasMacro "%MACRO" | 
					
						
							|  |  |  |  | syn match sasMacro "%MEND" | 
					
						
							|  |  |  |  | syn match sasMacro "%NRBQUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%NRQUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%NRSTR" | 
					
						
							|  |  |  |  | syn match sasMacro "%PUT" | 
					
						
							|  |  |  |  | syn match sasMacro "%QCMPRES" | 
					
						
							|  |  |  |  | syn match sasMacro "%QLEFT" | 
					
						
							|  |  |  |  | syn match sasMacro "%QLOWCASE" | 
					
						
							|  |  |  |  | syn match sasMacro "%QSCAN" | 
					
						
							|  |  |  |  | syn match sasMacro "%QSUBSTR" | 
					
						
							|  |  |  |  | syn match sasMacro "%QSYSFUNC" | 
					
						
							|  |  |  |  | syn match sasMacro "%QTRIM" | 
					
						
							|  |  |  |  | syn match sasMacro "%QUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%QUPCASE" | 
					
						
							|  |  |  |  | syn match sasMacro "%SCAN" | 
					
						
							|  |  |  |  | syn match sasMacro "%STR" | 
					
						
							|  |  |  |  | syn match sasMacro "%SUBSTR" | 
					
						
							|  |  |  |  | syn match sasMacro "%SUPERQ" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSCALL" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSEVALF" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSEXEC" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSFUNC" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSGET" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSLPUT" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSPROD" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSRC" | 
					
						
							|  |  |  |  | syn match sasMacro "%SYSRPUT" | 
					
						
							|  |  |  |  | syn match sasMacro "%THEN" | 
					
						
							|  |  |  |  | syn match sasMacro "%TO" | 
					
						
							|  |  |  |  | syn match sasMacro "%TRIM" | 
					
						
							|  |  |  |  | syn match sasMacro "%UNQUOTE" | 
					
						
							|  |  |  |  | syn match sasMacro "%UNTIL" | 
					
						
							|  |  |  |  | syn match sasMacro "%UPCASE" | 
					
						
							|  |  |  |  | syn match sasMacro "%VERIFY" | 
					
						
							|  |  |  |  | syn match sasMacro "%WHILE" | 
					
						
							|  |  |  |  | syn match sasMacro "%WINDOW" | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | " SAS Functions | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword sasFunction	ABS ADDR AIRY ARCOS ARSIN ATAN ATTRC ATTRN | 
					
						
							|  |  |  |  | syn keyword sasFunction	BAND BETAINV BLSHIFT BNOT BOR BRSHIFT BXOR | 
					
						
							|  |  |  |  | syn keyword sasFunction	BYTE CDF CEIL CEXIST CINV CLOSE CNONCT COLLATE | 
					
						
							|  |  |  |  | syn keyword sasFunction	COMPBL COMPOUND COMPRESS COS COSH CSS CUROBS | 
					
						
							|  |  |  |  | syn keyword sasFunction	CV DACCDB DACCDBSL DACCSL DACCSYD DACCTAB | 
					
						
							|  |  |  |  | syn keyword sasFunction	DAIRY DATE DATEJUL DATEPART DATETIME DAY | 
					
						
							|  |  |  |  | syn keyword sasFunction	DCLOSE DEPDB DEPDBSL DEPDBSL DEPSL DEPSL | 
					
						
							|  |  |  |  | syn keyword sasFunction	DEPSYD DEPSYD DEPTAB DEPTAB DEQUOTE DHMS | 
					
						
							|  |  |  |  | syn keyword sasFunction	DIF DIGAMMA DIM DINFO DNUM DOPEN DOPTNAME | 
					
						
							|  |  |  |  | syn keyword sasFunction	DOPTNUM DREAD DROPNOTE DSNAME ERF ERFC EXIST | 
					
						
							|  |  |  |  | syn keyword sasFunction	EXP FAPPEND FCLOSE FCOL FDELETE FETCH FETCHOBS | 
					
						
							|  |  |  |  | syn keyword sasFunction	FEXIST FGET FILEEXIST FILENAME FILEREF FINFO | 
					
						
							|  |  |  |  | syn keyword sasFunction	FINV FIPNAME FIPNAMEL FIPSTATE FLOOR FNONCT | 
					
						
							|  |  |  |  | syn keyword sasFunction	FNOTE FOPEN FOPTNAME FOPTNUM FPOINT FPOS | 
					
						
							|  |  |  |  | syn keyword sasFunction	FPUT FREAD FREWIND FRLEN FSEP FUZZ FWRITE | 
					
						
							|  |  |  |  | syn keyword sasFunction	GAMINV GAMMA GETOPTION GETVARC GETVARN HBOUND | 
					
						
							|  |  |  |  | syn keyword sasFunction	HMS HOSTHELP HOUR IBESSEL INDEX INDEXC | 
					
						
							|  |  |  |  | syn keyword sasFunction	INDEXW INPUT INPUTC INPUTN INT INTCK INTNX | 
					
						
							|  |  |  |  | syn keyword sasFunction	INTRR IRR JBESSEL JULDATE KURTOSIS LAG LBOUND | 
					
						
							|  |  |  |  | syn keyword sasFunction	LEFT LENGTH LGAMMA LIBNAME LIBREF LOG LOG10 | 
					
						
							|  |  |  |  | syn keyword sasFunction	LOG2 LOGPDF LOGPMF LOGSDF LOWCASE MAX MDY | 
					
						
							|  |  |  |  | syn keyword sasFunction	MEAN MIN MINUTE MOD MONTH MOPEN MORT N | 
					
						
							|  |  |  |  | syn keyword sasFunction	NETPV NMISS NORMAL NOTE NPV OPEN ORDINAL | 
					
						
							|  |  |  |  | syn keyword sasFunction	PATHNAME PDF PEEK PEEKC PMF POINT POISSON POKE | 
					
						
							|  |  |  |  | syn keyword sasFunction	PROBBETA PROBBNML PROBCHI PROBF PROBGAM | 
					
						
							|  |  |  |  | syn keyword sasFunction	PROBHYPR PROBIT PROBNEGB PROBNORM PROBT PUT | 
					
						
							|  |  |  |  | syn keyword sasFunction	PUTC PUTN QTR QUOTE RANBIN RANCAU RANEXP | 
					
						
							|  |  |  |  | syn keyword sasFunction	RANGAM RANGE RANK RANNOR RANPOI RANTBL RANTRI | 
					
						
							|  |  |  |  | syn keyword sasFunction	RANUNI REPEAT RESOLVE REVERSE REWIND RIGHT | 
					
						
							|  |  |  |  | syn keyword sasFunction	ROUND SAVING SCAN SDF SECOND SIGN SIN SINH | 
					
						
							|  |  |  |  | syn keyword sasFunction	SKEWNESS SOUNDEX SPEDIS SQRT STD STDERR STFIPS | 
					
						
							|  |  |  |  | syn keyword sasFunction	STNAME STNAMEL SUBSTR SUM SYMGET SYSGET SYSMSG | 
					
						
							|  |  |  |  | syn keyword sasFunction	SYSPROD SYSRC SYSTEM TAN TANH TIME TIMEPART | 
					
						
							|  |  |  |  | syn keyword sasFunction	TINV TNONCT TODAY TRANSLATE TRANWRD TRIGAMMA | 
					
						
							|  |  |  |  | syn keyword sasFunction	TRIM TRIMN TRUNC UNIFORM UPCASE USS VAR | 
					
						
							|  |  |  |  | syn keyword sasFunction	VARFMT VARINFMT VARLABEL VARLEN VARNAME | 
					
						
							|  |  |  |  | syn keyword sasFunction	VARNUM VARRAY VARRAYX VARTYPE VERIFY VFORMAT | 
					
						
							|  |  |  |  | syn keyword sasFunction	VFORMATD VFORMATDX VFORMATN VFORMATNX VFORMATW | 
					
						
							|  |  |  |  | syn keyword sasFunction	VFORMATWX VFORMATX VINARRAY VINARRAYX VINFORMAT | 
					
						
							|  |  |  |  | syn keyword sasFunction	VINFORMATD VINFORMATDX VINFORMATN VINFORMATNX | 
					
						
							|  |  |  |  | syn keyword sasFunction	VINFORMATW VINFORMATWX VINFORMATX VLABEL | 
					
						
							|  |  |  |  | syn keyword sasFunction	VLABELX VLENGTH VLENGTHX VNAME VNAMEX VTYPE | 
					
						
							|  |  |  |  | syn keyword sasFunction	VTYPEX WEEKDAY YEAR YYQ ZIPFIPS ZIPNAME ZIPNAMEL | 
					
						
							|  |  |  |  | syn keyword sasFunction	ZIPSTATE | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Handy settings for using vim with log files | 
					
						
							|  |  |  |  | syn keyword sasLogMsg	NOTE | 
					
						
							|  |  |  |  | syn keyword sasWarnMsg	WARNING | 
					
						
							|  |  |  |  | syn keyword sasErrMsg	ERROR | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Always contained in a comment (Bob Heckel) | 
					
						
							|  |  |  |  | syn keyword sasTodo	TODO TBD FIXME contained | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " These don't fit anywhere else (Bob Heckel). | 
					
						
							| 
									
										
										
										
											2008-08-06 17:06:04 +00:00
										 |  |  |  | " Added others that were missing. | 
					
						
							| 
									
										
										
										
											2012-04-25 19:07:41 +02:00
										 |  |  |  | syn keyword sasUnderscore	_ALL_ _AUTOMATIC_ _CHARACTER_ _INFILE_ _N_ _NAME_ _NULL_ _NUMERIC_ _USER_ _WEBOUT_ | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | " End of SAS Functions | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | "  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_sas_syntax_inits") | 
					
						
							|  |  |  |  |    if version < 508 | 
					
						
							|  |  |  |  |       let did_sas_syntax_inits = 1 | 
					
						
							|  |  |  |  |       command -nargs=+ HiLink hi link <args> | 
					
						
							|  |  |  |  |    else | 
					
						
							|  |  |  |  |       command -nargs=+ HiLink hi def link <args> | 
					
						
							|  |  |  |  |    endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |    " Default sas enhanced editor color syntax | 
					
						
							|  |  |  |  | 	hi sComment	term=bold cterm=NONE ctermfg=Green ctermbg=Black gui=NONE guifg=DarkGreen guibg=White | 
					
						
							|  |  |  |  | 	hi sCard	term=bold cterm=NONE ctermfg=Black ctermbg=Yellow gui=NONE guifg=Black guibg=LightYellow | 
					
						
							|  |  |  |  | 	hi sDate_Time	term=NONE cterm=bold ctermfg=Green ctermbg=Black gui=bold guifg=SeaGreen guibg=White | 
					
						
							|  |  |  |  | 	hi sKeyword	term=NONE cterm=NONE ctermfg=Blue  ctermbg=Black gui=NONE guifg=Blue guibg=White | 
					
						
							|  |  |  |  | 	hi sFmtInfmt	term=NONE cterm=NONE ctermfg=LightGreen ctermbg=Black gui=NONE guifg=SeaGreen guibg=White | 
					
						
							|  |  |  |  | 	hi sString	term=NONE cterm=NONE ctermfg=Magenta ctermbg=Black gui=NONE guifg=Purple guibg=White | 
					
						
							|  |  |  |  | 	hi sText	term=NONE cterm=NONE ctermfg=White ctermbg=Black gui=bold guifg=Black guibg=White | 
					
						
							|  |  |  |  | 	hi sNumber	term=NONE cterm=bold ctermfg=Green ctermbg=Black gui=bold guifg=SeaGreen guibg=White | 
					
						
							|  |  |  |  | 	hi sProc	term=NONE cterm=bold ctermfg=Blue ctermbg=Black gui=bold guifg=Navy guibg=White | 
					
						
							|  |  |  |  | 	hi sSection	term=NONE cterm=bold ctermfg=Blue ctermbg=Black gui=bold guifg=Navy guibg=White | 
					
						
							|  |  |  |  | 	hi mDefine	term=NONE cterm=bold ctermfg=White ctermbg=Black gui=bold guifg=Black guibg=White | 
					
						
							|  |  |  |  | 	hi mKeyword	term=NONE cterm=NONE ctermfg=Blue ctermbg=Black gui=NONE guifg=Blue guibg=White | 
					
						
							|  |  |  |  | 	hi mReference	term=NONE cterm=bold ctermfg=White ctermbg=Black gui=bold guifg=Blue guibg=White | 
					
						
							|  |  |  |  | 	hi mSection	term=NONE cterm=NONE ctermfg=Blue ctermbg=Black gui=bold guifg=Navy guibg=White | 
					
						
							|  |  |  |  | 	hi mText	term=NONE cterm=NONE ctermfg=White ctermbg=Black gui=bold guifg=Black guibg=White | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Colors that closely match SAS log colors for default color scheme | 
					
						
							|  |  |  |  | 	hi lError	term=NONE cterm=NONE ctermfg=Red ctermbg=Black gui=none guifg=Red guibg=White | 
					
						
							|  |  |  |  | 	hi lWarning	term=NONE cterm=NONE ctermfg=Green ctermbg=Black gui=none guifg=Green guibg=White | 
					
						
							|  |  |  |  | 	hi lNote	term=NONE cterm=NONE ctermfg=Cyan ctermbg=Black gui=none guifg=Blue guibg=White | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |    " Special hilighting for the SAS proc section | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 	HiLink	sasComment	sComment | 
					
						
							|  |  |  |  | 	HiLink	sasConditional	sKeyword | 
					
						
							|  |  |  |  | 	HiLink	sasStep		sSection | 
					
						
							|  |  |  |  | 	HiLink	sasFunction	sKeyword | 
					
						
							|  |  |  |  | 	HiLink	sasMacro	mKeyword | 
					
						
							|  |  |  |  | 	HiLink	sasMacroVar	NonText | 
					
						
							|  |  |  |  | 	HiLink	sasNumber	sNumber | 
					
						
							|  |  |  |  | 	HiLink	sasStatement	sKeyword | 
					
						
							|  |  |  |  | 	HiLink	sasString	sString | 
					
						
							|  |  |  |  | 	HiLink	sasProc		sProc | 
					
						
							|  |  |  |  |    " (Bob Heckel) | 
					
						
							|  |  |  |  | 	HiLink	sasTodo		Todo | 
					
						
							|  |  |  |  | 	HiLink	sasErrMsg	lError | 
					
						
							|  |  |  |  | 	HiLink	sasWarnMsg	lWarning | 
					
						
							|  |  |  |  | 	HiLink	sasLogMsg	lNote | 
					
						
							|  |  |  |  | 	HiLink	sasCards	sCard | 
					
						
							|  |  |  |  |   " (Bob Heckel) | 
					
						
							|  |  |  |  | 	HiLink	sasUnderscore	PreProc | 
					
						
							|  |  |  |  | 	delcommand HiLink | 
					
						
							|  |  |  |  | endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " Syncronize from beginning to keep large blocks from losing | 
					
						
							|  |  |  |  | " syntax coloring while moving through code. | 
					
						
							|  |  |  |  | syn sync fromstart | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | let b:current_syntax = "sas" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " vim: ts=8 |