{"name":"YAML","scopeName":"source.yaml","patterns":[{"include":"#erb"},{"include":"#comment"},{"name":"invalid.illegal.whitespace.yaml","match":"\\t+"},{"name":"punctuation.definition.directives.end.yaml","match":"^---"},{"name":"punctuation.definition.document.end.yaml","match":"^\\.\\.\\."},{"contentName":"string.unquoted.block.yaml","begin":"^(\\s*)(?:(-)|(?:(?:(-)(\\s*))?([^!@#%\u0026*\u003e,][^:#]*\\S)\\s*(:)))(?:\\s+((!)[^!\\s]+))?\\s+(?=\\||\u003e)","end":"^((?!$)(?!\\1\\s+)|(?=\\s\\4(-|[^\\s!@#%\u0026*\u003e,].*:\\s+)))","patterns":[{"begin":"\\G","end":"$","patterns":[{"include":"#comment"}]},{"include":"#constants"},{"include":"#erb"}],"beginCaptures":{"2":{"name":"punctuation.definition.entry.yaml"},"3":{"name":"punctuation.definition.entry.yaml"},"5":{"name":"entity.name.tag.yaml"},"6":{"name":"punctuation.separator.key-value.yaml"},"7":{"name":"keyword.other.tag.local.yaml"},"8":{"name":"punctuation.definition.tag.local.yaml"}}},{"contentName":"string.unquoted.block.yaml","begin":"^(\\s*)([^!@#%\u0026*\u003e,][^:#]*\\S)\\s*(:)(?:\\s+((!)[^!\\s]+))?\\s+(?=\\||\u003e)","end":"^(?!$)(?!\\1\\s+)","patterns":[{"begin":"\\G","end":"$","patterns":[{"include":"#comment"}]},{"include":"#constants"},{"include":"#erb"}],"beginCaptures":{"2":{"name":"entity.name.tag.yaml"},"3":{"name":"punctuation.separator.key-value.yaml"},"4":{"name":"keyword.other.tag.local.yaml"},"5":{"name":"punctuation.definition.tag.local.yaml"}}},{"match":"(\u003c\u003c)\\s*(:)\\s+(.+)$","captures":{"1":{"name":"entity.name.tag.merge.yaml"},"2":{"name":"punctuation.separator.key-value.yaml"},"3":{"patterns":[{"include":"#variables"}]}}},{"begin":"(?\u003e^(\\s*)(-)?\\s*)([^!{@#%\u0026*\u003e,'\"][^#]*?)(:)\\s+((!!)omap)?","end":"^((?!\\1\\s+)|(?=\\1\\s*(-|[^!@#%\u0026*\u003e,].*:\\s+|#)))","patterns":[{"include":"#scalar-content"}],"beginCaptures":{"2":{"name":"punctuation.definition.entry.yaml"},"3":{"name":"entity.name.tag.yaml"},"4":{"name":"punctuation.separator.key-value.yaml"},"5":{"name":"keyword.other.omap.yaml"},"6":{"name":"punctuation.definition.tag.omap.yaml"}}},{"begin":"^(\\s*)(-)?\\s*(?:((')([^']*?)('))|((\")([^\"]*?)(\")))(:)\\s+((!!)omap)?","end":"^((?!\\1\\s+)|(?=\\1\\s*(-|[^!@#%\u0026*\u003e,].*:\\s+|#)))","patterns":[{"include":"#scalar-content"}],"beginCaptures":{"10":{"name":"punctuation.definition.string.end.yaml"},"11":{"name":"punctuation.separator.key-value.yaml"},"12":{"name":"keyword.other.omap.yaml"},"13":{"name":"punctuation.definition.tag.omap.yaml"},"2":{"name":"punctuation.definition.entry.yaml"},"3":{"name":"string.quoted.single.yaml"},"4":{"name":"punctuation.definition.string.begin.yaml"},"5":{"name":"entity.name.tag.yaml"},"6":{"name":"punctuation.definition.string.end.yaml"},"7":{"name":"string.quoted.double.yaml"},"8":{"name":"punctuation.definition.string.begin.yaml"},"9":{"name":"entity.name.tag.yaml"}}},{"begin":"^(\\s*)(-)\\s+(?:((!!)omap)|((!)[^!\\s]+)|(?![!@#%\u0026*\u003e,]))","end":"^((?!\\1\\s+)|(?=\\1\\s*(-|[^!@#%\u0026*\u003e,].*:\\s+|#)))","patterns":[{"include":"#scalar-content"}],"beginCaptures":{"2":{"name":"punctuation.definition.entry.yaml"},"3":{"name":"keyword.other.omap.yaml"},"4":{"name":"punctuation.definition.tag.omap.yaml"},"5":{"name":"keyword.other.tag.local.yaml"},"6":{"name":"punctuation.definition.tag.local.yaml"}}},{"include":"#variables"},{"include":"#strings"}],"repository":{"comment":{"name":"comment.line.number-sign.yaml","begin":"(?\u003c=^|\\s)#(?!{)","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}}},"constants":{"name":"constant.language.yaml","match":"(?\u003c=\\s)(true|false|null|True|False|Null|TRUE|FALSE|NULL|~)(?=\\s*$)"},"date":{"match":"([0-9]{4}-[0-9]{2}-[0-9]{2})\\s*($|(?=#)(?!#{))","captures":{"1":{"name":"constant.other.date.yaml"}}},"erb":{"name":"meta.embedded.line.ruby","contentName":"source.ruby.rails","begin":"\u003c%+(?!\u003e)=?","end":"(%)\u003e","patterns":[{"name":"comment.line.number-sign.ruby","match":"(#).*?(?=%\u003e)","captures":{"1":{"name":"punctuation.definition.comment.ruby"}}},{}],"beginCaptures":{"0":{"name":"punctuation.definition.embedded.begin.ruby"}},"endCaptures":{"0":{"name":"punctuation.definition.embedded.end.ruby"},"1":{"name":"source.ruby.rails"}}},"escaped_char":{"patterns":[{"name":"constant.character.escape.yaml","match":"\\\\u[A-Fa-f0-9]{4}"},{"name":"constant.character.escape.yaml","match":"\\\\U[A-Fa-f0-9]{8}"},{"name":"constant.character.escape.yaml","match":"\\\\x[0-9A-Fa-f]{2}"},{"name":"constant.character.escape.yaml","match":"\\\\[0abtnvfre \"/\\\\N_LP]"},{"name":"invalid.illegal.escape.yaml","match":"\\\\(u.{4}|U.{8}|x.{2}|.)"}]},"numeric":{"patterns":[{"name":"constant.numeric.integer.yaml","match":"[-+]?[0-9]+(?=\\s*($|#(?!#{)))"},{"name":"constant.numeric.octal.yaml","match":"0o[0-7]+(?=\\s*($|#(?!#{)))"},{"name":"constant.numeric.hexadecimal.yaml","match":"0x[0-9a-fA-F]+(?=\\s*($|#(?!#{)))"},{"name":"constant.numeric.float.yaml","match":"[-+]?(.[0-9]+|[0-9]+(.[0-9]*)?)([eE][-+]?[0-9]+)?(?=\\s*($|#(?!#{)))"},{"name":"constant.numeric.float.yaml","match":"[-+]?(.inf|.Inf|.INF)(?=\\s*($|#(?!#{)))"},{"name":"constant.numeric.float.yaml","match":"(.nan|.NaN|.NAN)(?=\\s*($|#(?!#{)))"}]},"scalar-content":{"patterns":[{"include":"#comment"},{"name":"punctuation.definition.tag.non-specific.yaml","match":"!(?=\\s)"},{"include":"#constants"},{"include":"#date"},{"include":"#numeric"},{"include":"#strings"}]},"strings":{"patterns":[{"name":"string.quoted.double.yaml","begin":"\"","end":"\"","patterns":[{"include":"#escaped_char"},{"include":"#erb"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}}},{"name":"string.quoted.single.yaml","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.yaml","match":"''"},{"include":"#erb"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"applyEndPatternLast":true},{"name":"string.interpolated.yaml","begin":"`","end":"`","patterns":[{"include":"#escaped_char"},{"include":"#erb"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}}},{"name":"string.unquoted.yaml","match":"[^\\s\"'\\n](?!\\s*#(?!{))([^#\\n]|((?\u003c!\\s)#))*"}]},"variables":{"name":"variable.other.yaml","match":"(\u0026|\\*)\\w+$","captures":{"1":{"name":"punctuation.definition.variable.yaml"}}}}}