Remove orphaned signs.

This commit is contained in:
Andy Stewart
2014-02-04 12:49:55 +01:00
parent 270973079d
commit 84cb4b8b9d

View File

@@ -82,6 +82,12 @@ function! sign#find_current_signs(file_name)
let line_number = str2nr(split(components[0], '=')[1])
if name =~# 'GitGutter'
let id = str2nr(split(components[1], '=')[1])
" Remove orphaned signs (signs placed on lines which have been deleted).
" (When a line is deleted its sign lingers. Subsequent lines' signs'
" line numbers are decremented appropriately.)
if has_key(gitgutter_signs, line_number)
execute "sign unplace" gitgutter_signs[line_number].id
endif
let gitgutter_signs[line_number] = {'id': id, 'name': name}
else
call add(other_signs, line_number)