Let's say I have a bash shell function named magic. I want to define a tab completion function _magic which would allow magic to piggyback on the tab completion functions of any given command (if available). In other words, I want magic to be able to do something like this:
~ $ magic git ... <search for _git and use it if found>
~ $ magic cd ... <search for _cd and use it if found>
~ $ magic some-cmd ... <search for _some-cmd and use it if found>
I can't seem to find anything online that would help me achieve this using compgen, complete etc. Is this even possible? Thanks in advance.
There are many such (pseudo?) commands, that need this. e.g.
time
,nice
,strace
etc.They all use the same command completion:
_command
. So, don't re-invent the wheel. :)Try running this in your bash terminal, if this work: