Email command help

You can get some help about the various email commands that are available by sending the word help to a mailing list’s -request address.

>>> mlist = create_list('test@example.com')
>>> from mailman.commands.eml_help import Help
>>> help = Help()
>>> print(help.name)
help
>>> print(help.description)
Get help about available email commands.
>>> print(help.argument_description)
[command]

With no arguments, help provides a list of the available commands and a short description of each of them.

>>> from mailman.runners.command import Results
>>> results = Results()

>>> from mailman.email.message import Message
>>> print(help.process(mlist, Message(), {}, (), results))
ContinueProcessing.yes
>>> print(results)
The results of your email command are provided below.

confirm     - Confirm a subscription request.
echo        - Echo back your arguments.
end         - Stop processing commands.
help        - Get help about available email commands.
join        - Join this mailing list.
leave       - Leave this mailing list.
stop        - An alias for 'end'.
subscribe   - An alias for 'join'.
unsubscribe - An alias for 'leave'.

With an argument, you can get more detailed help about a specific command.

>>> results = Results()
>>> print(help.process(mlist, Message(), {}, ('help',), results))
ContinueProcessing.yes
>>> print(results)
The results of your email command are provided below.
<BLANKLINE>
help [command]
Get help about available email commands.
<BLANKLINE>

Some commands have even more detailed help.

>>> results = Results()
>>> print(help.process(mlist, Message(), {}, ('join',), results))
ContinueProcessing.yes
>>> print(results)
The results of your email command are provided below.
<BLANKLINE>
join [digest=<no|mime|plain>]
Join this mailing list.
<BLANKLINE>
You will be asked to confirm your subscription request and you may be
issued a provisional password.
<BLANKLINE>
By using the 'digest' option, you can specify whether you want digest
delivery or not.  If not specified, the mailing list's default delivery
mode will be used.
<BLANKLINE>