{{{
$ python -Q <TAB>
new old warn warnall
$ . extras/django_bash_completion
$ python -Q <TAB>
AUTHORS .git/ LICENSE setup.py
CONTRIBUTING.rst .gitattributes MANIFEST.in tests/
django/ .gitignore README.rst .tx/
docs/ .hgignore scripts/
extras/ INSTALL setup.cfg
}}}
That seems like a really unfriendly thing to do, especially on Linux
distros where merely installing the Django package pulls in
`django_bash_completion` automatically.
I don’t know of a way to install a completion hook for `python manage.py`
without clobbering all of `python`, so I would propose that the second
half of the script (starting at `_python_django_completion`) should be
deleted entirely. Users who want bash completion can type `./manage.py`
or `django-admin` instead.
--
Ticket URL: <https://code.djangoproject.com/ticket/19806>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* needs_better_patch: => 0
* component: Uncategorized => Core (Management commands)
* needs_tests: => 0
* needs_docs: => 0
* type: Uncategorized => Bug
* stage: Unreviewed => Accepted
Comment:
Agreed, this is quite unfriendly.
--
Ticket URL: <https://code.djangoproject.com/ticket/19806#comment:1>
* owner: nobody => anonymous
* status: new => assigned
--
Ticket URL: <https://code.djangoproject.com/ticket/19806#comment:2>
* owner: anonymous => kwadrat
--
Ticket URL: <https://code.djangoproject.com/ticket/19806#comment:3>
* owner: kwadrat =>
* status: assigned => new
* has_patch: 0 => 1
* needs_tests: 0 => 1
--
Ticket URL: <https://code.djangoproject.com/ticket/19806#comment:4>
Comment (by andersk):
Copying the upstream completion for `python` is still unfriendly, because
the upstream completion might change, and things will break again if any
other package wants to extend `python` completion. Also, in bash-
completion 2, the preferred way to install completions is in `/usr/share
/bash-completion/completions/command_name` where they are loaded
dynamically (rather than all at once at startup), which will break this
anyway. This really needs some help from bash-completion upstream. Until
that happens, I still recommend that the completion for `python manage.py`
be removed entirely. For concreteness, I’ll attach that patch below.
--
Ticket URL: <https://code.djangoproject.com/ticket/19806#comment:5>