• J
    gitweb: Refactor diff body line classification · 20a864cd
    Jakub Narebski 提交于
    Simplify classification of diff line body in format_diff_line(),
    replacing two long if-elsif chains (one for ordinary diff and one for
    combined diff of a merge commit) with a single regexp match.  Refactor
    this code into diff_line_class() function.
    
    While at it:
    
    * Fix an artifact in that $diff_class included leading space to be
      able to compose classes like this "class=\"diff$diff_class\"', even
      when $diff_class was an empty string.  This made code unnecessary
      ugly: $diff_class is now just class name or an empty string.
    
    * Introduce "ctx" class for context lines ($diff_class was set to ""
      in this case before this commit).
    
    Idea and initial code by Junio C Hamano, polish and testing by Jakub
    Narebski.  Inspired by patch adding side-by-side diff by Kato Kazuyoshi,
    which required $diff_class to be name of class without extra space.
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    Signed-off-by: NJakub Narebski <jnareb@gmail.com>
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    20a864cd
gitweb.perl 226.7 KB