# Encoding: UTF-8

{fileTypes: ["yaml", "yml"],
 foldingStartMarker: /^[^#]\s*.*:(?<_1>\s*\[?| &.+)?$/,
 foldingStopMarker: /^\s*$|^\s*\}|^\s*\]|^\s*\)/,
 keyEquivalent: "^~Y",
 name: "YAML",
 patterns: 
  [{include: "#erb"},
   {begin: 
     /^(?<_1>\s*)(?:(?<_2>-)|(?:(?<_3>-\s*)?(?<_4>\w+\s*(?<_5>:))))\s*(?<_6>\||>)/,
    beginCaptures: 
     {2 => {name: "punctuation.definition.entry.yaml"},
      3 => {name: "punctuation.definition.entry.yaml"},
      4 => {name: "entity.name.tag.yaml"},
      5 => {name: "punctuation.separator.key-value.yaml"}},
    end: "^(?!^\\1)|^(?=\\1(-|\\w+\\s*:)|#)",
    name: "string.unquoted.block.yaml",
    patterns: [{include: "#erb"}]},
   {captures: 
     {1 => {name: "punctuation.definition.entry.yaml"},
      2 => {name: "entity.name.tag.yaml"},
      3 => {name: "punctuation.separator.key-value.yaml"},
      4 => {name: "punctuation.definition.entry.yaml"}},
    match: 
     /(?:(?:(?<_1>-\s*)?(?<_2>\w+\s*(?<_3>:)))|(?<_4>-))\s*(?<_5>(?<_6>0(?<_7>x|X)[0-9a-fA-F]*)|(?<_8>(?<_9>[0-9]+\.?[0-9]*)|(?<_10>\.[0-9]+))(?<_11>(?<_12>e|E)(?<_13>\+|-)?[0-9]+)?)(?<_14>L|l|UL|ul|u|U|F|f)?\s*$/,
    name: "constant.numeric.yaml"},
   {captures: 
     {1 => {name: "punctuation.definition.entry.yaml"},
      10 => {name: "punctuation.definition.string.end.yaml"},
      11 => {name: "string.unquoted.yaml"},
      2 => {name: "entity.name.tag.yaml"},
      3 => {name: "punctuation.separator.key-value.yaml"},
      4 => {name: "punctuation.definition.entry.yaml"},
      5 => {name: "string.quoted.double.yaml"},
      6 => {name: "punctuation.definition.string.begin.yaml"},
      7 => {name: "punctuation.definition.string.end.yaml"},
      8 => {name: "string.quoted.single.yaml"},
      9 => {name: "punctuation.definition.string.begin.yaml"}},
    match: 
     /(?:(?:(?<_1>-\s*)?(?<_2>\w+\s*(?<_3>:)))|(?<_4>-))\s*(?:(?<_5>(?<_6>")[^"]*(?<_7>"))|(?<_8>(?<_9>')[^']*(?<_10>'))|(?<_11>[^,{}&#\[\]]+))\s*/,
    name: "string.unquoted.yaml"},
   {captures: 
     {1 => {name: "punctuation.definition.entry.yaml"},
      2 => {name: "entity.name.tag.yaml"},
      3 => {name: "punctuation.separator.key-value.yaml"},
      4 => {name: "punctuation.definition.entry.yaml"}},
    match: 
     /(?:(?:(?<_1>-\s*)?(?<_2>\w+\s*(?<_3>:)))|(?<_4>-))\s*(?<_5>[0-9]{4}-[0-9]{2}-[0-9]{2})\s*$/,
    name: "constant.other.date.yaml"},
   {captures: 
     {1 => {name: "entity.name.tag.yaml"},
      2 => {name: "punctuation.separator.key-value.yaml"},
      3 => {name: "keyword.other.omap.yaml"},
      4 => {name: "punctuation.definition.keyword.yaml"}},
    match: /(?<_1>\w.*?)(?<_2>:)\s*(?<_3>(?<_4>\!\!)omap)?/,
    name: "meta.tag.yaml"},
   {captures: {1 => {name: "punctuation.definition.variable.yaml"}},
    match: /(?<_1>\&|\*)\w.*?$/,
    name: "variable.other.yaml"},
   {begin: /"/,
    beginCaptures: {0 => {name: "punctuation.definition.string.begin.yaml"}},
    end: "\"",
    endCaptures: {0 => {name: "punctuation.definition.string.end.yaml"}},
    name: "string.quoted.double.yaml",
    patterns: [{include: "#escaped_char"}, {include: "#erb"}]},
   {begin: /'/,
    beginCaptures: {0 => {name: "punctuation.definition.string.begin.yaml"}},
    end: "'",
    endCaptures: {0 => {name: "punctuation.definition.string.end.yaml"}},
    name: "string.quoted.single.yaml",
    patterns: [{include: "#escaped_char"}, {include: "#erb"}]},
   {begin: /`/,
    beginCaptures: {0 => {name: "punctuation.definition.string.begin.yaml"}},
    end: "`",
    endCaptures: {0 => {name: "punctuation.definition.string.end.yaml"}},
    name: "string.interpolated.yaml",
    patterns: [{include: "#escaped_char"}, {include: "#erb"}]},
   {captures: 
     {1 => {name: "entity.name.tag.yaml"},
      2 => {name: "keyword.operator.merge-key.yaml"},
      3 => {name: "punctuation.definition.keyword.yaml"}},
    match: /(?<_1>\<\<): (?<_2>(?<_3>\*).*)$/,
    name: "keyword.operator.merge-key.yaml"},
   {disabled: "1",
    match: /(?<_1> |	)+$/,
    name: "invalid.deprecated.trailing-whitespace.yaml"},
   {captures: {1 => {name: "punctuation.definition.comment.yaml"}},
    match: /(?<!\$)(?<_1>#)(?!\{).*$\n?/,
    name: "comment.line.number-sign.yaml"},
   {match: /-/, name: "keyword.operator.symbol"},
   {begin: /^(?=\t)/,
    end: "(?=[^\\t])",
    name: "meta.leading-tabs.yaml",
    patterns: 
     [{captures: {1 => {name: "meta.odd-tab"}, 2 => {name: "meta.even-tab"}},
       match: /(?<_1>\t)(?<_2>\t)?/}]}],
 repository: 
  {erb: 
    {begin: /<%+(?!>)=?/,
     captures: {0 => {name: "punctuation.section.embedded.ruby"}},
     end: "%>",
     name: "source.ruby.rails.embedded.html",
     patterns: 
      [{captures: {1 => {name: "punctuation.definition.comment.ruby"}},
        match: /(?<_1>#).*?(?=%>)/,
        name: "comment.line.number-sign.ruby"},
       {include: "source.ruby.rails"}]},
   escaped_char: {match: /\\./, name: "constant.character.escape.yaml"}},
 scopeName: "source.yaml",
 uuid: "B0C44228-4F1F-11DA-AFF2-000A95AF0064"}
