Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Document adding print-completion-script to venv

Aperta
#959 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python, shell
Ambito
cli

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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")

Lingua principale
Python
Stelle
4.8k
Fork
412
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di pyinvoke/invoke

Tutte le issue di pyinvoke/invoke

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.