Skip to content

Commit 52409a4

Browse files
committed
Added log file syntax
1 parent eef560d commit 52409a4

File tree

1 file changed

+92
-0
lines changed

1 file changed

+92
-0
lines changed

Log.sublime-syntax

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
%YAML 1.2
2+
---
3+
name: Crackshell Log
4+
first_line_match: '^#A000FF Log - [0-9]{4}-[0-9]+-[0-9]+$'
5+
file_extensions:
6+
- log
7+
scope: text.log
8+
variables:
9+
path_identifier: '[A-za-z0-9\-_\.]'
10+
full_path: '([A-Z]:)?({{path_identifier}}+[\\/])+{{path_identifier}}+'
11+
contexts:
12+
line-contents:
13+
- match: '(>) (.*)'
14+
captures:
15+
1: punctuation.separator
16+
2: string.unquoted
17+
pop: true
18+
- match: 'Game build ([0-9]+)'
19+
captures:
20+
1: constant.numeric
21+
- match: 'Build:\s+'
22+
push:
23+
- match: '[A-Z0-9_]+'
24+
scope: constant.language
25+
- match: '(?=$)'
26+
pop: true
27+
- match: 'Launch options:\s+'
28+
push:
29+
- match: '([0-9]+):\s+(.*)(?=$)'
30+
captures:
31+
1: constant.numeric
32+
2: string.unquoted
33+
- match: '(?=$)'
34+
pop: true
35+
- match: 'Steam ID:\s+'
36+
push:
37+
- match: '[0-9a-f]{15}'
38+
scope: constant.numeric
39+
- match: '(?=$)'
40+
pop: true
41+
- match: '\s(class) ([^\s]+)'
42+
captures:
43+
1: storage.type.class
44+
2: entity.name.class
45+
- match: '([0-9\.]+) ms'
46+
captures:
47+
1: constant.numeric
48+
- match: '[A-Za-z]+ = ([0-9]+)'
49+
captures:
50+
1: constant.numeric
51+
- match: '\s{2}[A-Z][A-Za-z0-9\s]+:\s+'
52+
push:
53+
- match: '.*$'
54+
scope: string.unquoted
55+
pop: true
56+
- match: '\bevent:/{{full_path}}\b'
57+
scope: markup.italic
58+
- match: '\b{{full_path}}\b'
59+
scope: markup.italic
60+
- match: '$'
61+
pop: true
62+
63+
lines:
64+
- match: '^\['
65+
scope: punctuation.section.braces.begin
66+
push:
67+
- match: 'NFO'
68+
scope: support.constant
69+
- match: 'WRN'
70+
scope: support.function
71+
- match: 'ERR'
72+
scope: markup.deleted
73+
- match: 'DBG'
74+
scope: support.module
75+
- match: '\]'
76+
scope: punctuation.section.braces.end
77+
pop: true
78+
- match: '\['
79+
scope: punctuation.section.braces.begin
80+
push:
81+
- match: '[0-9]{2}'
82+
scope: constant.numeric
83+
- match: ':'
84+
scope: punctuation.separator
85+
- match: '\]'
86+
scope: punctuation.section.braces.end
87+
set: line-contents
88+
89+
main:
90+
- match: '^#A000FF Log .*$'
91+
scope: entity.name.section
92+
set: lines

0 commit comments

Comments
 (0)