【问题标题】:bash conda autocomplete on macosmacos上的bash conda自动完成
【发布时间】:2017-08-29 20:07:04
【问题描述】:

我想在按 Tab 时为 conda 命令启用自动完成功能。

我搜索了互联网并找到了一些文档。我已经应用了建议的解决方案,但自动完成仍然无法正常工作。

conda.io: enable-tab-completion

还有其他方法吗。如何为 conda 命令启用自动完成功能?

【问题讨论】:

  • 您是否打开了新的终端窗口?在 macOS 上,您必须将 eval 代码添加到 .bash_profile,IIRC
  • 是的,我已将 eval 代码放入 .bash_profile 并打开一个新终端。它不能解决问题。

标签: bash macos autocomplete conda


【解决方案1】:

bash right now 不支持 conda 的自动完成功能。

高达 4.3 的 Conda 版本支持 bash shell 中的制表符补全 argcomplete 包。不推荐使用 Tab 补全从 4.4版。请参阅问题 #415。

从技术上讲,它可以与4.4 之前的版本一起使用,但我不建议使用从那时起引入了重大更改的旧版本,而且conda 的开发速度相当快。

三种可能的解决方案:

  • this issue 声明完成了 Fish shell 的工作,所以你可以使用 fish
  • 同样的问题表明有人可以为 Bash 实现自动完成...如果您正在寻找一个有助于 conda 的项目。我相信conda team 会很乐意为您指出正确的方向。
  • 提到了 Bash 的 a hack,虽然这已经有几个月了,但不能保证它会起作用,并且随时可能中断

【讨论】:

    【解决方案2】:

    现在可以使用conda-bash-completion 自动完成。只需在终端中输入以下内容即可安装它:

    conda install -c conda-forge conda-bash-completion
    

    开发者在projects github page 上提供了更详尽的说明。

    【讨论】:

      【解决方案3】:

      启用标签补全:

      1. 确保已安装 argcomplete:

        conda install argcomplete

      2. 将以下代码添加到您的 bash 配置文件中:

        eval "$(register-python-argcomplete conda)"

      3. 测试一下:

        • 打开一个新的终端窗口或 Anaconda 提示符。

        • 键入:conda ins,然后按 Tab 键。

        • 命令完成到:

        conda 安装

      来源: https://conda.io/projects/conda/en/latest/user-guide/configuration/enable-tab-completion.html

      【讨论】:

      • 您未能引用此页面的第一条信息:Conda versions up to 4.3 supports tab completion in bash shells via the argcomplete package. Tab completion is deprecated starting with version 4.4. See issue #415.。这已被弃用。
      猜你喜欢
      • 2016-02-03
      • 2012-04-09
      • 1970-01-01
      • 1970-01-01
      • 2012-03-09
      • 1970-01-01
      • 1970-01-01
      • 2010-09-14
      • 2012-06-15
      相关资源
      最近更新 更多