Вопрос
Я бы хотел запустить vimdiff в MacVim.Есть ли простой способ, которым я мог бы это сделать?
Решение
- Из терминала
Если у вас есть mvim
установленный скрипт (он есть в dmg, просто поместите его куда-нибудь в свой PATH
), вы можете просто ввести текст в оболочке:
mvim -d file1 file2
Вы можете переименовать это в mvimdiff, если хотите.
- Изнутри macvim
В macvim, как и в vim, вы также можете использовать:
:e file1 :diffsplit file2 or :vert diffsplit file2
Второй вариант дает вам вертикальный дифф, который обычно более удобочитаем
Другие советы
Если вы сделаете символическую ссылку gvimdiff на mvim, mvim начнёт с -d и т. д. Vim и Mvim оба посмотрят, с каким исполняемым именем они были запущены, чтобы определить, как они себя ведут. Таким образом, gvim и vim могут быть одинаковыми исполняемыми файлами в Linux и одинаковыми в OSX.
ОК.Я как бы ответил на свой собственный комментарий:
Чтобы различить два открытых буфера в vim, откройте их вертикально, выберите первый и введите :diffthis
затем второй и введите :diffthis
снова.
Это работает и для более чем двух буферов =)
Это сработало для меня на Mac. Я использую снимок MacVim 72:
/Applications/MacVim.app/Contents/MacOS/Vim -d -g path_to_file1 path_to_file2
Он работает точно так же, как gvimdiff в Windows.
Обновление: работает даже с 3 файлами. Эта команда разделит экран на 3 части и позволит вам выполнить 3-стороннее сравнение в macvim:
/Applications/MacVim.app/Contents/MacOS/Vim -d -g path_to_file1 path_to_file2 path_to_file3