#vim #terminal #editor #vi #nautilus
#vim #терминал #редактор #vi #наутилус
Вопрос:
Я открыл файл, дважды щелкнув по значку файла в браузере файлов (скажем, из nautilus). Файл откроется в vim, запущенном на терминале (скажем, в терминале gnome). Допустим, я снова попытаюсь открыть тот же файл, дважды щелкнув значок файла в браузере файлов. На этот раз vim, открытый в терминале, выдаст вам раздражающее сообщение об открытии файла в режиме только для чтения и т. Д.
Мне нужен метод для прямого просмотра более старого терминала gnome, когда файл в нем уже открыт. Другие редакторы на основе графического интерфейса (например, gedit) получили эти опции. Если таких доступных опций нет, я собираюсь использовать gvim, если у него есть такая функция.
Комментарии:
1. Я сомневаюсь, что в Vim есть такая опция, поскольку в нем нет редактора на основе графического интерфейса.
Ответ №1:
Vim имеет клиент-серверные возможности, которые можно использовать для этой цели. По умолчанию, когда вы открываете gvim
окно, запускается сервер. Имя сервера будет в строке заголовка, и по умолчанию первое GVIM
, второе GVIM2
, следующее GVIM3
и так далее.
Можно открыть файл в том же окне, вызвав vim
или gvim
с --remote
--remote-silent
помощью опций или (последний не выводит ошибку, если сервер отсутствует). Вы можете указать другой сервер, отличный от первого, используя --servername SERVER
.
Если ваша цель состоит в том, чтобы всегда использовать только один сеанс Vim, независимо от того, как вы вызываете программу, вы всегда можете использовать gvim
и настроить GNOME для открытия файлов gvim --remote-silent
, а также установить это в вашей конфигурации оболочки export EDITOR="gvim --remote-silent"
. Тогда вы всегда будете открываться в одном окне, независимо от того, что вы делаете.
Если вы хотите, чтобы в одном окне открывались только файлы в графическом интерфейсе, и продолжаете использовать Vim командной строки для других задач, то оставьте свою конфигурацию оболочки, указывающую на vim
и установите GNOME для открытия файлов gvim --remote-silent
, чтобы он открывал все файлы из графического gvim
интерфейса и оставлял ваши другие сеансы в покое.