3

У меня всегда работает Tmux с Vim внутри. Я хочу, чтобы текстовые файлы по умолчанию открывались в этом экземпляре Vim, а не в новом. Я предполагаю, что мне нужно как-то изменить текстовый редактор по умолчанию, как это определено в ~/.selected_editor.

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

Конечный результат будет соответствовать соглашению Vim об открытии всех файлов в одном экземпляре.

1 ответ1

4

То, что вы описываете как соглашение, в лучшем случае является почетной целью, но определенно не соглашением.

В Vimmers обычно есть один или несколько длительных сеансов для конкретного проекта с потенциально десятками буферов и кратковременных сеансов для быстрого редактирования. Идея состоит в том, чтобы хранить связанные буферы вместе и избегать смешения несвязанных проблем. Добавление буферов в длительный сеанс выполняется из самого Vim, а кратковременные экземпляры просто запускаются и заканчиваются без раздумий.

Таким образом, с точки зрения удобства использования то, что вы хотите сделать, не очень хорошая идея.

Но есть техническая сторона проблемы. Предположим, у вас есть Vim, созданный с помощью функции clientserver , вам придется попробовать это…

  • в одной панели / окне tmux:

    $ vim --servername TMUX
    
  • в другой панели / окне tmux:

    $ vim --serverlist
    
  • если вы видите сервер TMUX вы запустили в другой панели / окне:

    $ vim --servername TMUX --remote filename
    

    должен открыть filename в экземпляре TMUX .

  • если нет, вы просто не можете делать то, что хотите.

Смотрите :help clientserver .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .