Изменить рабочий каталог на текущий открытый файл - PullRequest
22 голосов
/ 03 октября 2010

Как я могу изменить свой рабочий каталог на путь к файлу, который у меня в данный момент открыт? * ** 1003 тысяча два * Пример

  1. текущий рабочий каталог $ HOME
  2. vim /tmp/test.log
  3. ???
  4. CWD теперь / tmp /

Ответы [ 3 ]

26 голосов
/ 03 октября 2010

Это на самом деле встроенный. (вот справочная ссылка )

:set autochdir

Вставьте это в свой .vimrc или еще много чего (:e $MYVIMRC). Как уже упоминалось здесь , иногда плагины могут иметь проблемы с этим, и вам нужно использовать что-то более сложное, например

autocmd BufEnter * lcd %:p:h
24 голосов
/ 03 октября 2010

Вы можете просто набрать

:cd %:h

, поскольку %:h будет заменено заголовком пути к текущему файлу.

2 голосов
/ 11 июня 2012

Чтобы перейти в каталог текущего открытого файла (это устанавливает текущий каталог для всех окон в Vim):

:cd %:p:h

Вы также можете изменить каталог только для текущего окна (каждое окно имеетлокальный текущий каталог, который может отличаться от глобального текущего каталога Vim):

:lcd %:p:h

В этих командах% дает имя текущего файла,%: p дает его полный путь, и%: p:h дает свой каталог («заголовок» полного пути).

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