--- 
name: MoinMoin
fileTypes: 
- moinmoin
scopeName: text.moinmoin
repository: 
  inline: 
    patterns: 
    - name: markup.raw.block.moinmoin
      captures: 
        "0": 
          name: punctuation.definition.raw.moinmoin
      begin: \{{3}(?!.*\}{3})
      end: \}{3}
    - name: markup.raw.inline.moinmoin
      captures: 
        "1": 
          name: punctuation.definition.raw.moinmoin
        "2": 
          name: punctuation.definition.raw.moinmoin
        "3": 
          name: punctuation.definition.raw.moinmoin
        "4": 
          name: punctuation.definition.raw.moinmoin
      match: (`)[^`]*(`)|({{{).*?(}}})
    - captures: 
        "0": 
          name: punctuation.definition.italic.moinmoin
      begin: "'{2}(?='{3}[^']*'{3})"
      contentName: markup.italic.moinmoin
      end: "'{2}(?!')|'{2}(?='{3})"
      patterns: 
      - include: "#inline"
    - captures: 
        "0": 
          name: punctuation.definition.bold.moinmoin
      begin: "'{3}"
      contentName: markup.bold.moinmoin
      end: "'{3}"
      patterns: 
      - include: "#inline"
    - captures: 
        "0": 
          name: punctuation.definition.italic.moinmoin
      begin: "'{2}"
      contentName: markup.italic.moinmoin
      end: "'{2}(?!')|'{2}(?='{3})"
      patterns: 
      - include: "#inline"
    - captures: 
        "0": 
          name: punctuation.definition.underline.moinmoin
      begin: __
      contentName: markup.underline.moinmoin
      end: __
      patterns: 
      - include: "#inline"
    - name: markup.underline.link.moinmoin
      match: (?<!\!)/?(?:[A-Z][a-z0-9]+[A-Z][a-z0-9]+[A-Za-z0-9]*)
    - name: markup.underline.link.moinmoin
      captures: 
        "1": 
          name: punctuation.definition.link.moinmoin
        "2": 
          name: punctuation.definition.link.moinmoin
      match: (\[").*?("\])
    - name: markup.underline.link.moinmoin
      captures: 
        "1": 
          name: punctuation.definition.link.moinmoin
        "2": 
          name: punctuation.definition.link.moinmoin
      match: (\[):.*?:.*?(\])
    - name: markup.underline.link.moinmoin
      match: https?://\S+
    - name: markup.underline.link.moinmoin
      captures: 
        "1": 
          name: punctuation.definition.link.moinmoin
        "2": 
          name: punctuation.definition.link.moinmoin
      match: (\[)https?://.*?(\])
    - name: markup.underline.link.moinmoin
      captures: 
        "1": 
          name: punctuation.separator.key-value.moinmoin
      match: attachment(:)\S+
    - name: meta.table.column.moinmoin
      captures: 
        "0": 
          name: punctuation.definition.table.column.moinmoin
      match: \|\|
    - name: meta.macro.moinmoin
      captures: 
        "0": 
          name: punctuation.definition.macro.moinmoin
      match: (\[\[).*?(\]\])
uuid: DB315CBC-23FD-4952-9D64-F2AC0618A840
patterns: 
- name: markup.heading.1.moinmoin
  captures: 
    "1": 
      name: punctuation.definition.heading.moimoin
    "2": 
      name: punctuation.definition.heading.moimoin
  match: ^\s*(=)\s.*\s(=)\n
- name: markup.heading.2.moinmoin
  captures: 
    "1": 
      name: punctuation.definition.heading.moimoin
    "2": 
      name: punctuation.definition.heading.moimoin
  match: ^\s*(==)\s.*\s(==)\n
- name: markup.heading.3.moinmoin
  captures: 
    "1": 
      name: punctuation.definition.heading.moimoin
    "2": 
      name: punctuation.definition.heading.moimoin
  match: ^\s*(===)\s.*\s(===)\n
- name: markup.heading.4.moinmoin
  captures: 
    "1": 
      name: punctuation.definition.heading.moimoin
    "2": 
      name: punctuation.definition.heading.moimoin
  match: ^\s*(====)\s.*\s(====)\n
- name: markup.heading.5.moinmoin
  captures: 
    "1": 
      name: punctuation.definition.heading.moimoin
    "2": 
      name: punctuation.definition.heading.moimoin
  match: ^\s*(=====)\s.*\s(=====)\n
- name: meta.separator.moinmoin
  match: ^\s*-----\s*\n
- name: meta.pragma.moimoin
  match: ^#pragma.*
- name: comment.line.double-number-sign.moimoin
  captures: 
    "1": 
      name: punctuation.definition.comment.moimoin
  match: ^(##).*$\n?
- captures: 
    "1": 
      name: markup.list.definition.term.moinmoin
    "2": 
      name: punctuation.separator.definition.moinmoin
  begin: ^\s+(.*?(::))(?=\s+\S)
  contentName: markup.list.definition.moinmoin
  end: \n
  patterns: 
  - include: "#inline"
- captures: 
    "1": 
      name: punctuation.definition.list_item.moinmoin
    "2": 
      name: markup.list.unnumbered.moinmoin
  begin: ^\s+(\*)(\s)
  contentName: markup.list.unnumbered.moinmoin
  end: \n
  patterns: 
  - include: "#inline"
- captures: 
    "1": 
      name: punctuation.definition.list_item.moinmoin
    "2": 
      name: markup.list.numbered.moinmoin
  begin: ^\s+((?:[aAiI]|\d+)\.(?:\#\d+)?)(\s)
  contentName: markup.list.numbered.moinmoin
  end: \n
  patterns: 
  - include: "#inline"
- captures: 
    "1": 
      name: punctuation.definition.table.column.moinmoin
    "2": 
      name: punctuation.definition.table.column.moinmoin
  begin: ^\s*(\|\|)
  contentName: meta.table.moinmoin
  end: (\|\|$)|\n
  patterns: 
  - include: "#inline"
- name: meta.paragraph.moinmoin
  begin: ^\s*(?=\S)
  end: \n
  patterns: 
  - include: "#inline"
keyEquivalent: ^~M
