Отметить разницу как ok в vimdiff
У меня есть несколько больших json файлов, которые мне нужно проверить на наличие ошибок, и задалось вопросом, можно ли пометить разницу как ok и применить это для всего сеанса diff, тем самым устраняя его дальше в файле.
Пример
Name: Donald Duck | Name: Daisy Duck
Здесь я хотел бы отметить это изменение как "ok" diff (т.е. я ожидаю название и видимое изменение пола).
Ответы
Ответ 1
Ну, способ сделать это в vim, просто сделает пользовательское выражение diff
например. это должно быть в вашем .vimrc
set diffexpr=MyDiff()
function! MyDiff()
let opt = ""
if &diffopt =~ "icase"
let opt = opt . "-i "
endif
if &diffopt =~ "iwhite"
let opt = opt . "-Ewb "
endif
silent execute "!diff -I 'Duck' " . opt . v:fname_in . " " . v:fname_new .
\ " > " . v:fname_out
endfunction
Конечно, вы хотите сделать его более гибким, но это должно дать вам общий метод
Ответ 2
Я не думаю, что есть встроенный способ сделать это. Но способ, который возникает для меня, - это заменить файлы, а затем переустановить.
Например, если это изменение имени ОК, то просто замените в обоих файлах:
%s/Name: Donald Duck/Name: placeholder_1/g ; in file 1
%s/Name: Daisy Duck/Name: placeholder_1/g ; in file 2
Вы можете сделать это, например. sed или perl перед запуском vim -d.
Теперь они будут совпадать. Но переход от Дональда Дака к Микки Маусу не изменится, ни переключение с Daffy Duck на Daisy Duck.