Я считал различия Vimdiff и Viewing с Vimdiff плюс выполнение различных поисков Google с помощью вещей как "vimdiff несколько", "vimdiff мерзавец", "vimdiff управляет" и т.д.
Когда использование делает или diffg, я получаю ошибку "Больше чем два буфера в различном режиме, не знают который использовать".
При использовании diffg v:fname_in я не получаю "Буфера соответствия для v:fname_in".
Из vimdiff документации:
: [диапазон] diffg [и] [bufspec]
Измените текущий буфер для отмены различия с другим буфером. Если [bufspec] дан, тот буфер используется. Если [bufspec] относится к текущему буферу затем, ничего не происходит. Иначе это только работает, если существует еще один буфер в различном режиме.
и больше:
Когда 'diffexpr' не пуст, Vim оценивает для получения различного файла в упомянутом формате. Эти переменные установлены на используемые имена файлов:
v:fname_in исходный файл
v:fname_new новая версия того же файла
v:fname_out, заканчивающийся различный файл
Так, я должен получить название bufspec, но переменные по умолчанию (fname_in, fname_new, и fname_out) не установлены.
Я выполнил мерзавца команды mergetool на поле Linux через терминал.
[Редактируют] частичное решение, которое породило больше вопросов. Я использовал "имя файла" у основания буфера. Это - только половина ответа, потому что иногда я добираюсь, файл не существует ошибка. Я полагаю, что это последовательно - удаленная версия файла, который "не существует". Я подозреваю, что это имеет некоторое отношение к мерзавцу и индексации.
Как Вы последовательно получаете значение bufspec при использовании vimdiff через мерзавца-mergetool?
Приведенный выше аргумент [bufspec]
может быть номером буфера, шаблоном имени буфера или частью имени буфера. Примеры:
: diffget
Используйте другой буфер, который находится в режиме сравнения : diffget 3
Используйте буфер 3 : diffget v2
Используйте буфер, соответствующий v2
и находится в режиме сравнения
(например, file.c.v2
) Я всегда использую номер буфера.