【问题标题】:How do I get vim's :sh command to source my bashrc?如何获取 vim 的 :sh 命令来获取我的 bashrc?
【发布时间】:2009-11-07 22:03:39
【问题描述】:

每当我在 vim 中使用 :sh 启动 shell 时,它都不会获取我的 ~/.bashrc 文件。我怎样才能让它自动执行此操作?

【问题讨论】:

    标签: unix vim shell


    【解决方案1】:

    :help 'shell'。您可以将此字符串设置为包含-l--login,这将获取您的.bashrc 文件。所以,你的.vimrc 中可能会有这样一行:

    set shell=bash\ --login
    

    请注意,这将改变调用 shell 的所有内容,包括 :!。这应该不是什么大问题,但您应该意识到这一点。

    这个命令的值也可以通过设置$SHELL环境变量来改变。

    【讨论】:

    • 你是我的英雄。我过去做过 :help sh,不幸的是,这并不能告诉你太多。
    【解决方案2】:

    如果它没有获取您的 .bashrc 文件,它可能仍会获取您的 .bash_profile 文件。我通常将其中一个作为另一个符号链接。如果您的 .bashrc 执行一些特别奇怪的一次性操作,您可能需要对其进行编辑以仅使用登录 shell 执行这些操作,但我从来没有遇到过问题。

    【讨论】:

      【解决方案3】:

      ~/.vimrc

      cmap sh<CR> !bash --login<CR>
      

      如果您在命令行中快速输入“sh”,则可以使用 sourcing ~/.bashrc 启动 bash。太脏了。

      【讨论】:

      • 这个问题已经以干净的方式解决了。不需要用不必要的映射污染我们的 vimrc 文件。
      猜你喜欢
      • 2010-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-01
      • 2013-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多