VIM открыть файл изнутри: команда оболочки - PullRequest
2 голосов
/ 30 марта 2010

Допустим, я выдаю команду оболочки из-под VI. Затем я перехожу в каталог и решаю, что мне нужно отредактировать файл foo.txt, который я там вижу. Есть ли способ вернуться обратно в vi из оболочки и открыть foo.txt для редактирования

Ответы [ 2 ]

4 голосов
/ 30 марта 2010

При соблюдении следующих условий есть способ достичь того, чего вы хотите.

  • Vim построен с +clientserver. Вы можете проверить это с помощью :echo has('clientserver').

  • Вы находитесь в среде, которая может и правильно настроена для связи с X-сервером.

  • Вы используете параметр --servername и соответствующий аргумент для него при запуске Vim.

В этом случае вы можете использовать опцию - remote для Vim.

Примером сеанса будет:

vim --servername foo somefile.txt
:shell
<do stuff in your shell>
vim --servername foo --remote otherfile.txt
fg
2 голосов
/ 30 марта 2010

В вашем вопросе написано vi, а в вашем теге - vim. Я не знаю, как заставить вызываемую вами оболочку обратиться к родительскому окну Vim, но в случае, если следующее все равно сделает то, что вы хотите:

:E вызывает навигатор файловой системы Vim. :help netrw дает больше информации об этом. Оттуда вы можете перемещаться по файловой системе, пока не найдете нужный файл, нажмите Enter и начните его редактирование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...