{"name":"Fontinfo","scopeName":"source.fontinfo","patterns":[{"include":"#main"}],"repository":{"dict":{"name":"meta.dictionary.fontinfo","begin":"^\\s*(begin)\\s+(FDDict)\\s+(\\S+).*","end":"^\\s*(end)\\s+(FDDict)\\s+(?:(\\3)(?=\\s|$)|(\\S+))\\s*","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.scope.begin.fontinfo"},"2":{"name":"storage.type.var.fontinfo"},"3":{"name":"entity.name.dictionary.fontinfo"}},"endCaptures":{"1":{"name":"keyword.control.scope.end.fontinfo"},"2":{"name":"storage.type.var.fontinfo"},"3":{"name":"entity.name.dictionary.fontinfo"},"4":{"name":"invalid.illegal.unmatched-name.fontinfo"}}},"glyphSet":{"name":"meta.glyph-set.fontinfo","begin":"^\\s*(begin)\\s+(GlyphSet)\\s+(\\S+).*","end":"^\\s*(end)\\s+(GlyphSet)(?:\\s+(?:(?:\\3)(?=\\s|$)|(\\S+)))?+.*","patterns":[{"match":"^[ \\t]*(\\S.*)","captures":{"1":{"name":"string.regexp.fontinfo","patterns":[{"include":"source.regexp"},{"name":"constant.character.escape.backslash.fontinfo","match":"\\."},{"name":"string.regexp.arbitrary-repitition","match":"[*+?]"},{"name":"constant.other.character-class.set.regexp.fontinfo","begin":"\\[","end":"\\]|(?=\\s*$)","beginCaptures":{"0":{"name":"punctuation.definition.regexp.class.begin.fontinfo"}},"endCaptures":{"0":{"name":"punctuation.definition.regexp.class.end.fontinfo"}}}]}}}],"beginCaptures":{"1":{"name":"keyword.control.scope.begin.fontinfo"},"2":{"name":"storage.type.var.fontinfo"},"3":{"name":"entity.name.glyph-set.fontinfo"}},"endCaptures":{"1":{"name":"keyword.control.scope.end.fontinfo"},"2":{"name":"storage.type.var.fontinfo"},"3":{"name":"entity.name.glyph-set.fontinfo"},"4":{"name":"invalid.illegal.unmatched-name.fontinfo"}}},"main":{"patterns":[{"include":"#dict"},{"include":"#glyphSet"},{"include":"#property"}]},"property":{"name":"meta.property.$1.fontinfo","begin":"(?x) ^\\s*\n( (?:Baseline|Height)[56](?:Overshoot)?\n| (?:Cap|Descender|Lc|Fig)(?:Height|Overshoot)\n| (?:Ordinal|Superior)(?:Baseline|Overshoot)\n| AscenderHeight\n| AscenderOvershoot\n| BaselineOvershoot\n| BaselineYCoord\n| BlueFuzz\n| BlueValuesPairs\n| BlueValues\n| ConvertToCID\n| DictName\n| Dominant[HV]\n| FlexOK\n| FontName\n| FullName\n| [HV]CounterChars\n| IsBoldStyle\n| IsItalicStyle\n| IsOS/2OBLIQUE\n| IsOS/2WidthWeigthSlopeOnly\n| LanguageGroup\n| LicenseCode\n| OrigEmSqUnits\n| OtherBlueValuesPairs\n| OtherBlues\n| PreferOS/2TypoMetrics\n| StemSnap[HV]\n| UseOldNameID4\n) (?=\\s|$)","end":"$","patterns":[{"include":"#value"}],"beginCaptures":{"0":{"name":"meta.property.key.fontinfo"},"1":{"name":"variable.assignment.fontinfo"}}},"value":{"patterns":[{"name":"constant.language.boolean.$1.fontinfo","match":"(?:\\G|\\s)(true|false)(?=\\s|$)"},{"match":"(?:\\G|^|(?\u003c=\\[|\\())((?:[ \\t]*[-+]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:[Ee][-+]?\\d+)?[ \\t]*)++)(?=$|\\]|\\))","captures":{"1":{"patterns":[{"name":"constant.numeric.fontinfo","match":"\\S+"}]}}},{"name":"meta.array.square-brackets.fontinfo","begin":"\\G\\s*(\\[)","end":"([^\\]]*)(\\])|(?=\\s*$)","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.array.bracket.round.begin.fontinfo"}},"endCaptures":{"1":{"patterns":[{"include":"#value"}]},"2":{"name":"punctuation.definition.array.bracket.round.end.fontinfo"}}},{"name":"meta.array.round-brackets.fontinfo","begin":"\\G\\s*(\\()","end":"([^\\)]*)(\\))|(?=\\s*$)","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.array.bracket.round.begin.fontinfo"}},"endCaptures":{"1":{"patterns":[{"include":"#value"}]},"2":{"name":"punctuation.definition.array.bracket.round.end.fontinfo"}}},{"match":"(?:\\G|^|(?\u003c=[\\[\\(\\s]))\\s*(?![\\[\\]\\(\\)])(\\S+)(?\u003c!\\]|\\))","captures":{"1":{"name":"string.unquoted.fontinfo"}}}]}}}