I recently installed vim on Windows 7 as a stand-alone binary.

Where should I put my .vimrc file?


8 Answers 8


From the Vim Wiki.

In Vim, your home directory is specified with $HOME. On Unix systems, this is your ~ directory. On Windows systems, the best way to find the value of $HOME is from within Vim, as follows. These commands are useful to see what directories your Vim is using:

:echo expand('~')
:echo $HOME
:echo $VIM

Once you determine the HOME variable put the vimrc file within that directory.

If you would like to change your HOME variable, set HOME as an environment variable for either the system or user.

Computer > Properties > Advanced System Settings > Advanced > Environment Variables > User | System Variables.

Windows (both Native and Cygwin*) will use _gvimrc, .gvimrc, _vimrc and .vimrc in that order of priority. The gvim* files will be checked with the gvim process, while the console vim will only check the vim* files.

*: verified against vim 7.2 and 7.3

  • 3
    (For those like me, who only use Windows when forced to): remember to enable showing file extensions. "_gvimrc.txt" etc. doesn't work. ;) Dec 11, 2014 at 17:02
  • To have HOME match the behavior of Unix systems, I'd create a global environmental variable of %USERPROFILE% if that's not already done.
    – Pluto
    Aug 25, 2015 at 21:02
  • It is good to look in each directory listed in the answer because my _vimrc is in $ VIM. Although, the _vimrc is read only file.
    – Cloud Cho
    Jun 18, 2021 at 18:30

For Vim 7.4, these are the paths it looks for on Windows

   system vimrc file: "$VIM\vimrc"
     user vimrc file: "$HOME\_vimrc"
 2nd user vimrc file: "$HOME\vimfiles\vimrc"
 3rd user vimrc file: "$VIM\_vimrc"
      user exrc file: "$HOME\_exrc"
  2nd user exrc file: "$VIM\_exrc"
  system gvimrc file: "$VIM\gvimrc"
    user gvimrc file: "$HOME\_gvimrc"
2nd user gvimrc file: "$HOME\vimfiles\gvimrc"
3rd user gvimrc file: "$VIM\_gvimrc"
    system menu file: "$VIMRUNTIME\menu.vim"

As Darren Hall said, use these commands to find out the values of $VIM and $HOME.

:echo $HOME
:echo $VIM

For example, one good place for gvim-specific settings would be


Easiest way I found is to simply echo the location of the vimrc file currently in use - you can then replace with your own custom version.

:echo $MYVIMRC

If you need to find out just from a .bat file first look in the %HOME% directory. If that is not defined then vim/gvim looks in the path defined by concatenating %HOMEDRIVE% and %HOMEPATH%.


That is actually a good question because after installation (oddly enough) you get a _vimrc file under "Program Files" - which is not a good place for configuration files.

Put it under


This way it will be picked up instead of the configuration file put by the installation.

  • When I run :version from VIM, the two options that appear (most similar to what your answer is) are: "$HOME\_vimrc" and "$HOME\vimfiles\vimrc", but not _vimrc within the vimfiles folder.
    – CJBS
    Jun 22, 2020 at 21:17

I found that vim-tux installed via Chocolatey can see .vimrc files only under C:\Users\MyUsername\vimfiles though :version tells that C:\Users\MyUsername also included.


I find that when I open gvim from Windows file explorer, $HOME is set to c:\Users\myname but when launched from my Cygwin file explorer it is set to /cygwin/home/myname. This is good because it lets me put slightly different settings in each one. To keep things separate and make backup easier, the Windows one is called _vimrc and the Cygwin one is called .vimrc.


I found it in ( windows 10 )


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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