1
0
forked from aniani/vim

updated for version 7.2c-000

This commit is contained in:
Bram Moolenaar
2008-08-06 17:06:04 +00:00
parent da40c8536c
commit e37d50a5de
334 changed files with 8980 additions and 1524 deletions

View File

@@ -1,7 +1,11 @@
" Vim syntax file
" Language: SAS
" Maintainer: James Kidd <james.kidd@covance.com>
" Last Change: 02 Jun 2003
" Last Change: 18 Jul 2008 by Paulo Tanimoto <ptanimoto@gmail.com>
" Fixed comments with * taking multiple lines.
" Fixed highlighting of macro keywords.
" Added words to cases that didn't fit anywhere.
" 02 Jun 2003
" 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;
@@ -25,18 +29,18 @@ syn region sasCards start="^\s*DATALINES.*" end="^\s*;\s*$"
syn match sasNumber "-\=\<\d*\.\=[0-9_]\>"
" Block comment
syn region sasComment start="/\*" end="\*/" contains=sasTodo
" Ignore misleading //JCL SYNTAX... (Bob Heckel)
syn region sasComment start="[^/][^/]/\*" end="\*/" contains=sasTodo
" Allow highlighting of embedded TODOs (Bob Heckel)
syn match sasComment "^\s*\*.*;" contains=sasTodo
" 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
" Allow highlighting of embedded TODOs (Bob Heckel)
syn match sasComment ";\s*\*.*;"hs=s+1 contains=sasTodo
" Handle macro comments too (Bob Heckel).
syn match sasComment "^\s*%*\*.*;" contains=sasTodo
" Comments with * starting after a semicolon (Paulo Tanimoto)
syn region sasComment start="^\s*\*" end=";" contains=sasTodo
" This line defines macro variables in code. HiLink at end of file
" defines the color scheme. Begin region with ampersand and end with
@@ -84,24 +88,71 @@ 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
" Match declarations have to appear one per line (Paulo Tanimoto)
syn match sasStatement "FOOTNOTE\d"
syn match sasStatement "TITLE\d"
syn match sasStatement "FOOTNOTE\d" "TITLE\d"
syn match sasMacro "%BQUOTE" "%NRBQUOTE" "%CMPRES" "%QCMPRES"
syn match sasMacro "%COMPSTOR" "%DATATYP" "%DISPLAY" "%DO"
syn match sasMacro "%ELSE" "%END" "%EVAL" "%GLOBAL"
syn match sasMacro "%GOTO" "%IF" "%INDEX" "%INPUT"
syn match sasMacro "%KEYDEF" "%LABEL" "%LEFT" "%LENGTH"
syn match sasMacro "%LET" "%LOCAL" "%LOWCASE" "%MACRO"
syn match sasMacro "%MEND" "%NRBQUOTE" "%NRQUOTE" "%NRSTR"
syn match sasMacro "%PUT" "%QCMPRES" "%QLEFT" "%QLOWCASE"
syn match sasMacro "%QSCAN" "%QSUBSTR" "%QSYSFUNC" "%QTRIM"
syn match sasMacro "%QUOTE" "%QUPCASE" "%SCAN" "%STR"
syn match sasMacro "%SUBSTR" "%SUPERQ" "%SYSCALL" "%SYSEVALF"
syn match sasMacro "%SYSEXEC" "%SYSFUNC" "%SYSGET" "%SYSLPUT"
syn match sasMacro "%SYSPROD" "%SYSRC" "%SYSRPUT" "%THEN"
syn match sasMacro "%TO" "%TRIM" "%UNQUOTE" "%UNTIL"
syn match sasMacro "%UPCASE" "%VERIFY" "%WHILE" "%WINDOW"
" 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"
" SAS Functions
@@ -159,13 +210,17 @@ syn keyword sasErrMsg ERROR
syn keyword sasTodo TODO TBD FIXME contained
" These don't fit anywhere else (Bob Heckel).
syn match sasUnderscore "_NULL_"
" Added others that were missing.
syn match sasUnderscore "_ALL_"
syn match sasUnderscore "_AUTOMATIC_"
syn match sasUnderscore "_CHARACTER_"
syn match sasUnderscore "_INFILE_"
syn match sasUnderscore "_N_"
syn match sasUnderscore "_WEBOUT_"
syn match sasUnderscore "_NAME_"
syn match sasUnderscore "_NULL_"
syn match sasUnderscore "_NUMERIC_"
syn match sasUnderscore "_CHARACTER_"
syn match sasUnderscore "_ALL_"
syn match sasUnderscore "_USER_"
syn match sasUnderscore "_WEBOUT_"
" End of SAS Functions