【发布时间】:2014-10-07 11:00:38
【问题描述】:
我开始使用 vim 来编辑我的 python 代码,我希望 vim 根据不同的后缀(如 '.py')将代码保存在不同的文件夹下。
所以,我将它添加到我的 gvimrc 文件中(我确实在使用 MacVim,但同样的问题出现在 vim 上)
au BufWritePre *.py :cd /Users/username/Documents/folder
我认为每次保存以“.py”结尾的代码之前,都会将工作目录更改为 /Users/username/Documents/folder。
当我进入 MacVim 时,打开一个新文件,输入类似的内容
print("Hello")
并保存它
:w hello_world.py
一个名为 hello_world.py 的文件出现在 /Users/username/Documents/folder 中,因为我希望。 vim 中的 ":pwd" 命令也返回 "/Users/username/Documents/folder"。但是当我在 vim 中检查 hello_world.py 的文件名时,
:!echo %
返回
/Users/username/hello_world.py
而不是预期的文件名
/Users/username/Documents/folder/hello_world.py # expected filename
此外,当我尝试升级代码时
print("Hello")
print("World")
并保存它
:w
hello_world.py 中的内容在 /Users/username/Documents/folder 下保持不变。 但是/Users/username中出现了一个新的同名hello_world.py文件,是一致的使用 vim 中的文件名。
我猜我在 gvimrc 中的 autocmd 脚本在保存 '.py' 文件之前确实更改了工作目录,但我试图弄清楚为什么文件名与工作目录不一致以及如何保存我的 '.py ' 文件到特定文件夹中。
【问题讨论】: