96

If I open a file with vim dir/to/my/file.c how can I easily open the directory dir/to/my in vim's filebrowser?

10 Answers 10

119

Try :Ex[plore]. From :help Ex:

:Explore will open the local-directory browser on the current file's directory (or on directory [dir] if specified). The window will be split only if the file has been modified, otherwise the browsing window will take over that window. Normally the splitting is taken horizontally.

| improve this answer | |
84

I personally prefer the:

:Sex

command. It does the split window for you, and drops you into the current directory.

:Sex dir/to/my

works too.

| improve this answer | |
  • 102
    This is good but the command is so hard to remember. – Gavin Jun 9 '13 at 20:24
  • 17
    You can also use :Vex to open the directory in a vertical split. – Chuan Ma Jun 25 '14 at 16:56
  • 3
    Vex and Sex are beautiful, that's exactly what I'm looking for online, thank you! – Zen Oct 10 '14 at 13:13
  • 3
    And it turns out that Tex was exactly what I was looking for (rather than tabe.) – SpoonMeiser Apr 28 '16 at 13:42
  • 4
    Welp, there goes my virginity. – Mateen Ulhaq Nov 8 '17 at 8:08
19

You could use:

:e %:h

More info on expansions is here: http://vimdoc.sourceforge.net/htmldoc/eval.html#expand()

| improve this answer | |
10

As already mentioned, you can just do ":Explore" and it will open the file explorer for the directory of the current file.

However, if you need to explicitly specify the directory, you can use ctrl+r on the :-command line to read the contents of any register in, and the % register is the current filename, including a path if necessary. So, just do :e ctrl+r% then backspace over the filename, and press enter.

There are other ways to do it, but this is the method I usually use.

| improve this answer | |
  • 7
    I know this is way old, but you can also do :e %[tab] which will expand % for you. – Brian Dec 7 '11 at 15:20
5

For opening Windows Explorer showing current file's directory :

:!start explorer /select,%:p

(Source : http://vim.wikia.com/wiki/Open_Windows_Explorer_showing_directory_of_current_buffer )

| improve this answer | |
2
:e `dirname %`

dirname expands to the directory in which current file is.

| improve this answer | |
1

:e dir/to/my/

:e . opens the directory you initially launched vim from.

Vim browser 'c' sets the working directory.

I'm not sure if there is a way to automatically jump to the directory of the file you are editing.

| improve this answer | |
1

If you edit with the pwd command on unix it will open the current directory you are in.

:e `pwd`

This will not work like you want it if you did a cd while in vim.

| improve this answer | |
0

if you want to actually get a shell in it you'll need to :lcd %:p:h run :shell and then restore the working directory after you've exited

| improve this answer | |
0

Just :E should do it. Tested on neovim.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.