команда vim после cd - PullRequest
       12

команда vim после cd

2 голосов
/ 21 января 2010

Я хочу выполнить команду автоматически после перехода в новый каталог из vim. Например, я открываю gvim и запускаю:

:cd ~/src/player

В этот момент я бы хотел, чтобы vim автоматически искал файл, который находится в этом каталоге.

Возможно ли это?

Ответы [ 2 ]

4 голосов
/ 22 января 2010

Вы можете написать псевдоним для этого в вашем .vimrc:

command -nargs=1 Mycd call MyCd(<args>)
function MyCd(path)
  cd a:path
  e somefile.ext
endfunction

Тогда просто наберите:

:Mycd /some/path/
0 голосов
/ 22 января 2010

Не совсем то, что вы просите, но

<a href="http://vimdoc.sourceforge.net/htmldoc/autocmd.html#:au" rel="nofollow noreferrer">:au</a> <a href="http://vimdoc.sourceforge.net/htmldoc/autocmd.html#BufEnter" rel="nofollow noreferrer">BufEnter</a>,<a href="http://vimdoc.sourceforge.net/htmldoc/autocmd.html#BufFilePost" rel="nofollow noreferrer">BufFilePost</a> * <a href="http://vimdoc.sourceforge.net/htmldoc/editing.html#:lc" rel="nofollow noreferrer">lc</a> <a href="http://vimdoc.sourceforge.net/htmldoc/cmdline.html#<afile>" rel="nofollow noreferrer"><afile></a><a href="http://vimdoc.sourceforge.net/htmldoc/cmdline.html#::h" rel="nofollow noreferrer">:h</a>

сделает так, чтобы при каждом открытии нового файла (например, с помощью :e ~/src/player/README) вы автоматически меняли каталоги на ~/src/player. Если вы откроете несколько буферов, при переключении между ними вы перейдете в каталог, содержащий локальный буфер, а если вы откроете несколько вкладок, они останутся в соответствующих каталогах.

...