2011-12-26 2 views
1

Есть ли способ редактировать один и тот же файл в двух разных окнах vim, и есть ли изменения в синхронизации между двумя?Синхронизация редактирования между двумя окнами Vim

Причина, по которой я хочу иметь два окна для одного и того же файла, так это то, что я могу одновременно просматривать две разные части и, возможно, редактировать их.

Фон: Я использую iTerm на Mac OSX для размещения нескольких окон. Эти вкладки vim запускаются отдельно, каждый раз вызывая vim [файл].

+1

Только тип: vsp глупый –

+0

У меня такое чувство, что babonk говорит о окнах графического интерфейса пользователя, типа с кнопками close/maximize/minim. Но я могу ошибаться. – romainl

+0

Добавлен некоторый фон – babonk

ответ

4

Vim делает это естественно, если вы используете встроенную поддержку окна. Используйте :help window, чтобы узнать больше (или посмотреть window documentation online). В двух словах:

^W^N create a new window 
^W^W switch between windows 
^W^C close a window 

Если открыть тот же файл в двух окнах, обновления будут отражены в каждом окне, как вы печатаете. Есть команды для разделения как по горизонтали, так и по вертикали, если вы предпочитаете.

0

Если я правильно понял, есть один из вариантов: scrollbind, который синхронизирует оба окна.

Открытые файлы в вертикальных окон:

vim -O file file 

и :set scrollbind в обоих окнах (или добавить его заранее в файл vimrc)

1

Вы можете сделать два отдельных Vim экземпляров разговаривать друг с другом с помощью Vim встроенного -in --servername, --remote-send и связанные с ним аргументы CLI, но для меня это не кажется действительно практичным.

Вместо этого вы должны использовать Vim, поскольку он был спроектирован: у него были разбитые окна перед тем, как iTerm или даже Mac OS X существовали, а остальные ответы здесь дают всю основную информацию о том, как использовать эту функцию.

Плюс, ваши две сессии Vim не делят регистры и макросы и т. Д.

Смежные вопросы