How Completing Works
Custom Completers
Completion Variables
Here is the complete list of callable completion functions present in Readline.
?' means list the possible
completions. `TAB' means do standard completion. `*' means
insert all of the possible completions. `!' means to display
all of the possible completions, if there is more than one, as well as
performing partial completion.
completion_matches () and rl_completion_entry_function).
The default is to do filename
completion. This calls rl_complete_internal () with an
argument depending on invoking_key.
rl_complete (). This calls rl_complete_internal () with an argument of
`?'.
rl_complete ().
This calls rl_complete_internal () with an argument of `*'.
(char *) which is a list of completions for
text. If there are no completions, returns (char **)NULL.
The first entry in the returned array is the substitution for text.
The remaining entries are the possible completions. The array is
terminated with a NULL pointer.
entry_func is a function of two args, and returns a
(char *). The first argument is text. The second is a
state argument; it is zero on the first call, and non-zero on subsequent
calls. entry_func returns a NULL pointer to the caller
when there are no more matches.
~'). As with all
completion generators, state is zero on the first call and non-zero
for subsequent calls.