Se você estiver usando virtualenvwrapper
para ativar seus ambientes virtuais python, você pode fazer virtualenvwrapper
automaticamente fonte o django_bash_completion
script quando você ativar seu ambiente Django, que irá dar o seu bash
ambiente de guia-conclusão para django-admin.py
e manage.py
comandos e opções de comando.
Execute o seguinte em seu shell para conectar o script no postactivate
evento de seu virtualenv (substitua my_django_env
pelo nome de seu django virtualenv):
$ workon my_django_env # (1)
$ echo 'source "${VIRTUAL_ENV}/src/django/extras/django_bash_completion"' >> ${VIRTUAL_ENV}/bin/postactivate # (2)
$ workon my_django_env # (3)
O que os comandos acima fazem:
(1) ativa seu ambiente de projeto django, de modo que as variáveis de ambiente de shell do virtualenv sejam definidas, que usaremos no próximo comando
(2) conecta o fornecimento de conclusão de bash django em seu pós-virtualenv atual activate event
(3) reativa seu projeto django virtualenv para que o script de conclusão seja obtido no shell atual
Depois de emitir os comandos acima em seu shell, você agora tem o preenchimento de tabulação para os comandos django-admin.py e manage.py (e opções de comando) em seu shell atual e em novos shells depois de “trabalhar” com seu projeto django virtualenv .
Observe que os passos acima requerem que você tenha instalado um checkout “editável” do código-fonte do django, uma vez que o extras
diretório, que contém o script de conclusão do django bash , não está no pacote python django (não é um módulo python). Se você estiver usando o pacote django python em seus requisitos com uma versão “congelada”, digamos,
Django==1.3.5
você pode transformá-lo em um check-out git editável com a seguinte entrada, com a mesma versão especificada como uma tag git:
-e git+git@github.com:django/django.git@1.3.5#egg=django
Depois de alterar a instalação do django do pacote python para o checkout editável do git, agora você deve ter o extras
diretório em seu virtualenv e pode agora fornecer o django_bash_completion
script detalhado na metade superior deste protocolo.