0

由于我的配置,vim 将交换文件存储在与编辑文件相同的目录中。一般来说,这是可以的,但不在文件夹中~/ftp_mount(以及下面的所有目录)。在这个目录中,我挂载了一个 ftp 服务器。

:set dir=/一些/路径

可以更改 vim 存储交换文件的位置(vim 文档)。是否可以将此配置限制为~/ftp_mount以下所有目录?

4

2 回答 2

1

禁用交换文件,设置目录并重新启用它似乎有效:

  autocmd BufNewFile,BufReadPre *
        \ setl noswapfile noundofile |
        \ if expand('%:p') =~ "/my/custom/path" |
        \   setl undodir=. directory=. |
        \ else |
        \   setl undodir=~/.cache/nvim/undo directory=~/.cache/nvim/swap |
        \ endif |
        \ setl swapfile undofile

我正在匹配*,而不是特别是我的路径,因为如果我希望它能够工作:

  1. 在我的自定义路径下打开一个文件。
  2. 从其他地方加载一个新文件。
于 2020-09-27T23:42:03.943 回答
-2

如何在要将此设置应用于 ( ~/ftp_mount)的目录上使用 autocmd

autocmd BufNewFile,BufRead ~/ftp_mount/* set dir=/some/path
于 2014-08-31T18:57:39.677 回答