PageRenderTime 17ms CodeModel.GetById 13ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/BlogEngine/BlogEngine.NET/Scripts/syntaxhighlighter/shBrushDelphi.js

#
JavaScript | 55 lines | 32 code | 5 blank | 18 comment | 5 complexity | 29db1af76facf2deb013621981c43ab7 MD5 | raw file
 1/**
 2 * SyntaxHighlighter
 3 * http://alexgorbatchev.com/SyntaxHighlighter
 4 *
 5 * SyntaxHighlighter is donationware. If you are using it, please donate.
 6 * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
 7 *
 8 * @version
 9 * 3.0.83 (July 02 2010)
10 * 
11 * @copyright
12 * Copyright (C) 2004-2010 Alex Gorbatchev.
13 *
14 * @license
15 * Dual licensed under the MIT and GPL licenses.
16 */
17;(function()
18{
19	// CommonJS
20	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
21
22	function Brush()
23	{
24		var keywords =	'abs addr and ansichar ansistring array as asm begin boolean byte cardinal ' +
25						'case char class comp const constructor currency destructor div do double ' +
26						'downto else end except exports extended false file finalization finally ' +
27						'for function goto if implementation in inherited int64 initialization ' +
28						'integer interface is label library longint longword mod nil not object ' +
29						'of on or packed pansichar pansistring pchar pcurrency pdatetime pextended ' +
30						'pint64 pointer private procedure program property pshortstring pstring ' +
31						'pvariant pwidechar pwidestring protected public published raise real real48 ' +
32						'record repeat set shl shortint shortstring shr single smallint string then ' +
33						'threadvar to true try type unit until uses val var varirnt while widechar ' +
34						'widestring with word write writeln xor';
35
36		this.regexList = [
37			{ regex: /\(\*[\s\S]*?\*\)/gm,								css: 'comments' },  	// multiline comments (* *)
38			{ regex: /{(?!\$)[\s\S]*?}/gm,								css: 'comments' },  	// multiline comments { }
39			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },  	// one line
40			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// strings
41			{ regex: /\{\$[a-zA-Z]+ .+\}/g,								css: 'color1' },		// compiler Directives and Region tags
42			{ regex: /\b[\d\.]+\b/g,									css: 'value' },			// numbers 12345
43			{ regex: /\$[a-zA-Z0-9]+\b/g,								css: 'value' },			// numbers $F5D3
44			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),		css: 'keyword' }		// keyword
45			];
46	};
47
48	Brush.prototype	= new SyntaxHighlighter.Highlighter();
49	Brush.aliases	= ['delphi', 'pascal', 'pas'];
50
51	SyntaxHighlighter.brushes.Delphi = Brush;
52
53	// CommonJS
54	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
55})();