|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290 |
- <?php
- /*************************************************************************************
- * sas.php
- * -------
- * Author: Galen Johnson (solitaryr@gmail.com)
- * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.11
- * Date Started: 2005/12/27
- *
- * SAS language file for GeSHi. Based on the sas vim file.
- *
- * CHANGES
- * -------
- * 2008/05/23 (1.0.7.22)
- * - Added description of extra language features (SF#1970248)
- * - Cleaned up code style
- * 2005/12/27 (1.0.0)
- * - First Release
- *
- * TODO (updated 2005/12/27)
- * -------------------------
- * * Check highlighting stuff works
- *
- *************************************************************************************
- *
- * This file is part of GeSHi.
- *
- * GeSHi is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * GeSHi is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GeSHi; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- ************************************************************************************/
-
- $language_data = array (
- 'LANG_NAME' => 'SAS',
- 'COMMENT_SINGLE' => array(),
- 'COMMENT_MULTI' => array('/*' => '*/', '*' => ';'),
- 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
- 'QUOTEMARKS' => array("'", '"'),
- 'ESCAPE_CHAR' => '\\',
- 'KEYWORDS' => array(
- 1 => array(
- '_ALL_','_CHARACTER_','_INFILE_','_N_','_NULL_','_NUMERIC_',
- '_WEBOUT_'
- ),
- 2 => array(
- '%BQUOTE','%CMPRES','%COMPSTOR','%DATATYP','%DISPLAY','%DO','%ELSE',
- '%END','%EVAL','%GLOBAL','%GOTO','%IF','%INDEX','%INPUT','%KEYDEF',
- '%LABEL','%LEFT','%LENGTH','%LET','%LOCAL','%LOWCASE','%MACRO',
- '%MEND','%NRBQUOTE','%NRQUOTE','%NRSTR','%PUT','%QCMPRES','%QLEFT',
- '%QLOWCASE','%QSCAN','%QSUBSTR','%QSYSFUNC','%QTRIM','%QUOTE',
- '%QUPCASE','%SCAN','%STR','%SUBSTR','%SUPERQ','%SYSCALL',
- '%SYSEVALF','%SYSEXEC','%SYSFUNC','%SYSGET','%SYSLPUT','%SYSPROD',
- '%SYSRC','%SYSRPUT','%THEN','%TO','%TRIM','%UNQUOTE','%UNTIL',
- '%UPCASE','%VERIFY','%WHILE','%WINDOW'
- ),
- 3 => array(
- 'ABS','ADDR','AIRY','ARCOS','ARSIN','ATAN','ATTRC','ATTRN','BAND',
- 'BETAINV','BLSHIFT','BNOT','BOR','BRSHIFT','BXOR','BYTE','CDF',
- 'CEIL','CEXIST','CINV','CLOSE','CNONCT','COLLATE','COMPBL',
- 'COMPOUND','COMPRESS','COSH','COS','CSS','CUROBS','CV','DACCDBSL',
- 'DACCDB','DACCSL','DACCSYD','DACCTAB','DAIRY','DATETIME','DATEJUL',
- 'DATEPART','DATE','DAY','DCLOSE','DEPDBSL','DEPDB','DEPSL','DEPSYD',
- 'DEPTAB','DEQUOTE','DHMS','DIF','DIGAMMA','DIM','DINFO','DNUM',
- 'DOPEN','DOPTNAME','DOPTNUM','DREAD','DROPNOTE','DSNAME','ERFC',
- 'ERF','EXIST','EXP','FAPPEND','FCLOSE','FCOL','FDELETE','FETCHOBS',
- 'FETCH','FEXIST','FGET','FILEEXIST','FILENAME','FILEREF','FINFO',
- 'FINV','FIPNAMEL','FIPNAME','FIPSTATE','FLOOR','FNONCT','FNOTE',
- 'FOPEN','FOPTNAME','FOPTNUM','FPOINT','FPOS','FPUT','FREAD',
- 'FREWIND','FRLEN','FSEP','FUZZ','FWRITE','GAMINV','GAMMA',
- 'GETOPTION','GETVARC','GETVARN','HBOUND','HMS','HOSTHELP','HOUR',
- 'IBESSEL','INDEXW','INDEXC','INDEX','INPUTN','INPUTC','INPUT',
- 'INTRR','INTCK','INTNX','INT','IRR','JBESSEL','JULDATE','KURTOSIS',
- 'LAG','LBOUND','LEFT','LENGTH','LGAMMA','LIBNAME','LIBREF','LOG10',
- 'LOG2','LOGPDF','LOGPMF','LOGSDF','LOG','LOWCASE','MAX','MDY',
- 'MEAN','MINUTE','MIN','MOD','MONTH','MOPEN','MORT','NETPV','NMISS',
- 'NORMAL','NPV','N','OPEN','ORDINAL','PATHNAME','PDF','PEEKC','PEEK',
- 'PMF','POINT','POISSON','POKE','PROBBETA','PROBBNML','PROBCHI',
- 'PROBF','PROBGAM','PROBHYPR','PROBIT','PROBNEGB','PROBNORM','PROBT',
- 'PUTN','PUTC','PUT','QTR','QUOTE','RANBIN','RANCAU','RANEXP',
- 'RANGAM','RANGE','RANK','RANNOR','RANPOI','RANTBL','RANTRI',
- 'RANUNI','REPEAT','RESOLVE','REVERSE','REWIND','RIGHT','ROUND',
- 'SAVING','SCAN','SDF','SECOND','SIGN','SINH','SIN','SKEWNESS',
- 'SOUNDEX','SPEDIS','SQRT','STDERR','STD','STFIPS','STNAME',
- 'STNAMEL','SUBSTR','SUM','SYMGET','SYSGET','SYSMSG','SYSPROD',
- 'SYSRC','SYSTEM','TANH','TAN','TIMEPART','TIME','TINV','TNONCT',
- 'TODAY','TRANSLATE','TRANWRD','TRIGAMMA','TRIMN','TRIM','TRUNC',
- 'UNIFORM','UPCASE','USS','VARFMT','VARINFMT','VARLABEL','VARLEN',
- 'VARNAME','VARNUM','VARRAYX','VARRAY','VARTYPE','VAR','VERIFY',
- 'VFORMATX','VFORMATDX','VFORMATD','VFORMATNX','VFORMATN',
- 'VFORMATWX','VFORMATW','VFORMAT','VINARRAYX','VINARRAY',
- 'VINFORMATX','VINFORMATDX','VINFORMATD','VINFORMATNX','VINFORMATN',
- 'VINFORMATWX','VINFORMATW','VINFORMAT','VLABELX','VLABEL',
- 'VLENGTHX','VLENGTH','VNAMEX','VNAME','VTYPEX','VTYPE','WEEKDAY',
- 'YEAR','YYQ','ZIPFIPS','ZIPNAME','ZIPNAMEL','ZIPSTATE'
- ),
- 4 => array(
- 'ABORT','ADD','ALTER','AND','ARRAY','AS','ATTRIB','BY','CALL',
- 'CARDS4','CASCADE','CATNAME','CHECK','CONTINUE','CREATE',
- 'DATALINES4','DELETE','DESCRIBE','DISPLAY','DISTINCT','DM','DROP',
- 'ENDSAS','FILE','FOOTNOTE','FOREIGN','FORMAT','FROM',
- 'GOTO','GROUP','HAVING','IN','INFILE','INFORMAT',
- 'INSERT','INTO','KEEP','KEY','LABEL','LEAVE',
- 'LIKE','LINK','LIST','LOSTCARD','MERGE','MESSAGE','MISSING',
- 'MODIFY','MSGTYPE','NOT','NULL','ON','OPTIONS','OR','ORDER',
- 'OUTPUT','PAGE','PRIMARY','REDIRECT','REFERENCES','REMOVE',
- 'RENAME','REPLACE','RESET','RESTRICT','RETAIN','RETURN','SELECT',
- 'SET','SKIP','STARTSAS','STOP','SYSTASK','TABLE','TITLE','UNIQUE',
- 'UPDATE','VALIDATE','VIEW','WAITSAS','WHERE','WINDOW','X'
- ),
- 5 => array(
- 'DO','ELSE','END','IF','THEN','UNTIL','WHILE'
- ),
- 6 => array(
- 'RUN','QUIT','DATA'
- ),
- 7 => array(
- 'ERROR'
- ),
- 8 => array(
- 'WARNING'
- ),
- 9 => array(
- 'NOTE'
- )
- ),
- 'SYMBOLS' => array(
- ),
- 'CASE_SENSITIVE' => array(
- GESHI_COMMENTS => false,
- 1 => false,
- 2 => false,
- 3 => false,
- 4 => false,
- 5 => false,
- 6 => false,
- 7 => false,
- 8 => false,
- 9 => false
- ),
- 'STYLES' => array(
- 'KEYWORDS' => array(
- 1 => 'color: #0000ff;',
- 2 => 'color: #0000ff;',
- 3 => 'color: #0000ff;',
- 4 => 'color: #0000ff;',
- 5 => 'color: #0000ff;',
- 6 => 'color: #000080; font-weight: bold;',
- 7 => 'color: #ff0000;',
- 8 => 'color: #00ff00;',
- 9 => 'color: #0000ff;'
- ),
- 'COMMENTS' => array(
- // 1 => 'color: #006400; font-style: italic;',
- 'MULTI' => 'color: #006400; font-style: italic;'
- ),
- 'ESCAPE_CHAR' => array(
- 0 => 'color: #000099; font-weight: bold;'
- ),
- 'BRACKETS' => array(
- 0 => 'color: #66cc66;'
- ),
- 'STRINGS' => array(
- 0 => 'color: #a020f0;'
- ),
- 'NUMBERS' => array(
- 0 => 'color: #2e8b57; font-weight: bold;'
- ),
- 'METHODS' => array(
- ),
- 'SYMBOLS' => array(
- 0 => 'color: #66cc66;'
- ),
- 'SCRIPT' => array(
- 0 => '',
- 1 => '',
- 2 => '',
- 3 => ''
- ),
- 'REGEXPS' => array(
- 0 => 'color: #0000ff; font-weight: bold;',
- 1 => 'color: #000080; font-weight: bold;',
- 2 => 'color: #006400; font-style: italic;',
- 3 => 'color: #006400; font-style: italic;',
- 4 => 'color: #006400; font-style: italic;',
- 5 => 'color: #ff0000; font-weight: bold;',
- 6 => 'color: #00ff00; font-style: italic;',
- 7 => 'color: #0000ff; font-style: normal;',
- 8 => 'color: #b218b2; font-weight: bold;',
- 9 => 'color: #b218b2; font-weight: bold;'
- )
- ),
- 'URLS' => array(
- 1 => '',
- 2 => '',
- 3 => '',
- 4 => '',
- 5 => '',
- 6 => '',
- 7 => '',
- 8 => '',
- 9 => ''
- ),
- 'OOLANG' => false,
- 'OBJECT_SPLITTERS' => array(
- ),
- 'REGEXPS' => array(
- 0 => "&[a-zA-Z_][a-zA-Z0-9_]*",
- 1 => array(//Procedures
- GESHI_SEARCH => '(^\\s*)(PROC \\w+)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => ''
- ),
- 2 => array(
- GESHI_SEARCH => '(^\\s*)(\\*.*;)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => ''
- ),
- 3 => array(
- GESHI_SEARCH => '(.*;\\s*)(\\*.*;)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => ''
- ),
- 4 => array(
- GESHI_SEARCH => '(^\\s*)(%\\*.*;)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => ''
- ),
- 5 => array(//Error messages
- GESHI_SEARCH => '(^ERROR.*)',
- GESHI_REPLACE => '\\1',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '',
- GESHI_AFTER => ''
- ),
- 6 => array(//Warning messages
- GESHI_SEARCH => '(^WARNING.*)',
- GESHI_REPLACE => '\\1',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '',
- GESHI_AFTER => ''
- ),
- 7 => array(//Notice messages
- GESHI_SEARCH => '(^NOTE.*)',
- GESHI_REPLACE => '\\1',
- GESHI_MODIFIERS => 'im',
- GESHI_BEFORE => '',
- GESHI_AFTER => ''
- ),
- 8 => array(
- GESHI_SEARCH => '(^\\s*)(CARDS.*)(^\\s*;\\s*$)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'sim',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => '\\3'
- ),
- 9 => array(
- GESHI_SEARCH => '(^\\s*)(DATALINES.*)(^\\s*;\\s*$)',
- GESHI_REPLACE => '\\2',
- GESHI_MODIFIERS => 'sim',
- GESHI_BEFORE => '\\1',
- GESHI_AFTER => '\\3'
- )
- ),
- 'STRICT_MODE_APPLIES' => GESHI_MAYBE,
- 'SCRIPT_DELIMITERS' => array(
- ),
- 'HIGHLIGHT_STRICT_BLOCK' => array(
- )
- );
-
- ?>
|