I would like to get auto-completion on my python scripts also in the arguments.
I had never really understood how the bash_completion worked (for arguments), but after I digged in I understood that:
- it uses "complete" to bind a completing function to a command
- every completing function basically is a copy of the argument parser
The second point in particular is not great, because I would like to have it automatically generated.
The best thing would be that the shell asks to my program at every TAB about what to complete, but I have the impression that this can't really work, is that correct?
The second option is probably just to write a converter from an argparse parser to a shell function which completes correctly.
optparse
has automatic shell completion support: pypi.python.org/pypi/optcomplete – Chally