Sha256: a65794aa656e3579fc9d00d8fef4c92346929db899b031d8a9c11b8364197b40
Contents?: true
Size: 970 Bytes
Versions: 3
Compression:
Stored size: 970 Bytes
Contents
module Rouge module Lexers class Diff < RegexLexer title 'diff' desc 'Lexes unified diffs or patches' tag 'diff' aliases 'patch', 'udiff' filenames '*.diff', '*.patch' mimetypes 'text/x-diff', 'text/x-patch' def self.analyze_text(text) return 1 if text.start_with?('Index: ') return 1 if text.start_with?('diff ') # TODO: Have a look at pygments here, seems better return 0.9 if text =~ /\A---.*?\n\+\+\+/m end state :root do rule(/^ .*\n/, Text) rule(/^\+.*\n/, Generic::Inserted) # Do not highlight the delimiter line # before the diffstat in email patches. rule(/^-+ .*\n/, Generic::Deleted) rule(/^!.*\n/, Generic::Strong) rule(/^@.*\n/, Generic::Subheading) rule(/^([Ii]ndex|diff).*\n/, Generic::Heading) rule(/^=.*\n/, Generic::Heading) rule(/.*\n/, Text) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rouge-1.10.0 | lib/rouge/lexers/diff.rb |
rouge-1.9.1 | lib/rouge/lexers/diff.rb |
rouge-1.9.0 | lib/rouge/lexers/diff.rb |