Showing 2 changed files with 21 additions and 37 deletions
+21 -27
lib/Gitprep/Git.pm
... ...
@@ -826,44 +826,38 @@ sub latest_commit_log {
826 826
 }
827 827
 
828 828
 sub parse_blobdiff_lines {
829
-  my ($self, $lines_raw) = @_;
829
+  my ($self, $lines) = @_;
830 830
   
831 831
   # Parse
832 832
   my @lines;
833
-  for my $line (@$lines_raw) {
833
+  my $delete_count_rest;
834
+  my $add_count_rest;
835
+  for my $line (@$lines) {
834 836
     chomp $line;
835
-    my $class;
836 837
     
837
-    if ($line =~ /^diff \-\-git /) { $class = 'diff header' }
838
-    elsif ($line =~ /^index /) { $class = 'diff extended_header' }
839
-    elsif ($line =~ /^\+/) { $class = 'diff to_file' }
840
-    elsif ($line =~ /^\-/) { $class = 'diff from_file' }
841
-    elsif ($line =~ /^\@\@/) { $class = 'diff chunk_header' }
842
-    elsif ($line =~ /^Binary files/) { $class = 'diff binary_file' }
843
-    else { $class = 'diff' }
844
-    push @lines, {value => $line, class => $class};
845
-  }
846
-  
847
-  return \@lines;
848
-}
849
-
850
-sub parse_blobdiff_lines {
851
-  my ($self, $lines_raw) = @_;
852
-  
853
-  # Parse
854
-  my @lines;
855
-  for my $line (@$lines_raw) {
856
-    chomp $line;
857 838
     my $class;
839
+    my $before_line_num;
840
+    my $after_line_num;
858 841
     
859 842
     if ($line =~ /^diff \-\-git /) { $class = 'header' }
860
-    elsif ($line =~ /^index /) { $class = 'extended_header' }
861
-    elsif ($line =~ /^\+/) { $class = 'to_file' }
862
-    elsif ($line =~ /^\-/) { $class = 'from_file' }
863 843
     elsif ($line =~ /^\@\@/) { $class = 'chunk_header' }
844
+    elsif ($line =~ /^\- /) { $class = 'from_file' }
845
+    elsif ($line =~ /^\+ /) { $class = 'to_file' }
864 846
     elsif ($line =~ /^Binary files/) { $class = 'binary_file' }
847
+    elsif ($line =~ /^deleted/
848
+      || $line =~ /^index /
849
+      || $line =~ /^--- /
850
+      || $line =~ /^\+\+\+ /
851
+    ) { next }
865 852
     else { $class = 'diff' }
866
-    push @lines, {value => $line, class => $class};
853
+    
854
+    my $line_data = {
855
+      value => $line,
856
+      class => $class,
857
+      before_line_num => $before_line_num,
858
+      after_line_num => $after_line_num
859
+    };
860
+    push @lines, $line_data;
867 861
   }
868 862
   
869 863
   return \@lines;
-10
templates/include/blobdiff_body.html.ep
... ...
@@ -1,17 +1,7 @@
1 1
 <div class="border-gray" style="margin-bottom:20px;">
2
-  % my $start;
3 2
   % for my $line (@$lines) {
4 3
     % my $class = $line->{class};
5 4
     % my $value = $line->{value};
6
-    % unless ($start) {
7
-      % if ($class eq 'header') {
8
-        % $start = 1;
9
-      % }
10
-      % else { next }
11
-    % }
12
-    % next if $value =~ /^index /;
13
-    % next if $value =~ /^--- /;
14
-    % next if $value =~ /^\+\+\+ /;
15 5
     % my $status = stash('status') || '';
16 6
     % if ($class eq 'header') {
17 7
       <div class="border-bottom-gray padding5 bk-gray-light">