Возьмите разницу двух вертикальных открытых окон в Vim


У меня есть два открытых файла. Они открываются в вертикальном режиме, рядом с next. Могу ли я мгновенно различать эти два файла, не выходя и не закрывая Vim ?

4 66

4 ответа:

чтобы начать различать на всех видимых окнах:

:windo diffthis

, который выполняет :diffthis на каждое окно.

для завершения режима diff:

:diffoff!

(The ! делает diffoff применить ко всем окнам текущей вкладки - было бы неплохо, если diffthis имел ту же функцию, но это не так.)

в каждом из окон вы хотите дифф типа:

:diffthis

Если вы хотите различать все открытые окна, вы можете сделать:

:windo diffthis

(windo применит команду ко всем открытым окнам)

следуя более ранним ответам,

  • :windo difft (сокращенно diffthis) запустится режим diff во всех открытых окнах.
  • :windo diffo (сокращенно diffoff) остановит режим diff во всех открытых окнах.

у меня есть следующие сопоставления в мой vimrc чтобы было проще:

command! Difft windo diffthis
command! Diffo windo diffoff

следуя более ранним ответам, я адаптировал отображение, предоставленное @cxw следующее отображение автоматически закрывает NERDTree и различает открытые окна. Это не имеет значения, если NERDTree близко, он работает так же. Я делаю это довольно часто, так что это сэкономило мне довольно много времени.

command! Difft NERDTreeClose | windo diffthis