root / snf-webproject / extras / snf_manage_bash_completion @ b29a81b1
History | View | Annotate | Download (1.2 kB)
1 | b29a81b1 | Kostas Papadimitriou | # ######################################################################### |
---|---|---|---|
2 | b29a81b1 | Kostas Papadimitriou | # This bash script adds tab-completion feature to django-admin.py and |
3 | b29a81b1 | Kostas Papadimitriou | # manage.py. |
4 | b29a81b1 | Kostas Papadimitriou | # |
5 | b29a81b1 | Kostas Papadimitriou | # Testing it out without installing |
6 | b29a81b1 | Kostas Papadimitriou | # ================================= |
7 | b29a81b1 | Kostas Papadimitriou | # |
8 | b29a81b1 | Kostas Papadimitriou | # To test out the completion without "installing" this, just run this file |
9 | b29a81b1 | Kostas Papadimitriou | # directly, like so: |
10 | b29a81b1 | Kostas Papadimitriou | # |
11 | b29a81b1 | Kostas Papadimitriou | # . ~/path/to/synnefo_bash_completion |
12 | b29a81b1 | Kostas Papadimitriou | # |
13 | b29a81b1 | Kostas Papadimitriou | # Note: There's a dot ('.') at the beginning of that command. |
14 | b29a81b1 | Kostas Papadimitriou | # |
15 | b29a81b1 | Kostas Papadimitriou | # After you do that, tab completion will immediately be made available in your |
16 | b29a81b1 | Kostas Papadimitriou | # current Bash shell. But it won't be available next time you log in. |
17 | b29a81b1 | Kostas Papadimitriou | # |
18 | b29a81b1 | Kostas Papadimitriou | # Installing |
19 | b29a81b1 | Kostas Papadimitriou | # ========== |
20 | b29a81b1 | Kostas Papadimitriou | # |
21 | b29a81b1 | Kostas Papadimitriou | # To install this, point to this file from your .bash_profile, like so: |
22 | b29a81b1 | Kostas Papadimitriou | # |
23 | b29a81b1 | Kostas Papadimitriou | # . ~/path/to/synnefo_bash_completion |
24 | b29a81b1 | Kostas Papadimitriou | # |
25 | b29a81b1 | Kostas Papadimitriou | # Do the same in your .bashrc if .bashrc doesn't invoke .bash_profile. |
26 | b29a81b1 | Kostas Papadimitriou | # |
27 | b29a81b1 | Kostas Papadimitriou | # Settings will take effect the next time you log in. |
28 | b29a81b1 | Kostas Papadimitriou | # |
29 | b29a81b1 | Kostas Papadimitriou | # Uninstalling |
30 | b29a81b1 | Kostas Papadimitriou | # ============ |
31 | b29a81b1 | Kostas Papadimitriou | # |
32 | b29a81b1 | Kostas Papadimitriou | # To uninstall, just remove the line from your .bash_profile and .bashrc. |
33 | b29a81b1 | Kostas Papadimitriou | |
34 | b29a81b1 | Kostas Papadimitriou | _synnefo_completion() |
35 | b29a81b1 | Kostas Papadimitriou | { |
36 | b29a81b1 | Kostas Papadimitriou | COMPREPLY=( $( COMP_WORDS="${COMP_WORDS[*]}" \ |
37 | b29a81b1 | Kostas Papadimitriou | COMP_CWORD=$COMP_CWORD \ |
38 | b29a81b1 | Kostas Papadimitriou | DJANGO_AUTO_COMPLETE=1 $1 ) ) |
39 | b29a81b1 | Kostas Papadimitriou | } |
40 | b29a81b1 | Kostas Papadimitriou | complete -F _synnefo_completion -o default snf-manage |