/etc/bash_completion.d/django_bash_completion takes about 150ms to source, 
even on a warm cache, primarily because it forks+execs /usr/bin/basename 
44 times.  This significantly slows down interactive logins.

This patch makes it faster by a factor of 5 (and I imagine that a little 
more thought would reduce the time to effectively zero).

--- /etc/bash_completion.d/django_bash_completion
+++ /etc/bash_completion.d/django_bash_completion
@@ -42,10 +42,10 @@
 _python_django_completion()
 {
     if [[ ${COMP_CWORD} -ge 2 ]]; then
-        PYTHON_EXE=$( basename -- ${COMP_WORDS[0]} )
+        PYTHON_EXE=${COMP_WORDS[0]##*/}
         echo $PYTHON_EXE | egrep "python([2-9]\.[0-9])?" >/dev/null 2>&1
         if [[ $? == 0 ]]; then
-            PYTHON_SCRIPT=$( basename -- ${COMP_WORDS[1]} )
+            PYTHON_SCRIPT=${COMP_WORDS[1]##*/}
             echo $PYTHON_SCRIPT | egrep "manage\.py|django-admin(\.py)?" >/dev/null 2>&1
             if [[ $? == 0 ]]; then
                 COMPREPLY=( $( COMP_WORDS="${COMP_WORDS[*]:1}" \
@@ -61,7 +61,7 @@
 if command -v whereis &>/dev/null; then
     python_interpreters=$(whereis python | cut -d " " -f 2-)
     for python in $python_interpreters; do
-        pythons="${pythons} $(basename -- $python)"
+        pythons="${pythons} ${python##*/}"
     done
     pythons=$(echo $pythons | tr " " "\n" | sort -u | tr "\n" " ")
 else
