Skip to content

Commit b902b59

Browse files
committedJul 28, 2022
feat(modes): add lobster_dc_logs
1 parent 0a9f0b3 commit b902b59

File tree

2 files changed

+109
-0
lines changed

2 files changed

+109
-0
lines changed
 

‎src/main/java/de/f0rce/ace/enums/AceMode.java

+1
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ public enum AceMode {
8787
liquid,
8888
lisp,
8989
livescript,
90+
lobster_dc_logs,
9091
lobster_expert_search,
9192
lobster_logs,
9293
lobster_records,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
ace.define("ace/mode/lobster_dc_logs", function (require, exports, module) {
2+
var oop = require("ace/lib/oop");
3+
var TextMode = require("ace/mode/text").Mode;
4+
var LobsterDCLogsHighlightRules =
5+
require("ace/mode/lobster_dc_logs_highlight_rules").LobsterDCLogsHighlightRules;
6+
7+
var Mode = function () {
8+
this.HighlightRules = LobsterDCLogsHighlightRules;
9+
};
10+
oop.inherits(Mode, TextMode);
11+
12+
(function () {
13+
// Extra logic goes here. (see below)
14+
}.call(Mode.prototype));
15+
16+
exports.Mode = Mode;
17+
});
18+
19+
ace.define(
20+
"ace/mode/lobster_dc_logs_highlight_rules",
21+
function (require, exports, module) {
22+
var oop = require("ace/lib/oop");
23+
var TextHighlightRules =
24+
require("ace/mode/text_highlight_rules").TextHighlightRules;
25+
26+
var escapedRe =
27+
"\\\\(?:x[0-9a-fA-F]{2}|" + // hex
28+
"u[0-9a-fA-F]{4}|" + // unicode
29+
"u{[0-9a-fA-F]{1,6}}|" + // es6 unicode
30+
"[0-2][0-7]{0,2}|" + // oct
31+
"3[0-7][0-7]?|" + // oct
32+
"[4-7][0-7]?|" + //oct
33+
".)";
34+
35+
var LobsterDCLogsHighlightRules = function () {
36+
this.$rules = {
37+
start: [
38+
{
39+
token: "comment",
40+
regex: "^\\d*\.\\d*\\.\\d*\\s\\d*:\\d*:\\d*\\.\\d*(?!\\d)",
41+
},
42+
{
43+
token: "string",
44+
regex: "'(?=.)",
45+
next: "qstring",
46+
},
47+
{
48+
token: "string",
49+
regex: '"(?=.)',
50+
next: "qqstring",
51+
},
52+
{
53+
token: "keyword",
54+
regex: "(\\[.*?\\])",
55+
},
56+
{
57+
token: "constant.language",
58+
regex: "([nN]ested [eE]xception [iI]s:)",
59+
},
60+
],
61+
62+
qqstring: [
63+
{
64+
token: "constant.language.escape",
65+
regex: escapedRe,
66+
},
67+
{
68+
token: "string",
69+
regex: "\\\\$",
70+
consumeLineEnd: true,
71+
},
72+
{
73+
token: "string",
74+
regex: '"|$',
75+
next: "start",
76+
},
77+
{
78+
defaultToken: "string",
79+
},
80+
],
81+
82+
qstring: [
83+
{
84+
token: "constant.language.escape",
85+
regex: escapedRe,
86+
},
87+
{
88+
token: "string",
89+
regex: "\\\\$",
90+
consumeLineEnd: true,
91+
},
92+
{
93+
token: "string",
94+
regex: "'|$",
95+
next: "start",
96+
},
97+
{
98+
defaultToken: "string",
99+
},
100+
],
101+
};
102+
};
103+
104+
oop.inherits(LobsterDCLogsHighlightRules, TextHighlightRules);
105+
106+
exports.LobsterDCLogsHighlightRules = LobsterDCLogsHighlightRules;
107+
}
108+
);

0 commit comments

Comments
 (0)