Change working directory to currently opened file

前端 未结 3 1128
甜味超标
甜味超标 2021-02-01 18:52

How can I change my working directory to the path of the file that I currently have open?

Example

  1. current working directory is $HOME
相关标签:
3条回答
  • 2021-02-01 19:00

    That's actually a builtin. (here's the help link)

    :set autochdir
    

    Stick that in your .vimrc or whatnot (:e $MYVIMRC). As mentioned here, sometimes plugins will have issues with that and you need to use something more complicated like

    autocmd BufEnter * lcd %:p:h
    
    0 讨论(0)
  • 2021-02-01 19:22

    To change to the directory of the currently open file (this sets the current directory for all windows in Vim):

    :cd %:p:h
    

    You can also change the directory only for the current window (each window has a local current directory that can be different from Vim's global current directory):

    :lcd %:p:h
    

    In these commands, % gives the name of the current file, %:p gives its full path, and %:p:h gives its directory (the "head" of the full path).

    0 讨论(0)
  • 2021-02-01 19:23

    You can just type

    :cd %:h
    

    since %:h will be replaced by the head of the path to the current file.

    0 讨论(0)
提交回复
热议问题