我是一个狂热的vim爱好者,但我找不到一种方法来让vim在打开文件时跟随符号链接。
举个例子,我家目录中所有的点文件都是符号链接到.zprezto目录中的:
.vimrc -> ~/.zprezto/runcoms/vimrc
.zshrc -> ~/.zprezto/runcoms/zshrc
我将我的.zprezto fork放在一个私人git仓库中,然后用它来同步我所有的Mac / Linux机器和服务器。每当我用vim编辑这些文件时,因为我调用vim ~/.zshrc
时使用的符号链接在git repo之外,所以我使用的所有git管理插件都无法正常工作。有没有办法强制vim跟随链接并打开实际文件,以便缓冲区位于git repo中?
尝试过这个:
function vim() {
local ISLINK=`readlink $1`
/usr/local/bin/vim ${ISLINK:-$1}
}
但是我希望它的效果更好,因为它限制了我只能处理一个文件而且没有选项可供选择。在编写一个可以考虑所有边缘情况的大型包装函数之前,我想知道是否有更明智的方法来完成这个任务。
vim ~/.zprezto/runcoms/zshrc
呢?另外,这个问答可能与您的问题有关(假设我正确地理解了您的问题):https://dev59.com/CUfRa4cB1Zd3GeqP6Ba1 - Dan Cornilescuvim ~/.zprezto/runcoms/zshrc
可以很好地运行,但是这些文件并不在所有机器上的该目录中,而符号链接位于所有机器上的~/.zshrc
上。这意味着我可以在使用此 git 存储库的任何计算机上运行vim ~/.zshrc
,仍然可以获取我想要的文件,而无需首先确定存储库在该计算机上的位置。 - James Dinsdale