linux – .vim脚本/插件/ whatelse中的.vimrc绝对路径或相对路径
我实际上有以下情况,那就是实际工作:
想象一下,你必须以root身份在一个文件上工作,但你想要自己的.vimrc,而不需要调用“-u”. let g:realuser=system('w | grep $(ps w | grep ' . getpid() . ' | head -n1 | awk "{ print $2 }") | awk "{ print $1 }"') if $USER == 'root' let g:vimrc=system('printf /home/%s/.vimrc '. g:realuser) if filereadable(g:vimrc) exec ":source " . g:vimrc finish endif endif 我把它称为“realuser.vim”,并在root的.vimrc(/root/.vimrc)中“源”它. 如果您现在通过SSH或通过Gnome在ubuntu上登录您的服务器,您可以“su – ”并以root用户身份登录.然后你切换到你的工作目录并打开文件. 我的问题是,在/home/yourlogin/.vimrc中是以下行: source ~/.vim/plugin/someplugin.vim 所以猜猜是什么. /root/.vimrc加载/home/yourlogin/.vimrc,因此检入/root/.vim/plugin/someplugin.vim,这是不存在的,因为它只在/home/yourlogin/.vim中 我怎样才能使用相对路径或类似的东西告诉vim源文件只在/home/yourlogin/.vim/? 解决方法
相对等效于:source是:runtime.
source ~/.vim/plugin/someplugin.vim 变 runtime plugin/someplugin.vim 有了这个,只要你还调整’runtimepath’选项中的路径,它应该工作. 或者,您也可以在Vim中更改$HOME的值;这也影响了?的扩展: :let $HOME = '/home/yourlogin' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |