{"name":"Simple File Verification","scopeName":"source.sfv","patterns":[{"name":"meta.rhash-output.sfv","begin":"\\A(?=; Generated by RHash v\\d)","end":"(?=A)B","patterns":[{"include":"#rhash"},{"include":"#main"}]},{"name":"text.checksums","begin":"^(?=[a-fA-F0-9]+ \\*pocorgtfo\\d{2}\\.pdf\\s*$)","end":"(?=A)B","patterns":[{"include":"text.checksums"}]},{"include":"#main"}],"repository":{"checksum":{"name":"meta.crc32.checksum.sfv","match":"^\\s*(?:((\")[^\"]*(\"))|(\\S.*?))\\s+([a-fA-F0-9]{8})(?=\\s*$)","captures":{"1":{"name":"string.quoted.double.filename.sfv"},"2":{"name":"punctuation.definition.string.begin.sfv"},"3":{"name":"punctuation.definition.string.end.sfv"},"4":{"name":"string.unquoted.filename.sfv"},"5":{"name":"constant.numeric.integer.int.hexadecimal.hex.crc32.sfv"}}},"comment":{"patterns":[{"name":"comment.block.sfv","begin":"^\\s*(;)((!)SFV_COMMENT_START)[ \\t]*$","end":"^\\s*(;)((!)SFV_COMMENT_END)[ \\t]*$","beginCaptures":{"1":{"name":"punctuation.definition.comment.sfv"},"2":{"name":"keyword.control.comment.begin.sfv"},"3":{"name":"punctuation.definition.keyword.sfv"}},"endCaptures":{"1":{"name":"punctuation.definition.comment.sfv"},"2":{"name":"keyword.control.comment.end.sfv"},"3":{"name":"punctuation.definition.keyword.sfv"}}},{"name":"comment.line.semicolon.sfv","begin":"^\\s*(;)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.sfv"}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#checksum"},{"include":"#rhash"}]},"rhash":{"name":"meta.checksum-record.sfv","match":"(?x) ^ \\s* (\\S.*?(?\u003c=\\S)) ((?: \\s+ (?: [a-fA-F0-9]{8} |   [a-fA-F0-9]{32} |   [a-fA-F0-9]{40} |   [a-fA-F0-9]{48} |   [a-fA-F0-9]{56} |   [a-fA-F0-9]{64} |   [a-fA-F0-9]{96} |   [a-fA-F0-9]{128} |   [a-zA-Z2-7]{32} |   [a-zA-Z2-7]{39} ) )+) (?=\\s*$)","captures":{"1":{"name":"string.unquoted.filename.sfv"},"2":{"patterns":[{"name":"constant.numeric.base32.rfc4648.sfv","match":"\\b[a-zA-Z2-7]+\\b"},{"name":"constant.numeric.integer.int.hexadecimal.hex.sfv","match":"\\b[a-fA-F0-9]+\\b"}]}}}}}
