aboutsummaryrefslogtreecommitdiffstats
path: root/public/prism/prism-gedcom.js
blob: 9819c040f66e255b17ab23082a0219172c131b50 (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
Prism.languages.gedcom = {
  'line-value': {
    // Preceded by level, optional pointer, and tag
    pattern:
      /(^[\t ]*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?\w+ ).+/m,
    lookbehind: true,
    inside: {
      pointer: {
        pattern: /^@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@$/,
        alias: 'variable',
      },
    },
  },
  tag: {
    // Preceded by level and optional pointer
    pattern:
      /(^[\t ]*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?)\w+/m,
    lookbehind: true,
    alias: 'string',
  },
  level: {
    pattern: /(^[\t ]*)\d+/m,
    lookbehind: true,
    alias: 'number',
  },
  pointer: {
    pattern: /@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@/,
    alias: 'variable',
  },
};