clean import of syntaxhighlighter as of 3.0.83
[unfold.git] / third-party / syntaxhighlighter_3.0.83 / scripts / shBrushSql.js
diff --git a/third-party/syntaxhighlighter_3.0.83/scripts/shBrushSql.js b/third-party/syntaxhighlighter_3.0.83/scripts/shBrushSql.js
new file mode 100644 (file)
index 0000000..5c2cd88
--- /dev/null
@@ -0,0 +1,66 @@
+/**
+ * SyntaxHighlighter
+ * http://alexgorbatchev.com/SyntaxHighlighter
+ *
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
+ * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
+ *
+ * @version
+ * 3.0.83 (July 02 2010)
+ * 
+ * @copyright
+ * Copyright (C) 2004-2010 Alex Gorbatchev.
+ *
+ * @license
+ * Dual licensed under the MIT and GPL licenses.
+ */
+;(function()
+{
+       // CommonJS
+       typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
+
+       function Brush()
+       {
+               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
+                       ];
+       };
+
+       Brush.prototype = new SyntaxHighlighter.Highlighter();
+       Brush.aliases   = ['sql'];
+
+       SyntaxHighlighter.brushes.Sql = Brush;
+
+       // CommonJS
+       typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
+})();
+