vi / vim Auto complete File Name While Editing Files

by on April 14, 2008 · 6 comments· LAST UPDATED May 14, 2008

in , ,

Q. I use vi / vim as IDE (Integrated development environment) a software development system using Ubuntu Linux. How do I auto complete file name under vim / vi text editor while editing text file or java / c / python program? I can auto complete file nameunder bash shell by hitting [TAB] key.

A. Yes, it is quite frustrating when you are not able to open files immediately. There is no need to add any special command for this task. All you have to do is press [Tab] key to complete directory or file names just like bash command. For example, while coding html file, if you would like to open email.php, just type following (ESC + : + em + hit [TAB] key):
:e em[TAB]
To auto complete directory name again hit [TAB]:
:cd /e[tab]
For further information see help page, by typing following command:
:help path
This works with vim version 6.1 and above. If you are using old version add following to your ~/.vimrc file:
map ,e :e <C-R>=expand("%:p:h") . "/" <CR>
Save and close the file. Then when you type ,e in normal mode you can use tab to complete to the file.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 6 comments… read them below or add one }

1 Frazer Kirkman January 31, 2009 at 12:09 pm

thanks for the tip.

its also worth mentioning that
set nocompatible
will make this work.

Not sure what versions this is apllicable to

Reply

2 rc3 November 9, 2009 at 3:12 am

Nice tips. Thanks and keep up with the good works.

Reply

3 joce September 21, 2011 at 1:33 pm

I believe the question was about doing it in EDIT mode, when you type e.g.

#include “mycppheader.h”

and you want auto-completion of this.

It is possible in vim, check e.g. http://www.vim.org/scripts/script.php?script_id=169

Reply

4 joce September 21, 2011 at 1:44 pm

found it.
Ctrl-X Ctrl-F will complete a filename.

Reply

5 gpgdx November 21, 2011 at 8:38 am

Exactly what I was looking for… great!

Reply

6 sai April 23, 2014 at 10:11 am

Thanks. This is what I was looking for. I think just Ctrl+F will work.

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , ,

Previous Faq:

Next Faq: