当我使用它打开 gvim 时,Alt+F2
它会将我的主文件夹作为其默认工作目录。
如何在运行 gvim 之后或期间更改工作文件夹?打开gvim时我可以将该文件夹作为参数传递吗?
您可以使用快捷方式。
不过,最简单的方法是
:edit $MYVIMRC
追加一行
cd /home/user/my/work/dir
保存(可选执行:w|source %
以立即重新加载)
利用
:pwd
:cd some/other/dir
查看/更改当前工作目录。
使用例如
:cd %:h
切换到包含在活动窗口中加载的文件的目录。如果您需要/想要经常这样做,请考虑设置“autochdir”
:se autochdir
从文档:
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.
注意:当此选项在某些插件上时可能不起作用。
您可以将一个文件夹传递给您可以gvim
(当您有 NERDTree 时,它将是一个文件树)cd
在开始之前在您想要的目录中开始或使用:cd <path>
命令来更改当前工作目录,可以-c
在运行 Vim 时将其传递给 flag:
$ [g]vim -c 'cd <path>'
您还可以使用:pwd
命令检查当前目录。
您可以使用命令更改工作目录:cd
。您也可以在命令行选项中传递它,如下所示:
vim -c "cd wherever"
如果您希望工作目录始终是您当前正在编辑的文件,您可以使用该set autochdir
选项。把它放在你的 ~/.vimrc 中或查看:help autochdir
.
我知道我迟到了,但我开始使用CDargs这是一个 bash 工具来将某些目录标记为书签,然后使用cdb
并按 Tab 列出所有书签目录。
有一个与此工具的设置文件交互的 vim 插件:vim-cdargs。
这个组合非常适合我在项目之间切换。
或者打开 gvim 后快速转到某个书签文件夹,然后使用 Ctrl-p 插件快速找到我要编辑的文件。
额外提示:我什至不想输入 :Cdb 所以我缩写 c 通过将其添加到我的 vimrc 来扩展为 :Cdb:
cnoreabbrev c Cdb
之后键入:c
后跟一个空格,将扩展为:Cdb
.
编辑:我现在使用vim-startify,它为 vim 提供一个起始页,显示最近使用的文件。通过该选项let g:startify_change_to_vcs_root = 1
,它会将工作目录更改为您打开的文件的最外层 vcs 根文件夹。这几乎总是我想要的。
此外,我创建了自己的“插件”,其中包含一些键映射,这些映射将切换到当前缓冲区路径中最近或最远的目录,其中包含 .git 目录或文件。为了在当前 git 子模块或整个超级模块中搜索文件之间轻松切换。
此外,我使用fzf-vim而不是 Ctrl-p 切换到 fzf,它的工作速度明显更快,并且可配置性更高。