mirror of
https://github.com/sharkdp/bat.git
synced 2024-12-28 09:18:53 +01:00
112 lines
3.5 KiB
YAML
Vendored
112 lines
3.5 KiB
YAML
Vendored
%YAML 1.2
|
|
---
|
|
# http://www.sublimetext.com/docs/3/syntax.html
|
|
name: syslog
|
|
file_extensions:
|
|
- syslog
|
|
scope: text.syslog
|
|
variables:
|
|
ipv4_part: (?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)
|
|
contexts:
|
|
main:
|
|
- match: ^(\w+\s+\d+)\s+(\d{2}:\d{2}:\d{2})
|
|
scope: meta.datetime.syslog constant.numeric.syslog
|
|
captures:
|
|
1: meta.date.syslog
|
|
2: meta.time.syslog
|
|
push: loghost
|
|
loghost:
|
|
- match: '[\w-]+'
|
|
scope: entity.other.attribute-name.loghost.syslog
|
|
set: process
|
|
process:
|
|
- match: ([\w-]+)(?:(\[)(\d+)(\]))?(:)
|
|
captures:
|
|
1: support.function.process.syslog
|
|
2: punctuation.separator.pid.begin.syslog
|
|
3: meta.pid.syslog meta.number.integer.syslog constant.numeric.value.syslog
|
|
4: punctuation.separator.pid.end.syslog
|
|
5: punctuation.separator.mapping.syslog
|
|
set: structured-data
|
|
structured-data:
|
|
- match: '\['
|
|
scope: punctuation.section.mapping.begin.syslog
|
|
push:
|
|
- match: \]
|
|
scope: punctuation.section.mapping.end.syslog
|
|
pop: true
|
|
- match: \w+
|
|
scope: variable.parameter.syslog
|
|
- match: =
|
|
scope: keyword.operator.assignment.syslog
|
|
push:
|
|
- match: '[^\s\]]+'
|
|
scope: constant.other.syslog
|
|
pop: true
|
|
- match: (?=\])
|
|
pop: true
|
|
- match: (?=\S)
|
|
set: text
|
|
text:
|
|
- match: (\w+)(=)
|
|
captures:
|
|
1: variable.parameter.syslog
|
|
2: keyword.operator.assignment.syslog
|
|
- match: (')([^']*)(')
|
|
scope: string.quoted.single.syslog
|
|
captures:
|
|
1: punctuation.definition.string.begin.syslog
|
|
3: punctuation.definition.string.end.syslog
|
|
- match: (")([^"]*)(")
|
|
scope: string.quoted.double.syslog
|
|
captures:
|
|
1: punctuation.definition.string.begin.syslog
|
|
3: punctuation.definition.string.end.syslog
|
|
- include: numbers
|
|
- match: \b(CMD)\b\s+(\()
|
|
captures:
|
|
1: entity.name.label.syslog
|
|
2: punctuation.section.block.begin.syslog
|
|
embed: scope:source.shell.bash
|
|
escape: \)$
|
|
escape_captures:
|
|
0: punctuation.section.block.end.syslog
|
|
- match: '<\w+>'
|
|
scope: constant.language.syslog
|
|
- match: (?i:fail(?:ure|ed)?|error)
|
|
scope: invalid.illegal.error.syslog
|
|
- match: $
|
|
pop: true
|
|
numbers:
|
|
- match: (?=(?:{{ipv4_part}}\.){3}{{ipv4_part}})
|
|
push:
|
|
- meta_scope: meta.ipaddress.v4.syslog meta.number.integer.decimal.syslog
|
|
- match: \d+
|
|
scope: constant.numeric.value.syslog
|
|
- match: \.
|
|
scope: punctuation.separator.sequence.syslog
|
|
- match: ''
|
|
pop: true
|
|
- match: (?=(?:\h{0,4}:){2,6}\h{1,4})
|
|
push:
|
|
- meta_scope: meta.ipaddress.v6.syslog meta.number.integer.hexadecimal.syslog
|
|
- match: \h{1,4}
|
|
scope: constant.numeric.value.syslog
|
|
- match: ':'
|
|
scope: punctuation.separator.sequence.syslog
|
|
- match: ''
|
|
pop: true
|
|
- match: (0x)(\h+)(?:(\.)(\h+))?
|
|
scope: meta.number.float.hexadecimal.syslog
|
|
captures:
|
|
1: constant.numeric.base.syslog
|
|
2: constant.numeric.value.syslog
|
|
3: constant.numeric.value.syslog punctuation.separator.decimal.syslog
|
|
4: constant.numeric.value.syslog
|
|
- match: \b\d+(\.)\d+\b
|
|
scope: meta.number.float.syslog constant.numeric.value.syslog
|
|
captures:
|
|
1: punctuation.separator.decimal.syslog
|
|
- match: \b\d+\b
|
|
scope: meta.number.integer.syslog constant.numeric.value.syslog
|