Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Document adding print-completion-script to venv

未关闭
#959 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞
技术栈
python, shell
领域
cli

调研方向

Start by reviewing the venv activate script integration point and the existing print-completion-script entry point, using the provided Invoke task as a reference. Clarify which shells and activation paths are supported, then verify that activating a virtual environment makes completion available and that the relevant behavior is covered by tests.

由索引模型根据 Issue 内容生成。

描述

We can also add the print-completion-script to the venv activate script. here an example how to do it with invoke

import os
import pathlib
import sys
import invoke

ROOT_DIR = pathlib.Path(__file__).parent


@invoke.task
def complete(context):
    """Activate the invoke shell completion."""
    shell = pathlib.Path(os.environ.get("SHELL", "")).name
    completion_script = context.run(
        f"invoke --print-completion-script {shell}",
        hide=True,
    ).stdout
    with open(".invoke-completion.sh", "w", encoding="UTF-8") as f:
        f.write(completion_script)
    venv_activate = pathlib.Path(sys.executable).parent / 'activate'
    with open(venv_activate, "a", encoding="UTF-8") as f:
        f.write(f"\n. {ROOT_DIR / '.invoke-completion.sh'}\n")

主要语言
Python
星标
4.8k
派生
412
PR 合并指标
30 天内没有已合并 PR

环境准备

我们还没有检查这个项目的环境配置文件。先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

pyinvoke/invoke 的其他 Issue

查看 pyinvoke/invoke 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。