Improve commit diff
* show highlights when replace empty line with content * show inline diff when replace line with spaces with content
This commit is contained in:
parent
6263598314
commit
9109a20758
1 changed files with 14 additions and 2 deletions
|
@ -13,6 +13,9 @@ module Gitlab
|
||||||
second_line = diff_arr[index+2]
|
second_line = diff_arr[index+2]
|
||||||
max_length = [first_line.size, second_line.size].max
|
max_length = [first_line.size, second_line.size].max
|
||||||
|
|
||||||
|
# Skip inline diff if empty line was replaced with content
|
||||||
|
next if first_line == "-\n"
|
||||||
|
|
||||||
first_the_same_symbols = 0
|
first_the_same_symbols = 0
|
||||||
(0..max_length + 1).each do |i|
|
(0..max_length + 1).each do |i|
|
||||||
first_the_same_symbols = i - 1
|
first_the_same_symbols = i - 1
|
||||||
|
@ -20,10 +23,19 @@ module Gitlab
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
first_token = first_line[0..first_the_same_symbols][1..-1]
|
first_token = first_line[0..first_the_same_symbols][1..-1]
|
||||||
start = first_token + START
|
start = first_token + START
|
||||||
diff_arr[index+1].sub!(first_token, first_token => start)
|
|
||||||
diff_arr[index+2].sub!(first_token, first_token => start)
|
if first_token.empty?
|
||||||
|
# In case if we remove string of spaces in commit
|
||||||
|
diff_arr[index+1].sub!("-", "-" => "-#{START}")
|
||||||
|
diff_arr[index+2].sub!("+", "+" => "+#{START}")
|
||||||
|
else
|
||||||
|
diff_arr[index+1].sub!(first_token, first_token => start)
|
||||||
|
diff_arr[index+2].sub!(first_token, first_token => start)
|
||||||
|
end
|
||||||
|
|
||||||
last_the_same_symbols = 0
|
last_the_same_symbols = 0
|
||||||
(1..max_length + 1).each do |i|
|
(1..max_length + 1).each do |i|
|
||||||
last_the_same_symbols = -i
|
last_the_same_symbols = -i
|
||||||
|
|
Loading…
Reference in a new issue