/** | |
* SyntaxHighlighter | |
* http://alexgorbatchev.com/ | |
* | |
* SyntaxHighlighter is donationware. If you are using it, please donate. | |
* http://alexgorbatchev.com/wiki/SyntaxHighlighter:Donate | |
* | |
* @version | |
* 2.1.364 (October 15 2009) | |
* | |
* @copyright | |
* Copyright (C) 2004-2009 Alex Gorbatchev. | |
* | |
* @license | |
* This file is part of SyntaxHighlighter. | |
* | |
* SyntaxHighlighter is free software: you can redistribute it and/or modify | |
* it under the terms of the GNU Lesser General Public License as published by | |
* the Free Software Foundation, either version 3 of the License, or | |
* (at your option) any later version. | |
* | |
* SyntaxHighlighter 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 SyntaxHighlighter. If not, see <http://www.gnu.org/copyleft/lesser.html>. | |
*/ | |
SyntaxHighlighter.brushes.Sql = function() | |
{ | |
var funcs = 'abs avg case cast coalesce convert count current_timestamp ' + | |
'current_user day isnull left lower month nullif replace right ' + | |
'session_user space substring sum system_user upper user year'; | |
var keywords = 'absolute action add after alter as asc at authorization begin bigint ' + | |
'binary bit by cascade char character check checkpoint close collate ' + | |
'column commit committed connect connection constraint contains continue ' + | |
'create cube current current_date current_time cursor database date ' + | |
'deallocate dec decimal declare default delete desc distinct double drop ' + | |
'dynamic else end end-exec escape except exec execute false fetch first ' + | |
'float for force foreign forward free from full function global goto grant ' + | |
'group grouping having hour ignore index inner insensitive insert instead ' + | |
'int integer intersect into is isolation key last level load local max min ' + | |
'minute modify move name national nchar next no numeric of off on only ' + | |
'open option order out output partial password precision prepare primary ' + | |
'prior privileges procedure public read real references relative repeatable ' + | |
'restrict return returns revoke rollback rollup rows rule schema scroll ' + | |
'second section select sequence serializable set size smallint static ' + | |
'statistics table temp temporary then time timestamp to top transaction ' + | |
'translation trigger true truncate uncommitted union unique update values ' + | |
'varchar varying view when where with work'; | |
var operators = 'all and any between cross in join like not null or outer some'; | |
this.regexList = [ | |
{ regex: /--(.*)$/gm, css: 'comments' }, // one line and multiline comments | |
{ regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString, css: 'string' }, // double quoted strings | |
{ regex: SyntaxHighlighter.regexLib.multiLineSingleQuotedString, css: 'string' }, // single quoted strings | |
{ regex: new RegExp(this.getKeywords(funcs), 'gmi'), css: 'color2' }, // functions | |
{ regex: new RegExp(this.getKeywords(operators), 'gmi'), css: 'color1' }, // operators and such | |
{ regex: new RegExp(this.getKeywords(keywords), 'gmi'), css: 'keyword' } // keyword | |
]; | |
}; | |
SyntaxHighlighter.brushes.Sql.prototype = new SyntaxHighlighter.Highlighter(); | |
SyntaxHighlighter.brushes.Sql.aliases = ['sql']; | |