vim设置一个默认文件夹来存储所有txt文件,怎么样?

时间:2010-12-04 19:14:32

标签: vim save default directory

我想设置它,以便在我编写文本文件并保存时 - 它会保存到名为TEXT的默认文件夹中,该文件夹将位于我的主Vim文件夹中,例如。 C:\ Program Files \ Vim \ vim73 \ TEXT

此时它们默认保存在与其他所有内容混合的vim73文件夹中。 所以,如果我输入:W ^ M文件将保存在那里,我希望它转到名为TEXT

的文件夹

4 个答案:

答案 0 :(得分:9)

保存文件时,vim会将其默认为当前工作目录。您可以使用命令:pwd来验证这一点。要更改它,您可以使用:cd SomeDirectoryPath

您还可以将cd命令添加到.vimrc(或Windows的等效命令),以便在每次启动vim时自动更改当前目录。

答案 1 :(得分:3)

另一种可能的方法是使用autocmd拦截写入过程,写入事件,可能是BufWriteCmd。让autocmd函数检查文件是否具有.txt扩展名(或您使用的任何内容)并绕过正常的写入过程以保存/无论您想要的位置。对于文档,请参阅:

:h BufWriteCmd

这里有一些你可以放在vimrc中的代码,没有经过彻底的测试,以确保行为正是你想要的,但它确实起作用:

function! WriteTextFile()
    execute 'write! c:\text\'.expand("%:p:t")
    set nomodified
endfunction
au BufWriteCmd *.txt call WriteTextFile()

答案 2 :(得分:0)

正如GWW所提到的,您可以向_vimrc文件添加cd命令。我找到了使用难以找到的正确格式。路径不能用引号括起来,空格必须用反斜杠转义,反斜杠不应转义,路径必须以反斜杠结尾。这是一个例子:

cd C:\Documents\ and\ Settings\someUser\

我希望这会有所帮助。

答案 3 :(得分:-1)

您可以使用缩写,如果执行:w它会自动更改为下面的文本,我认为这可能会对您有所帮助。

cnorea w w! "C:\Program Files\Vim\vim73\TEXT"