58 lines
2.3 KiB
JavaScript
58 lines
2.3 KiB
JavaScript
/**
|
|
* 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()
|
|
{
|
|
var ns = __namespace( "Libraries.SyntaxHighlighter.Brush" );
|
|
|
|
/** @type {Libraries.SyntaxHighlighter} */
|
|
var SyntaxHighlighter = __import( "Libraries.SyntaxHighlighter" );
|
|
|
|
/** @type {Libraries.SyntaxHighlighter.Brush} **/
|
|
var Brush = function()
|
|
{
|
|
// Contributed by Erik Peterson.
|
|
|
|
var keywords = 'alias and BEGIN begin break case class def define_method defined do each else elsif ' +
|
|
'END end ensure false for if in module new next nil not or raise redo rescue retry return ' +
|
|
'self super then throw true undef unless until when while yield';
|
|
|
|
var builtins = 'Array Bignum Binding Class Continuation Dir Exception FalseClass File::Stat File Fixnum Fload ' +
|
|
'Hash Integer IO MatchData Method Module NilClass Numeric Object Proc Range Regexp String Struct::TMS Symbol ' +
|
|
'ThreadGroup Thread Time TrueClass';
|
|
|
|
this.regexList = [
|
|
{ "regex": SyntaxHighlighter.regexLib.singleLinePerlComments, "css": 'comments' }, // one line comments
|
|
{ "regex": SyntaxHighlighter.regexLib.doubleQuotedString, "css": 'string' }, // double quoted strings
|
|
{ "regex": SyntaxHighlighter.regexLib.singleQuotedString, "css": 'string' }, // single quoted strings
|
|
{ "regex": /\b[A-Z0-9_]+\b/g, "css": 'constants' }, // constants
|
|
{ "regex": /:[a-z][A-Za-z0-9_]*/g, "css": 'color2' }, // symbols
|
|
{ "regex": /(\$|@@|@)\w+/g, "css": 'variable bold' }, // $global, @instance, and @@class variables
|
|
{ "regex": new RegExp(this.getKeywords(keywords), 'gm'), "css": 'keyword' }, // keywords
|
|
{ "regex": new RegExp(this.getKeywords(builtins), 'gm'), "css": 'color1' } // builtins
|
|
];
|
|
|
|
this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
|
|
};
|
|
|
|
Brush.prototype = new SyntaxHighlighter.Highlighter();
|
|
Brush.aliases = ['ruby', 'rails', 'ror', 'rb'];
|
|
|
|
SyntaxHighlighter.brushes[ "Ruby" ] = Brush;
|
|
|
|
ns[ NS_EXPORT ]( EX_CLASS, "Ruby", Brush );
|
|
})();
|