vim可以设置相对于其当前工作目录的路径吗?

时间:2014-04-29 16:09:30

标签: vim

我使用:find命令查找vim中的文件。我的路径设置如下:

set path=$PWD/**

这很有效,直到我使用:Explorec映射来更新CWD,此时PWD和CWD不再相同。我需要在每次目录更改后再次设置路径。有没有人有解决这个问题的方法?

P.S。

不允许使用插件= p

2 个答案:

答案 0 :(得分:4)

您可以使用以下命令将'path'选项更新为CWD。

let &path = getcwd() . '/**'

不幸的是,没有关于目录更改的事件。你可以:

  1. 使用c
  2. 覆盖 netrw 窗口中提到的:autocmd FileType netrw nnoremap <buffer> c ...映射
  3. 陷入频繁发生的一些事件,例如: :autocmd WinEnter,CursorHold ...然后调用上面的命令。

答案 1 :(得分:2)

我认为您需要设置autochdir

'autochdir' 'acd'   boolean (default off)
            global
            {not in Vi}
            {only available when compiled with it, use
            exists("+autochdir") to check}
    When on, Vim will change the current working directory whenever you
    open a file, switch buffers, delete a buffer or open/close a window.
    It will change to the directory containing the file which was opened
    or selected.
    This option is provided for backward compatibility with the Vim
    released with Sun ONE Studio 4 Enterprise Edition.
    Note: When this option is on some plugins may not work.

但如果您使用netrwfugitive,那么这就是错误的。