{"name":"Format String","scopeName":"textmate.format-string","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\[\\\\$(nt]"},{"name":"constant.other.reference.format-string","match":"\\\\[ULEul]"},{"name":"variable.other.readwrite.format-string","match":"(\\$)(?:\\d+|\\w+)","captures":{"1":{"name":"punctuation.definition.variable.begin.format-string"}}},{"name":"variable.other.transform.format-string","match":"(\\$\\{)\\w+(:/)(?:upcase|downcase|capitalize|titlecase|asciify|(.*?))(\\})","captures":{"1":{"name":"punctuation.definition.transform.begin.format-string"},"2":{"name":"punctuation.separator.transform.format-string"},"3":{"name":"invalid.illegal.unknown-transform.format-string"},"4":{"name":"punctuation.definition.transform.end.format-string"}}},{"name":"variable.other.condition.binary.format-string","begin":"(\\$\\{)\\w+(:\\?)","end":"\\}","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\[:}]"},{"include":"textmate.format-string"},{"begin":":","end":"(?=\\})","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\[}]"},{"include":"textmate.format-string"}],"beginCaptures":{"0":{"name":"punctuation.separator.condition.format-string"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.condition.begin.format-string"},"2":{"name":"punctuation.separator.condition.format-string"}},"endCaptures":{"1":{"name":"punctuation.definition.condition.end.format-string"}}},{"name":"variable.other.condition.unary.format-string","begin":"(\\$\\{)\\w+(:[-+]?)","end":"\\}","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\}"},{"include":"textmate.format-string"}],"beginCaptures":{"1":{"name":"punctuation.definition.condition.begin.format-string"},"2":{"name":"punctuation.separator.condition.format-string"}},"endCaptures":{"1":{"name":"punctuation.definition.condition.end.format-string"}}},{"name":"variable.other.replacement.format-string","begin":"(\\$\\{)\\w+(/)","end":"\\}","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\/"},{"include":"source.regexp.oniguruma"},{"begin":"/","end":"(/)([a-z]*)(?=\\})","patterns":[{"name":"constant.character.escape.format-string","match":"\\\\/"},{"include":"textmate.format-string"}],"beginCaptures":{"0":{"name":"punctuation.separator.replacement.format-string"}},"endCaptures":{"1":{"name":"punctuation.separator.replacement.format-string"},"2":{"patterns":[{"name":"invalid.illegal.unknown-option.format-string","match":"[^giems]+"}]}}}],"beginCaptures":{"1":{"name":"punctuation.definition.replacement.begin.format-string"},"2":{"name":"punctuation.separator.replacement.format-string"}},"endCaptures":{"1":{"name":"punctuation.definition.replacement.end.format-string"}}},{"name":"invalid.deprecated.condition.format-string","begin":"\\(\\?\\d+:","end":"\\)"}]}
