summaryrefslogtreecommitdiffstats
path: root/assets/syntaxes/CSV.sublime-syntax
blob: 1bbc5b97635053c3acce27267a79f96a3cc38d62 (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
45
46
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Advanced CSV
file_extensions:
  - csv
  - tsv
scope: text.advanced_csv
contexts:
  main:
    - match: (\")
      captures:
        1: string.quoted.double.advanced_csv
      push:
        - meta_scope: meta.quoted.advanced_csv
        - match: (\")
          captures:
            1: string.quoted.double.advanced_csv
          pop: true
        - include: main
    - match: '(\[([+-]?\d*)(\:)?([+-]?\d*)(\,)?([+-]?\d*)(\:)?([+-]?\d*)\])?\s*([<>v^])?\s*(=)'
      captures:
        1: keyword.operator.advanced_csv
        2: constant.numeric.formula.advanced_csv
        4: constant.numeric.formula.advanced_csv
        6: constant.numeric.formula.advanced_csv
        8: constant.numeric.formula.advanced_csv
        9: keyword.operator.advanced_csv
        10: keyword.operator.advanced_csv
      push:
        - meta_scope: meta.range.advanced_csv
        - match: (?=(\")|$)
          pop: true
        - include: scope:source.python
    - match: '(?<=^|,|\s|\")([0-9.eE+-]+)(?=$|,|\s|\")'
      scope: meta.number.advanced_csv
      captures:
        1: constant.numeric.advanced_csv
    - match: '(?<=^|,|\s|\")([^, \t\"]+)(?=$|,|\s|\")'
      scope: meta.nonnumber.advanced_csv
      captures:
        1: storage.type.advanced_csv
    - match: (\,)
      scope: meta.delimiter.advanced_csv
      captures:
        1: keyword.operator.advanced_csv