我是一个mac用户,认真对待vim.我用过的大多数GUI编辑器都允许我通过执行如下命令来打开目录作为"项目":
编辑〜/ www/example.com /
vim等价物vim ~/www/example.com/
将显示目录中的文件列表,我可以打开它们.但它没有将vim的工作目录设置为该路径,我必须运行:cd .
以设置工作目录.
有没有办法,也许有一个shell脚本,打开vim并将它的工作目录设置为给定的路径?
我实际上正在使用MacVim,如果这有任何区别的话.
感谢@ sehe的建议,我想出了这个.不确定它是否是最佳解决方案,但似乎有效.
#!/bin/bash
if [ "$#" -eq 1 ];then # is there a path argument?
if test -d $1;then # open directory in vim
vim $1 +':cd %'
else # open file in vim
vim $1 +':cd %:h'
fi
else # no path argument, just open vim
vim
fi
Run Code Online (Sandbox Code Playgroud)
脑死亡:
(cd /path/to/dir && vim file)
Run Code Online (Sandbox Code Playgroud)
不那么:
vim /path/to/dir/file +':cd %:h'
Run Code Online (Sandbox Code Playgroud)
你可以随时映射:cd %:h
到一个方便的键或放入自动命令(我实际上不会推荐后者,但没有关于品味的争论)
哦,对于目录而不是文件:
:cd %
Run Code Online (Sandbox Code Playgroud)
够了