【问题标题】:Bash Commands from vim来自 vim 的 Bash 命令
【发布时间】:2013-01-28 06:29:29
【问题描述】:

当我从 vim 内部运行 bash 命令时,我注意到路径全错了。我的 .vimrc 内部有没有办法让它加载我的 .bash_profile 或者只是从它启动的终端继承 PATH 和别名设置?

【问题讨论】:

    标签: linux vim path terminal


    【解决方案1】:

    如果您将 shell 定义为交互式,vim 将加载您的 .bashrc 或 .bash_profile。默认不加载。

    这可以通过以下方式完成:

    :set shellcmdflag=-ic  
    

    默认只有-c:h shellcmdflag 以查看详细信息。当然你可以将它添加到你的 .vimrc 文件中。

    【讨论】:

    • 完美。正是我正在寻找的答案。你应该得到一个金属。
    【解决方案2】:

    如果您在配置文件中正确完成了export PATH,Vim 应该继承shell 的PATH 设置。你可以在 Vim 内部通过:echo $PATH 进行检查,也可以通过:let $PATH .= ':/additional/path' 进行操作。

    如果您还需要别名,则必须使用 Kent 的解决方案。提醒一句:通过对'shellcmdflag' 的这种修改,您可能(取决于您的 shell 环境的复杂性)为 Vim 中的 每个 shell 调用招致运行时损失。

    【讨论】:

    • 为每个 shell 调用(包括 system() 调用)招致运行时惩罚,即使没有任何配置文件(bash 必须首先检查它们是否存在) .您只会可能招致显着运行时惩罚。
    猜你喜欢
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多