How to set working/current directory in Vim?

Solution 1:

As already suggested, you can use autochdir, which will change to the directory of the file you opened, the other option is

:cd mydirectory

which will change the directory. This can be an absolute or relative path, so :cd .. will move up one level. Or you can use :cd %:h which will also change to the directory the current file is in, but without setting autochdir.

:cd

will change directory to your home directory (or on windows, print the current directory).

:cd -

will change the directory to the previous directory you visited.

Solution 2:

Also if you are browsing the filesystem with the netrw file explorer you can set the current directory by pressing the c key.

Solution 3:

Try adding set autochdir to your .vimrc. If you want to change it just this once, use :cd (or :cd! to force it).

Solution 4:

I don't know what is wrong with vim. I want the directory where I start up vim as the current.

I have followed the tip about autochd above and set that to noautcd in my .vimrc.

I haven't done it yet, but I am about to start up vim like this from now on:

vim —cmd 'cd `pwd`'

That will make it stick to the current directory!