vimdiff в cygwin не работает должным образом
Когда я сравнивал два файла с vimdiff в моем cygwin,
vimdiff a.c b.c
все линии были сложены (как показано ниже)
Тогда я использовал zR
открыть все папки, но никакой разницы не было показано.
Еще одна странная вещь: когда я начинаю добавлять новую строку (КНОПКА o), она начинает показывать разницу:
Я обнаружил, что мой vimdiff
на самом деле ссылка на gvim
не уверен, если это проблема?
$ type diff
diff is /cygdrive/c/Program Files (x86)/Vim/vim72/diff
$ type vimdiff
vimdiff is /usr/bin/vimdiff
$ ll /usr/bin/vimdiff
lrwxrwxrwx 1 dhuang7 Domain Users 25 Jul 27 16:35 /usr/bin/vimdiff -> /etc/alternatives/vimdiff
$ ll /etc/alternatives/vimdiff
lrwxrwxrwx 1 dhuang7 Domain Users 17 Jul 27 16:35 /etc/alternatives/vimdiff -> /usr/bin/gvim.exe
$ ll /usr/bin/gvim.exe
-rwxr-xr-x 1 dhuang7 Domain Users 1801245 Jun 28 12:39 /usr/bin/gvim.exe
Кстати нет .vimrc
когда это было запущено. И я пытался добавить set diffopt=filler,context:50
в мой .vimrc
но все тот же.
Пытался :messages
после запуска vimdiff, но ошибки не было замечено:
"a.c" 7L, 74C
"b.c" 6L, 59C
2 ответа
У меня точно такая же проблема. Я заметил следующую ошибку после выполнения:diffupdate
/bin/bash: /usr/share/vim/vim73diff: No such file or directory
Этот файл, очевидно, не существует, поэтому я подозреваю, что @Heptite правильно сказал, что vi не может найти двоичный файл diff. diff.exe уже был в моем PATH, хотя, поэтому я запутался в этом. Тем не менее, символические ссылки, кажется, решить проблему.
ln -s /usr/bin/diff /usr/share/vim/vim73diff
Ужасно, но я снова работаю.
У меня просто была такая же проблема и бег :diffupdate
возвращенный E97: Cannot create diffs
Решение: мое /tmp
раздел был полон. diff
Внутренняя команда, запущенная vim, не смогла сохранить результат. Просто убрал это и все снова заработало.