Как установить рабочий / текущий каталог в Vim? - PullRequest
97 голосов
/ 18 февраля 2010

Поэтому, когда я хочу создать новый файл с помощью команды: e, я не хочу указывать весь путь, только новое имя файла. Можно ли это сделать?

Ответы [ 6 ]

129 голосов
/ 18 февраля 2010

Как уже предлагалось, вы можете использовать autochdir, который изменит каталог на файл, который вы открыли, другой параметр -

:cd mydirectory

, который изменит каталог.Это может быть абсолютный или относительный путь, поэтому :cd .. переместится на один уровень вверх.Или вы можете использовать :cd %:h, который также изменит каталог, в котором находится текущий файл, но без установки autochdir.

:cd

изменит каталог на ваш домашний каталог (или в windows напечатайте текущий каталог).

:cd -

изменит каталог на предыдущий каталог, который вы посетили.

13 голосов
/ 18 февраля 2010

Также, если вы просматриваете файловую систему с помощью проводника файлов netrw, вы можете установить текущий каталог, нажав клавишу c.

8 голосов
/ 18 февраля 2010

Попробуйте добавить set autochdir к вашему .vimrc. Если вы хотите изменить его только один раз, используйте :cd (или :cd! для принудительного ввода).

1 голос
/ 23 января 2015

Добавление этого к моему .vimrc автоматически меняет рабочий каталог Vim на текущий файл:

autocmd BufEnter * silent! :lcd%:p:h
1 голос
/ 23 января 2013

Я не знаю, что не так с vim. Я хочу каталог, где я запускаю Vim в качестве текущего.

Я следовал совету об autochd выше и установил его в noautcd в моем .vimrc.

Я еще не сделал этого, но теперь я собираюсь запустить vim следующим образом:

vim —cmd 'cd `pwd`'

Это сделает его привязанным к текущему каталогу!

1 голос
/ 11 июля 2011

С помощью netrw: в дополнение к нажатию клавиши c для установки текущего каталога вы также можете ввести:

let g:netrw_keepdir= 0

в вашем .vimrc; это означает, что netrw сохранит каталог просмотра таким же, как текущий каталог.

...