lib/rouge/lexers/diff.rb in rouge-0.0.6 vs lib/rouge/lexers/diff.rb in rouge-0.0.7

- old
+ new

@@ -1,10 +1,18 @@ module Rouge module Lexers class Diff < RegexLexer tag 'diff' - aliases 'patch' - extensions 'diff', 'patch' + 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 ') + + return 0.9 if text =~ /\A---.*?\n\+\+\+/m + end state :header do rule /^diff .*?\n(?=---|\+\+\+)/m, 'Generic.Heading' rule /^--- .*?\n/, 'Generic.Deleted' rule /^\+\+\+ .*?\n/, 'Generic.Inserted'