Работа с vim на нескольких мониторах - PullRequest
22 голосов
/ 22 октября 2010

У меня три монитора.

Обычно я запускаю по одному максимизированному xterm на каждом мониторе, подключенном к одному и тому же экрану GNU * сеанс 1004 *.

Можно ли использовать аналогичную модельдля Вим?Можно ли запустить три vims, все они совместно используют один и тот же «сеанс vim»:

  • В каждом окне vim отображается отдельная вкладка vim
  • настройки vim, общие для всех окон
  • Не получается "Файл подкачки ... уже существует!"сообщение об ошибке, если я открываю один и тот же файл на двух вкладках.

Ответы [ 4 ]

14 голосов
/ 28 октября 2010

У меня есть рабочее решение, где два экземпляра vim связываются.

http://github.com/codeape2/vim-multiple-monitors

Он использует autocmd SwapExists, чтобы указать другому экземпляру открыть файл, если обнаружен существующий файл подкачки.

5 голосов
/ 28 октября 2010

Вы можете использовать vim под screen.

$ screen
$ vim

# on another terminal 
$ screen -x
# the same vim screen

Если ваш эмулятор терминала поддерживает вкладки (например, gnome-терминал), вы можете использовать его как вкладки (IMHO, поддержка вкладок gnome-Terminal лучше, чем у vim, за исключением, возможно, вы не можетекопирование и вставка между различными сеансами vim, однако вместо этого вы можете использовать системный буфер копирования и вставки: "+ y и" + p).

Это не работает, если вы используете gvim.

3 голосов
/ 22 октября 2010

Нет, экземпляр Vim ограничен одним окном приложения на вашем рабочем столе.Различные экземпляры Vim имеют независимые сеансы.

Кроме того, имейте в виду, что если вы открываете один и тот же файл в двух разных экземплярах Vim, вы получаете не только сообщение «Файл подкачки существует», но и два экземпляра.не делить буфер, поэтому изменения, сделанные в одном, не зависят от другого.

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

2 голосов
/ 19 июня 2015

Neovim - это проект, целью которого является предоставление функции подключения / отключения vim, такой как tmux.Эта функция еще не реализована (19 июня 2015 г.), но она может появиться в ближайшее время.

Существует множество других основных функций этого проекта, которые вы можете увидеть на neovim.io.

...