summaryrefslogtreecommitdiff
path: root/js/jquery.syntax.brush.lua.js
blob: 9592f47d24b5b0e707d428174f48d4665c2411c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// brush: "lua" aliases: []

//	This file is part of the "jQuery.Syntax" project, and is licensed under the GNU AGPLv3.
//	Copyright 2010 Samuel Williams. All rights reserved.
//	See <jquery.syntax.js> for licensing details.

Syntax.register('lua', function(brush) {
	var keywords = ["and", "break", "do", "else", "elseif", "end", "false", "for", "function", "if", "in", "local", "nil", "not", "or", "repeat", "return", "then", "true", "until", "while"];
	
	var operators = ["+", "-", "*", "/", "%", "^", "#", "..", "=", "==", "~=", "<", ">", "<=", ">=", "?", ":"];
	
	var values = ["self", "true", "false", "nil"];
	
	brush.push(values, {klass: 'constant'});
	brush.push(keywords, {klass: 'keyword'});
	brush.push(operators, {klass: 'operator'});
	
	// Camelcase Types
	brush.push(Syntax.lib.camelCaseType);
	brush.push(Syntax.lib.cStyleFunction);
	
	brush.push({
		pattern: /\-\-.*$/gm,
		klass: 'comment',
		allow: ['href']
	});
	
	brush.push({
		pattern: /\-\-\[\[(\n|.)*?\]\]\-\-/gm,
		klass: 'comment',
		allow: ['href']
	});
	
	// Strings
	brush.push(Syntax.lib.singleQuotedString);
	brush.push(Syntax.lib.doubleQuotedString);
	brush.push(Syntax.lib.stringEscape);

	brush.push(Syntax.lib.hexNumber);
	brush.push(Syntax.lib.decimalNumber);

	brush.push(Syntax.lib.webLink);
});