时间:2011-01-06 18:08:23

标签: vim

9 个答案:

答案 0 :(得分:24)

答案 1 :(得分:24)

答案 2 :(得分:6)

答案 3 :(得分:6)

使用不带插件的备用.vimrc文件,并在.bash_profile中添加别名。

alias svim='vim -u ~/.vimrc_simple'

我真的更喜欢以下内容:

alias vvim='vim -u ~/.vimrc_vundle'

为了将vim保留为轻量级命令,因为插件加载似乎会减慢程序实例化。

答案 4 :(得分:4)

答案 5 :(得分:2)

我假设您的初始所有者拥有您的tty。如果是这样,您可以通过以下方式获取初始用户身份:

stat -c'%U' `tty`

通过将自定义的根.vimrc放在/root/.vimrc.$USRNAME中,您可以保留一个相当安全的自定义vimrc文件。你也可以做其他事情,但我把它留给你的想象力。

方法1 - 将其放入/root/.bashrc&吸烟吧:

# Source a custome vimrc if it exists
mytty=`tty`
initial_user=`stat -c'%U' $mytty`
custom_vimrc="/root/.vimrc.$initial_user"
if [ -f $custom_vimrc ]; then
    export VIMINIT="source $custom_vimrc"
fi

方法2 - 在/root/.vimrc中添加类似的东西(更好的解决方案,因为你可以使用ksh)。

如果有人能弄清楚方法2,我会欢迎这篇文章。我缺乏动力。

答案 6 :(得分:1)

就个人而言,我只是将Root的.vimrc符号链接到我的。从BASH(作为根):

ln -s /home/<me>/.vimrc /root/.vimrc

但你需要注意其中的内容。

答案 7 :(得分:0)

方法2 - 作为.vimrc的补充

尝试了不同的事情 tty不起作用,system("who am i")也不起作用(当它们从vim函数中使用时它们会变空),所以这种方式要长得多。欢迎任何快捷方式

"Local .vimrc for the user
" 1. get the user, which used su
" 2. we can load his .vimrc.<user>
" from $HOME (from where we have sudo'ed in)
let b:term = substitute( system ("ps T | grep ' ps T$' | sed -e 's/^  *//' | cut -d ' ' -f 2 "), "\n", "", "" )
let b:user = substitute( system ("who | grep ".b:term." | cut -d ' ' -f 1 "), "\n", "", "" )
let b:file = $HOME."/.vimrc.".b:user
if filereadable(b:file)
  execute 'source '.b:file
endif

答案 8 :(得分:0)

我在几年前创建了一个插件,因为我想在我们的服务器上使用自己的.vimrc而不强迫任何使用sudo的用户以root用户身份导航到我的.vimrc

我的插件与@ULick提供的插件完全一样。

GIST