вимдифф и маквим

Я хочу запустить vimdiff на MacVim. Есть ли простой способ, которым я смогу это сделать?


person Antonio    schedule 28.10.2009    source источник


Ответы (4)


  • Из терминала

Если у вас установлен скрипт mvim (он находится в dmg, просто поместите его куда-нибудь в свой PATH), вы можете просто набрать в оболочке:

mvim -d file1 file2

Вы можете использовать псевдоним mvimdiff, если хотите.

  • Изнутри маквима

В macvim, как и в vim, вы также можете использовать:

:e file1
:diffsplit file2
or
:vert diffsplit file2

Второй вариант дает вам вертикальный diff, который обычно более удобочитаем.

person LeMiz    schedule 28.10.2009
comment
Ага! Спасибо за подсказку в vim. Кажется, что в vim всегда есть чему поучиться: D - person Antonio; 28.10.2009
comment
Можно ли сравнить другой буфер вместо файла? - person Yarek T; 12.01.2011

Если вы создадите символическую ссылку gvimdiff на mvim, тогда mvim будет начинаться с -d и т. д. Vim и Mvim смотрят, с каким именем исполняемого файла они были запущены, чтобы определить, как они себя ведут. Вот как gvim и vim могут быть одним и тем же исполняемым файлом в Linux и одинаковым в OSX.

person Benj    schedule 28.10.2009
comment
Это не сработало для меня. Я получил эту ошибку: инструмент сравнения gvimdiff недоступен как «gvim». - person Raffi Khatchadourian; 08.11.2011
comment
@Raffi - Многое может измениться за 2 года, в то время это был хороший совет. - person Benj; 08.11.2011
comment
@Benj А, я не заметил дату :). Любые идеи о том, как это сделать? - person Raffi Khatchadourian; 09.11.2011
comment
@R --- vimdiff file1.txt file2.txt работает (если вы запускаете его из терминала, а не MacVim а-ля OP). Я думаю, что он там по умолчанию. Я обычно использую MacVim, но перейду к термину, чтобы сравнить его с vim. Это VIm, поэтому терминация не имеет большого значения, верно? ;^) - person ruffin; 23.03.2012
comment
Для MacVim вы хотите создать символическую ссылку на mvimdiff. Находясь в MacVim, введите :help mvim для получения более подробной информации. - person Neil Mendoza; 14.03.2013

Ok. Я как бы ответил на свой комментарий:

Чтобы сравнить два открытых буфера в vim, откройте их вертикально, выберите первый и введите :diffthis, затем второй и снова введите :diffthis.

Это работает и для более чем двух буферов =)

person Yarek T    schedule 13.01.2011
comment
Это хороший совет. Спасибо :) - person Manish; 24.03.2014

Это сработало для меня на 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
person user674669    schedule 14.08.2015