[ Index ] |
PHP Cross Reference of DokuWiki |
[Summary view] [Print] [Text view]
1 <?php 2 /************************************************************************************* 3 * postgresql.php 4 * ----------- 5 * Author: Christophe Chauvet (christophe_at_kryskool_dot_org) 6 * Contributors: Leif Biberg Kristensen <leif_at_solumslekt_dot_org> 2010-05-03 7 * Copyright: (c) 2007 Christophe Chauvet (http://kryskool.org/), Nigel McNie (http://qbnz.com/highlighter) 8 * Release Version: 1.0.9.1 9 * Date Started: 2007/07/20 10 * 11 * PostgreSQL language file for GeSHi. 12 * 13 * CHANGES 14 * ------- 15 * 2007/07/20 (1.0.0) 16 * - First Release 17 * 18 * TODO (updated 2007/07/20) 19 * ------------------------- 20 * 21 ************************************************************************************* 22 * 23 * This file is part of GeSHi. 24 * 25 * GeSHi is free software; you can redistribute it and/or modify 26 * it under the terms of the GNU General Public License as published by 27 * the Free Software Foundation; either version 2 of the License, or 28 * (at your option) any later version. 29 * 30 * GeSHi is distributed in the hope that it will be useful, 31 * but WITHOUT ANY WARRANTY; without even the implied warranty of 32 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 33 * GNU General Public License for more details. 34 * 35 * You should have received a copy of the GNU General Public License 36 * along with GeSHi; if not, write to the Free Software 37 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 38 * 39 ************************************************************************************/ 40 41 $language_data = array ( 42 'LANG_NAME' => 'PostgreSQL', 43 'COMMENT_SINGLE' => array(1 => '--'), 44 'COMMENT_MULTI' => array('/*' => '*/'), 45 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 46 'QUOTEMARKS' => array("'", '"', '`'), 47 'ESCAPE_CHAR' => '\\', 48 'KEYWORDS' => array( 49 //Put PostgreSQL reserved keywords here. I like mine uppercase. 50 1 => array( 51 'ABORT','ABSOLUTE','ACCESS','ACTION','ADD','ADMIN','AFTER', 52 'AGGREGATE','ALL','ALSO','ALTER','ALWAYS','ANALYSE','ANALYZE','AND', 53 'ANY','AS','ASC,','ASSERTION','ASSIGNMENT','ASYMMETRIC','AT', 54 'AUTHORIZATION','BACKWARD','BEFORE','BEGIN','BETWEEN','BOTH','BY', 55 'CACHE','CALLED','CASCADE','CASCADED','CASE','CAST','CATALOG', 56 'CHAIN','CHARACTERISTICS','CHECK','CHECKPOINT','CLASS','CLOSE', 57 'CLUSTER','COALESCE','COLLATE','COLUMN','COMMENT','COMMIT', 58 'COMMITTED','CONCURRENTLY','CONFIGURATION','CONNECTION', 59 'CONSTRAINT','CONSTRAINTS','CONTENT','CONTINUE','CONVERSION','COPY', 60 'COST','CREATE','CREATEDB','CREATEROLE','CREATEUSER','CROSS','CSV', 61 'CURRENT','CURRENT_CATALOG','CURRENT_DATE','CURRENT_ROLE', 62 'CURRENT_SCHEMA','CURRENT_TIME','CURRENT_TIMESTAMP','CURRENT_USER', 63 'CURSOR','CYCLE','DATA','DATABASE','DAY','DEALLOCATE','DEC', 64 'DECLARE','DEFAULT','DEFAULTS','DEFERRABLE','DEFERRED','DEFINER', 65 'DELETE','DELIMITER','DELIMITERS','DESC','DICTIONARY','DISABLE', 66 'DISCARD','DISTINCT','DO','DOCUMENT','DOMAIN','DOUBLE','DROP', 67 'EACH','ELSE','ENABLE','ENCODING','ENCRYPTED','END','ESCAPE', 68 'EXCEPT','EXCLUDING','EXCLUSIVE','EXECUTE','EXISTS','EXPLAIN', 69 'EXTERNAL','EXTRACT','FALSE','FAMILY','FETCH','FIRST','FOLLOWING', 70 'FOR','FORCE','FOREIGN','FORWARD','FREEZE','FROM','FULL','FUNCTION', 71 'GLOBAL','GRANT','GRANTED','GREATEST','GROUP','HANDLER','HAVING', 72 'HEADER','HOLD','HOUR','IDENTITY','IF','ILIKE','IMMEDIATE', 73 'IMMUTABLE','IMPLICIT','IN','INCLUDING','INCREMENT','INDEX', 74 'INDEXES','INHERIT','INHERITS','INITIALLY','INNER','INOUT','INPUT', 75 'INSENSITIVE','INSERT','INSTEAD','INTERSECT','INTO','INVOKER','IS', 76 'ISNULL','ISOLATION','JOIN','KEY','LANCOMPILER','LANGUAGE','LARGE', 77 'LAST','LC_COLLATE','LC_CTYPE','LEADING','LEAST','LEFT','LEVEL', 78 'LIKE','LIMIT','LISTEN','LOAD','LOCAL','LOCALTIME','LOCALTIMESTAMP', 79 'LOCATION','LOCK','LOGIN','LOOP','MAPPING','MATCH','MAXVALUE', 80 'MINUTE','MINVALUE','MODE','MONTH','MOVE','NAME','NAMES','NATIONAL', 81 'NATURAL','NEW','NEXT','NO','NOCREATEDB','NOCREATEROLE', 82 'NOCREATEUSER','NOINHERIT','NOLOGIN','NONE','NOSUPERUSER','NOT', 83 'NOTHING','NOTIFY','NOTNULL','NOWAIT','NULL','NULLIF','NULLS', 84 'NUMERIC','OBJECT','OF','OFF','OFFSET','OIDS','OLD','ON','ONLY', 85 'OPERATOR','OPTION','OPTIONS','OR','ORDER','OUT','OUTER','OVER', 86 'OVERLAPS','OVERLAY','OWNED','OWNER','PARSER','PARTIAL','PARTITION', 87 'PASSWORD','PLACING','PLANS','POSITION','PRECEDING','PRECISION', 88 'PREPARE','PREPARED','PRESERVE','PRIMARY','PRIOR','PRIVILEGES', 89 'PROCEDURAL','PROCEDURE','QUOTE','RANGE','READ','REASSIGN', 90 'RECHECK','RECURSIVE','REFERENCES','REINDEX','RELATIVE','RELEASE', 91 'RENAME','REPEATABLE','REPLACE','REPLICA','RESET','RESTART', 92 'RESTRICT','RETURN','RETURNING','RETURNS','REVOKE','RIGHT','ROLE', 93 'ROLLBACK','ROW','ROWS','RULE','SAVEPOINT','SCHEMA','SCROLL', 94 'SEARCH','SECOND', 95 'SECURITY','SELECT','SEQUENCE','SERIALIZABLE','SERVER','SESSION', 96 'SESSION_USER','SET','SETOF','SHARE','SHOW','SIMILAR','SIMPLE', 97 'SOME','STABLE','STANDALONE','START','STATEMENT','STATISTICS', 98 'STDIN','STDOUT','STORAGE','STRICT','STRIP','SUPERUSER', 99 'SYMMETRIC','SYSID','SYSTEM','TABLE','TABLESPACE','TEMP','TEMPLATE', 100 'TEMPORARY','THEN','TO','TRAILING','TRANSACTION','TREAT','TRIGGER', 101 'TRUE','TRUNCATE','TRUSTED','TYPE','UNBOUNDED','UNCOMMITTED', 102 'UNENCRYPTED','UNION','UNIQUE','UNKNOWN','UNLISTEN','UNTIL', 103 'UPDATE','USER','USING','VACUUM','VALID','VALIDATOR','VALUE', 104 'VALUES','VARIADIC','VERBOSE','VERSION','VIEW','VOLATILE','WHEN', 105 'WHERE','WHILE','WHITESPACE','WINDOW','WITH','WITHOUT','WORK','WRAPPER', 106 'WRITE','XMLATTRIBUTES','XMLCONCAT','XMLELEMENT','XMLFOREST', 107 'XMLPARSE','XMLPI','XMLROOT','XMLSERIALIZE','YEAR','YES','ZONE' 108 ), 109 110 //Put functions here 111 3 => array( 112 // mathematical functions 113 'ABS','CBRT','CEIL','CEILING','DEGREES','DIV','EXP','FLOOR','LN', 114 'LOG','MOD','PI','POWER','RADIANS','RANDOM','ROUND','SETSEED', 115 'SIGN','SQRT','TRUNC','WIDTH_BUCKET', 116 // trigonometric functions 117 'ACOS','ASIN','ATAN','ATAN2','COS','COT','SIN','TAN', 118 // string functions 119 'BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH','LOWER', 120 'OCTET_LENGTH','POSITION','SUBSTRING','TRIM','UPPER', 121 // other string functions 122 'ASCII','BTRIM','CHR','CONVERT','CONVERT_FROM','CONVERT_TO', 123 'DECODE','ENCODE','INITCAP','LENGTH','LPAD','LTRIM','MD5', 124 'PG_CLIENT_ENCODING','QUOTE_IDENT','QUOTE_LITERAL','QUOTE_NULLABLE', 125 'REGEXP_MATCHES','REGEXP_REPLACE','REGEXP_SPLIT_TO_ARRAY', 126 'REGEXP_SPLIT_TO_TABLE','REPEAT','RPAD','RTRIM','SPLIT_PART', 127 'STRPOS','SUBSTR','TO_ASCII','TO_HEX','TRANSLATE', 128 // binary string functions 129 'GET_BIT','GET_BYTE','SET_BIT','SET_BYTE', 130 // data type formatting functions 131 'TO_CHAR','TO_DATE','TO_NUMBER','TO_TIMESTAMP', 132 // date/time functions 133 'AGE','CLOCK_TIMESTAMP','DATE_PART','DATE_TRUNC','EXTRACT', 134 'ISFINITE','JUSTIFY_DAYS','JUSTIFY_HOURS','JUSTIFY_INTERVAL','NOW', 135 'STATEMENT_TIMESTAMP','TIMEOFDAY','TRANSACTION_TIMESTAMP', 136 // enum support functions 137 'ENUM_FIRST','ENUM_LAST','ENUM_RANGE', 138 // geometric functions 139 'AREA','CENTER','DIAMETER','HEIGHT','ISCLOSED','ISOPEN','NPOINTS', 140 'PCLOSE','POPEN','RADIUS','WIDTH', 141 'BOX','CIRCLE','LSEG','PATH','POINT','POLYGON', 142 // cidr and inet functions 143 'ABBREV','BROADCAST','FAMILY','HOST','HOSTMASK','MASKLEN','NETMASK', 144 'NETWORK','SET_MASKLEN', 145 // text search functions 146 'TO_TSVECTOR','SETWEIGHT','STRIP','TO_TSQUERY','PLAINTO_TSQUERY', 147 'NUMNODE','QUERYTREE','TS_RANK','TS_RANK_CD','TS_HEADLINE', 148 'TS_REWRITE','GET_CURRENT_TS_CONFIG','TSVECTOR_UPDATE_TRIGGER', 149 'TSVECTOR_UPDATE_TRIGGER_COLUMN', 150 'TS_DEBUG','TS_LEXISE','TS_PARSE','TS_TOKEN_TYPE','TS_STAT', 151 // XML functions 152 'XMLCOMMENT','XMLCONCAT','XMLELEMENT','XMLFOREST','XMLPI','XMLROOT', 153 'XMLAGG','XPATH','TABLE_TO_XMLSCHEMA','QUERY_TO_XMLSCHEMA', 154 'CURSOR_TO_XMLSCHEMA','TABLE_TO_XML_AND_XMLSCHEMA', 155 'QUERY_TO_XML_AND_XMLSCHEMA','SCHEMA_TO_XML','SCHEMA_TO_XMLSCHEMA', 156 'SCHEMA_TO_XML_AND_XMLSCHEMA','DATABASE_TO_XML', 157 'DATABASE_TO_XMLSCHEMA','DATABASE_TO_XML_AND_XMLSCHEMA', 158 // sequence manipulating functions 159 'CURRVAL','LASTVAL','NEXTVAL','SETVAL', 160 // conditional expressions 161 'COALESCE','NULLIF','GREATEST','LEAST', 162 // array functions 163 'ARRAY_APPEND','ARRAY_CAT','ARRAY_NDIMS','ARRAY_DIMS','ARRAY_FILL', 164 'ARRAY_LENGTH','ARRAY_LOWER','ARRAY_PREPEND','ARRAY_TO_STRING', 165 'ARRAY_UPPER','STRING_TO_ARRAY','UNNEST', 166 // aggregate functions 167 'ARRAY_AGG','AVG','BIT_AND','BIT_OR','BOOL_AND','BOOL_OR','COUNT', 168 'EVERY','MAX','MIN','STRING_AGG','SUM', 169 // statistic aggregate functions 170 'CORR','COVAR_POP','COVAR_SAMP','REGR_AVGX','REGR_AVGY', 171 'REGR_COUNT','REGR_INTERCEPT','REGR_R2','REGR_SLOPE','REGR_SXX', 172 'REGR_SXY','REGR_SYY','STDDEV','STDDEV_POP','STDDEV_SAMP', 173 'VARIANCE','VAR_POP','VAR_SAMP', 174 // window functions 175 'ROW_NUMBER','RANK','DENSE_RANK','PERCENT_RANK','CUME_DIST','NTILE', 176 'LAG','LEAD','FIRST_VALUE','LAST_VALUE','NTH_VALUE', 177 // set returning functions 178 'GENERATE_SERIES','GENERATE_SUBSCRIPTS' 179 // system information functions not currently included 180 ), 181 182 //Put your postgresql var 183 4 => array( 184 'client_encoding', 185 'standard_conforming_strings' 186 ), 187 188 //Put your data types here 189 5 => array( 190 'ARRAY','ABSTIME','BIGINT','BIGSERIAL','BINARY','BIT','BIT VARYING', 191 'BOOLEAN','BOX','BYTEA','CHAR','CHARACTER','CHARACTER VARYING', 192 'CIDR','CIRCLE','DATE','DECIMAL','DOUBLE PRECISION','ENUM','FLOAT', 193 'INET','INT','INTEGER','INTERVAL','NCHAR','REAL','SMALLINT','TEXT', 194 'TIME','TIMESTAMP','VARCHAR','XML', 195 ), 196 197 // //Put your package names here 198 // 6 => array( 199 // ), 200 201 ), 202 'SYMBOLS' => array( 203 '(', ')', '=', '<', '>', '|' 204 ), 205 'CASE_SENSITIVE' => array( 206 GESHI_COMMENTS => false, 207 1 => false, 208 3 => false, 209 4 => false, 210 5 => false 211 ), 212 'STYLES' => array( 213 'KEYWORDS' => array( 214 // regular keywords 215 1 => 'color: #000000; font-weight: bold; text-transform: uppercase;', 216 // inbuilt functions 217 3 => 'color: #333399; font-weight: bold; text-transform: uppercase;', 218 // postgresql var(?) 219 4 => 'color: #993333; font-weight: bold; text-transform: uppercase;', 220 // data types 221 5 => 'color: #993333; font-weight: bold; text-transform: uppercase;', 222 ), 223 'COMMENTS' => array( 224 1 => 'color: #808080; font-style: italic;', 225 ), 226 'ESCAPE_CHAR' => array( 227 0 => 'color: #000099; font-weight: bold;' 228 ), 229 'BRACKETS' => array( 230 0 => 'color: #66cc66;' 231 ), 232 'STRINGS' => array( 233 0 => 'color: #ff0000;' 234 ), 235 'NUMBERS' => array( 236 0 => 'color: #cc66cc;' 237 ), 238 'METHODS' => array( 239 1 => 'color: #ff0000;' 240 ), 241 'SYMBOLS' => array( 242 0 => 'color: #66cc66;' 243 ), 244 'SCRIPT' => array( 245 ), 246 'REGEXPS' => array( 247 ) 248 ), 249 'URLS' => array( 250 1 => '', 251 3 => '', 252 4 => 'http://paste.postgresql.fr/wiki/desc.php?def={FNAME}', 253 5 => '', 254 ), 255 256 'OOLANG' => false, 257 'OBJECT_SPLITTERS' => array( 258 ), 259 'REGEXPS' => array( 260 ), 261 'STRICT_MODE_APPLIES' => GESHI_NEVER, 262 'SCRIPT_DELIMITERS' => array( 263 ), 264 'HIGHLIGHT_STRICT_BLOCK' => array( 265 ), 266 'PARSER_CONTROL' => array( 267 'KEYWORDS' => array( 268 1 => array( 269 'DISALLOWED_AFTER' => '(?![\(\w])' 270 ), 271 272 3 => array( 273 'DISALLOWED_AFTER' => '(?=\()' 274 ), 275 276 4 => array( 277 'DISALLOWED_AFTER' => '(?![\(\w])' 278 ), 279 280 5 => array( 281 'DISALLOWED_AFTER' => '(?![\(\w])' 282 ), 283 ) 284 ) 285 );
title
Description
Body
title
Description
Body
title
Description
Body
title
Body