代码之家  ›  专栏  ›  技术社区  ›  NinjaCat

不读取~/.vimrc

vim
  •  48
  • NinjaCat  · 技术社区  · 15 年前

    我有一个~/.vimrc文件,Vim似乎没有读到。 在/etc/vimrc有一个文件,看起来它正在使用这个文件。

    我的理解是主目录中的那个应该覆盖这个目录,不是吗?

    更新

    cat vim_strace | grep .vimrc
        stat64("/etc/vimrc", {st_mode=S_IFREG|0644, st_size=1438, ...}) = 0
        open("/etc/vimrc", O_RDONLY|O_LARGEFILE) = 3
        stat64("/etc/vimrc", {st_mode=S_IFREG|0644, st_size=1438, ...}) = 0
        stat64("/root/.vimrc", {st_mode=S_IFREG|0644, st_size=35, ...}) = 0
        open("/root/.vimrc", O_RDONLY|O_LARGEFILE) = 3
        stat64("/root/.vimrc", {st_mode=S_IFREG|0644, st_size=35, ...}) = 0
    
    10 回复  |  直到 8 年前
        1
  •  58
  •   hellvinz    15 年前

    如果您在Linux上并且想知道Vim是否在启动时访问您的~/.Vimrc,您可以使用strace启动它:

    strace -o vim_strace vim
    

    然后退出VIM。 打开vim strace文件并在文件中搜索“vimrc”。你应该找一条这样的线

    stat64("/home/youruser/.vimrc", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
    

    这意味着至少Vim看到了文件。

        2
  •  115
  •   James Polley    14 年前

    一旦你装上维姆, :scriptnames 会告诉你维姆到底读了什么。

    对我来说,开始是这样的:

      1: /Applications/MacVim.app/Contents/Resources/vim/vimrc
      2: ~/.vimrc
      3: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/syntax.vim
      4: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/synload.vim
      5: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/syncolor.vim
    

    如果要检查特定设置的设置位置,请使用“详细设置”。例如, :verbose set background 告诉我:

      background=light
            Last set from ~/.vimrc
    

    所以我知道我在~/.vimrc中的设置正在被读取,并且以后的任何文件都不会破坏它。

        3
  •  14
  •   GuestUser123456789    11 年前

    我有这个问题,只是在文件中添加了以下内容 ~/.bash_profile :

    alias vim="vim -S ~/.vimrc"
    
        4
  •  8
  •   E. Sundin    8 年前

    如果有人在使用时遇到此问题 neovim 你应该知道(在你开始拔头发之前) .vimrc 文件从加载 ~/.config/nvim/init.vim .

    mkdir -p ~/.config/nvim; ln -s ~/.vimrc ~/.config/nvim/init.vim
    
        5
  •  4
  •   Rojan    15 年前

    只是为了增加赫尔文兹的指示。

    在你做了Vim Strace文件之后。

    猫Vim_strace_grep.vimrc

    让生活变得简单:)

        6
  •  3
  •   user821816    15 年前

    在OSX 10.8.0上,VIMRC文件的位置是:/usr/share/vim/vimrc

    我只是将我的更改添加到文件的底部。

    当然,这会对所有用户进行更改。对于我的生活,我似乎不知道如何让它读~/.vimrc。在10.6.x上这对我来说从来都不是问题

    不管怎样,这是一个快速修复,即使它有点脏。

    干杯

        7
  •  3
  •   Ben Davis    12 年前

    以防其他人遇到这个问题,就像我意识到的那样。 vimrc 因为sudo而没有阅读,请尝试使用 sudo -E . 它为命令保留了您的环境,并且 $HOME 将指向您自己的home dir。注意:这可能不适用于以下环境: /home 装上 根茎南瓜 .

        8
  •  3
  •   Xolani    12 年前

    使用文件 /ETC/VIM/VIMRC.本地 在Ubuntu中

        9
  •  1
  •   bortunac    12 年前

    在我的Debian和Vim73尝试了解决方案后。Vimrc so:

    我搜索

    find / -name vimrc

    找到了。 /etc/vim/vimrc

    打开它并了解这将覆盖ANI其他设置

    只是取消评论 " 您需要一些有用的设置

        10
  •  1
  •   GWu    8 年前

    检查是否 $VIMINIT 已经定好了。它可能会阻止你阅读 ~/.vimrc . 见 :help VIMINIT :

     c. Four places are searched for initializations.  The first that exists
        is used, the others are ignored.  [...]
        -  The environment variable VIMINIT [...]
    

    为我不安 VIMINIT 耍了花招,我的 ~/VIMRC 现在被读取。