Module ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias ImportFrom alias Import alias Import alias Import alias Import alias Import alias Import alias Import alias Import alias Assign NameStore Str ClassDef bases NameLoad body Expr Str FunctionDef arguments args NameParam NameParam defaults body Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults kwarg body Return Call NameLoad NameLoad NameLoad NameLoad decorator_list decorator_list ClassDef bases NameLoad body Expr Str Assign NameStore BinOpAdd NameLoad Str FunctionDef arguments args NameParam NameParam defaults body Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore SubscriptLoad AttributeLoad AttributeLoad NameLoad attr attr Index AttributeLoad NameLoad attr If Call NameLoad AttributeLoad NameLoad attr Str body TryExcept body Assign NameStore SubscriptLoad AttributeLoad AttributeLoad NameLoad attr attr Index NameLoad handlers ExceptHandler type NameLoad body Pass orelse If Call NameLoad NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad Return NameLoad decorator_list NameLoad FunctionDef arguments args NameParam NameParam NameParam defaults body If CompareIs NameLoad NameLoad body Return NameLoad For NameStore AttributeLoad NameLoad attr body If Call AttributeLoad NameLoad attr NameLoad NameLoad body If UnaryOpNot Call NameLoad AttributeLoad NameLoad attr NameLoad body Return NameLoad Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index NameLoad If BoolOpOr CompareIn NameLoad NameLoad CompareIn Str NameLoad body Return NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults kwarg body If Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr Str body Return Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr BinOpMod Str NameLoad decorator_list decorator_list FunctionDef arguments args NameParam NameParam defaults Num kwarg body Assign NameStore Call AttributeLoad NameLoad attr Str Str Assign NameStore Call AttributeLoad NameLoad attr Str Str FunctionDef arguments args NameParam NameParam NameParam defaults body Assign NameStore AttributeLoad NameLoad attr If CompareEq AttributeLoad NameLoad attr Str body Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad NameLoad orelse Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr If UnaryOpNot AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr Assign SubscriptStore NameLoad Index NameLoad TupleLoad NameLoad NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad decorator_list Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad keyword NameLoad keyword NameLoad decorator_list FunctionDef arguments args defaults vararg kwarg body If NameLoad body Assign NameStore SubscriptLoad NameLoad Index Num Expr Call NameLoad NameLoad NameLoad Return NameLoad orelse FunctionDef arguments args NameParam defaults body Expr Call NameLoad NameLoad NameLoad Return NameLoad decorator_list Return NameLoad decorator_list ClassDef bases NameLoad body Assign NameStore NameLoad Assign NameStore ListLoad Call AttributeLoad NameLoad attr Str Str Assign NameStore NameLoad Assign NameStore NameLoad FunctionDef arguments args NameParam NameParam defaults body Assign AttributeStore NameLoad attr NameLoad Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr Assign AttributeStore NameLoad attr NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Dict Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad If CompareIn Str AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Str SubscriptLoad AttributeLoad NameLoad attr Index Str Assign SubscriptStore AttributeLoad NameLoad attr Index Str AttributeStore NameLoad attr Call AttributeLoad NameLoad attr Str Str Assign SubscriptStore AttributeLoad NameLoad attr Index Str Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad Assign AttributeStore NameLoad attr Call AttributeLoad AttributeLoad NameLoad attr attr Str AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str AttributeLoad NameLoad attr Assign AttributeStore NameLoad attr Call NameLoad NameLoad Assign AttributeStore NameLoad attr Call NameLoad NameLoad Assign AttributeStore NameLoad attr Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults NameLoad NameLoad NameLoad kwarg body If UnaryOpNot AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad TupleLoad NameLoad NameLoad If CompareIsNot NameLoad NameLoad body If BoolOpAnd CompareIs Call AttributeLoad NameLoad attr Str NameLoad NameLoad AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr BinOpMod Str Call NameLoad NameLoad orelse Return Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad NameLoad decorator_list Call AttributeLoad NameLoad attr Str FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam defaults NameLoad kwarg body Assign NameStore BoolOpOr AttributeLoad AttributeLoad NameLoad attr attr Str Assign NameStore BoolOpOr BoolOpAnd CompareEq NameLoad NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore BoolOpOr AttributeLoad NameLoad attr Str Assign NameStore ListComp Call AttributeLoad NameLoad attr comprehension NameStore Call AttributeLoad Call AttributeLoad NameLoad attr attr Str Assign NameStore ListComp BinOpAdd BinOpAdd NameLoad Str Call AttributeLoad NameLoad attr Str comprehension NameStore NameLoad Call AttributeLoad NameLoad attr Str Assign NameStore BinOpAdd BinOpAdd Str Str Call AttributeLoad Str attr NameLoad Assign NameStore AttributeLoad AttributeLoad NameLoad attr attr If NameLoad body If UnaryOpNot Call NameLoad NameLoad NameLoad body Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore BoolOpOr BoolOpAnd NameLoad Call AttributeLoad NameLoad attr ListLoad Assign NameStore Call NameLoad keyword NameLoad If CompareIn Str NameLoad body Expr Call AttributeLoad NameLoad attr keyword SubscriptLoad NameLoad Index Str Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad NameLoad attr TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad BinOpAdd ListLoad NameLoad NameLoad NameLoad handlers ExceptHandler type AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad Str orelse Assign NameStore TupleLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad AttributeLoad NameLoad attr If UnaryOpNot Call AttributeLoad SubscriptLoad AttributeLoad NameLoad attr Index NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr IfExp NameLoad NameLoad AttributeLoad NameLoad attr Str keyword NameLoad orelse If BoolOpAnd UnaryOpNot Call AttributeLoad SubscriptLoad AttributeLoad NameLoad attr Index NameLoad attr AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr IfExp NameLoad NameLoad AttributeLoad NameLoad attr Str keyword NameLoad orelse If UnaryOpNot NameLoad body For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body If Call NameLoad NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad ListComp Call AttributeLoad NameLoad attr NameLoad comprehension NameStore NameLoad orelse If CompareNotIn NameLoad TupleLoad NameLoad NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad keyword NameLoad Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr NameLoad NameLoad If CompareIsNot NameLoad NameLoad body If BoolOpOr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr body Assign NameStore Call AttributeLoad NameLoad attr NameLoad keyword AttributeLoad AttributeLoad NameLoad attr attr Expr Call AttributeLoad NameLoad attr NameLoad Assign SubscriptStore AttributeLoad NameLoad attr Index NameLoad NameLoad Return NameLoad orelse Expr Call NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body If Call NameLoad NameLoad AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr If CompareIsNot NameLoad NameLoad body FunctionDef arguments args NameParam defaults body For NameStore NameLoad body Expr Yield TupleLoad NameLoad NameLoad decorator_list If Call NameLoad NameLoad NameLoad body Assign NameStore ListLoad NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Str Call NameLoad NameLoad If CompareIsNot NameLoad NameLoad body Assign SubscriptStore AttributeLoad NameLoad attr Index NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str If SubscriptLoad NameLoad Index Str body Assign NameStore SubscriptLoad NameLoad Index Str If Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr body Assign NameStore SubscriptLoad NameLoad Slice Call NameLoad AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr NameLoad TupleLoad NameLoad NameLoad If CompareIsNot NameLoad NameLoad body Assign NameStore BoolOpOr AttributeLoad NameLoad attr Str Assign NameStore ListComp Call AttributeLoad NameLoad attr comprehension NameStore Call AttributeLoad NameLoad attr Str Call AttributeLoad NameLoad attr Assign NameStore Str For NameStore NameLoad body If BoolOpAnd CompareNotIn Str NameLoad CompareIsNot NameLoad NameLoad body AugAssignAdd NameStore BinOpAdd NameLoad Str orelse If CompareIsNot NameLoad NameLoad body For NameStore Call AttributeLoad NameLoad attr NameLoad Num body Expr Yield NameLoad Assign NameStore NameLoad Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr Expr Yield NameLoad orelse Expr Yield BinOpMod Str AttributeLoad AttributeLoad AttributeLoad NameLoad attr attr attr orelse Assign NameStore Call NameLoad GeneratorExp NameLoad comprehension TupleStore NameStore TupleStore NameStore NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Str NameLoad Assign NameStore Call AttributeLoad Str attr ListComp BinOpAdd AttributeLoad NameLoad attr NameLoad comprehension NameStore NameLoad Assign NameStore Call AttributeLoad NameLoad attr BinOpMod Str NameLoad Num For NameStore NameLoad body Expr Yield NameLoad Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr Str If NameLoad body Expr Yield BinOpAdd Str NameLoad decorator_list NameLoad FunctionDef arguments args NameParam defaults body Return BinOpMod Str Call NameLoad ListComp BinOpAdd AttributeLoad NameLoad attr NameLoad comprehension NameStore Call AttributeLoad NameLoad attr decorator_list decorator_list AttributeLoad NameLoad attr ClassDef bases NameLoad body FunctionDef arguments args NameParam defaults body Return NameLoad decorator_list decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str Expr Call AttributeLoad NameLoad attr BinOpMod Str Call NameLoad keyword AttributeLoad NameLoad attr decorator_list Call NameLoad keyword Str keyword NameLoad FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str Assign NameStore Call AttributeLoad Str attr SubscriptLoad NameLoad Index Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr Str NameLoad Expr Call AttributeLoad NameLoad attr NameLoad decorator_list Call NameLoad keyword Str FunctionDef arguments args NameParam NameParam NameParam NameParam defaults body Expr Str Assign NameStore Call AttributeLoad NameLoad attr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad AttributeLoad NameLoad attr attr AttributeLoad NameLoad attr decorator_list Call NameLoad keyword Str FunctionDef arguments args NameParam NameParam defaults AttributeLoad NameLoad attr body Expr Str FunctionDef arguments args NameParam defaults body Expr Call NameLoad NameLoad keyword NameLoad decorator_list Assign NameStore Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call AttributeLoad Str attr AttributeLoad NameLoad attr Expr Call NameLoad BinOpMult Str Call NameLoad NameLoad Expr Call NameLoad NameLoad Expr Call NameLoad BinOpMult Str Call NameLoad NameLoad Expr Call NameLoad Str Expr Call NameLoad Str Expr Call NameLoad Str Assign NameStore Dict For TupleStore NameStore TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Assign NameStore Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr ListLoad Expr Call AttributeLoad NameLoad attr TupleLoad NameLoad NameLoad NameLoad For NameStore Call NameLoad NameLoad body Expr Call NameLoad NameLoad Expr Call NameLoad BinOpMult Str Call NameLoad NameLoad Expr Call NameLoad Str For TupleStore NameStore NameStore NameStore Call NameLoad SubscriptLoad NameLoad Index NameLoad body Expr Call NameLoad NameLoad Expr Call NameLoad BinOpMult Str Call NameLoad NameLoad Expr Call NameLoad Str Assign NameStore AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str AttributeLoad AttributeLoad NameLoad attr attr For NameStore Call AttributeLoad NameLoad attr Str body Assign NameStore Call AttributeLoad NameLoad attr If Call AttributeLoad NameLoad attr AttributeLoad AttributeLoad NameLoad attr attr body Assign NameStore Call AttributeLoad Str attr NameLoad Expr Call NameLoad NameLoad If CompareIn Str NameLoad body Expr Call NameLoad Call AttributeLoad Str attr NameLoad If CompareIs Call AttributeLoad NameLoad attr Str NameLoad NameLoad body Expr Call NameLoad Str Expr Call NameLoad Str decorator_list AttributeLoad NameLoad attr
N/A __future__ unicode_literals __future__ print_function irc3.compat PY3 irc3.compat string_types irc3.compat asyncio irc3 utils collections defaultdict N/A functools N/A venusian N/A fnmatch N/A logging N/A docopt N/A irc3 N/A sys N/A re N/A __doc__ 
==========================================
:mod:`irc3.plugins.command` Command plugin
==========================================

Introduce a ``@command`` decorator

The decorator use `docopts <http://docopt.org/>`_ to parse command arguments.

Usage
=====

Create a python module with some commands:

.. literalinclude:: ../../examples/mycommands.py

..
    >>> import sys
    >>> sys.path.append('examples')
    >>> from irc3.testing import IrcBot
    >>> from irc3.testing import ini2config

And register it::

    >>> bot = IrcBot()
    >>> bot.include('irc3.plugins.command')  # register the plugin
    >>> bot.include('mycommands')            # register your commands


Check the result::

    >>> bot.test(':gawel!user@host PRIVMSG #chan :!echo foo')
    PRIVMSG gawel :foo

In the docstring, ``%%`` is replaced by the command character. ``!`` by
default. You can override it by passing a ``cmd`` parameter to bot's config.

When a command is not public, you can't use it on a channel::

    >>> bot.test(':gawel!user@host PRIVMSG #chan :!adduser foo pass')
    PRIVMSG gawel :You can only use the 'adduser' command in private.

If a command is tagged with ``show_in_help_list=False``, it won't be shown
on the result of ``!help``.

    >>> bot.test(':gawel!user@host PRIVMSG #chan :!help')
    PRIVMSG #chan :Available commands: !adduser, !echo, !help, !ping

View extra info about a command by specifying it to ``!help``.

    >>> bot.test(':gawel!user@host PRIVMSG #chan :!help echo')
    PRIVMSG #chan :Echo command
    PRIVMSG #chan :!echo <words>...
    >>> bot.test(':gawel!user@host PRIVMSG #chan :!help nonexistant')
    PRIVMSG #chan :No such command. Try !help for an overview of all commands.

Guard
=====

You can use a guard to prevent untrusted users to run some commands. The
:class:`free_policy` is used by default.

There is two builtin policy:

.. autoclass:: free_policy


.. autoclass:: mask_based_policy

Mask based guard using permissions::

    >>> config = ini2config("""
    ... [bot]
    ... includes =
    ...     irc3.plugins.command
    ...     mycommands
    ... [irc3.plugins.command]
    ... guard = irc3.plugins.command.mask_based_policy
    ... [irc3.plugins.command.masks]
    ... gawel!*@* = all_permissions
    ... foo!*@* = help
    ... """)
    >>> bot = IrcBot(**config)

foo is allowed to use command without permissions::

    >>> bot.test(':foo!u@h PRIVMSG nono :!echo got the power')
    PRIVMSG foo :got the power

foo is not allowed to use command except those with the help permission::

    >>> bot.test(':foo!u@h PRIVMSG nono :!ping')
    PRIVMSG foo :You are not allowed to use the 'ping' command

gawel is allowed::

    >>> bot.test(':gawel!u@h PRIVMSG nono :!ping')
    NOTICE gawel :PONG gawel!

Async commands
==============

Commands can be coroutines:

.. literalinclude:: ../../examples/async_command.py
  :language: py

Available options
=================

.. code-block:: ini

    [irc3.plugins.command]
    cmd = !
    antiflood = true
    casesensitive = true
    guard = irc3.plugins.command.mask_based_policy

 free_policy N/A object N/A N/A Default policy __init__ N/A N/A self bot N/A N/A N/A N/A self context bot N/A __call__ N/A N/A self predicates meth client target args N/A kwargs N/A N/A N/A meth client target args N/A N/A mask_based_policy N/A object N/A N/A Allow only valid masks. Able to take care or permissions N/A key N/A __name__ .masks __init__ N/A N/A self bot N/A N/A N/A N/A self context bot N/A N/A self log N/A N/A logging getLogger __name__ N/A N/A N/A N/A self log debug Masks: %r N/A self masks N/A masks N/A N/A self N/A N/A N/A masks N/A N/A N/A self context config N/A N/A self key N/A N/A hasattr N/A self context db N/A N/A N/A N/A value N/A N/A N/A self context db N/A self N/A N/A N/A KeyError N/A N/A N/A N/A N/A isinstance value dict N/A N/A N/A N/A masks update value N/A masks N/A property has_permission N/A N/A self mask permission N/A N/A N/A N/A permission None N/A N/A True N/A pattern N/A self masks N/A N/A N/A N/A fnmatch fnmatch mask pattern N/A N/A N/A N/A isinstance N/A self masks dict N/A N/A True N/A perms N/A N/A self masks N/A pattern N/A N/A N/A permission perms N/A all_permissions perms N/A N/A True N/A False N/A __call__ N/A N/A self predicates meth client target args N/A kwargs N/A N/A N/A N/A self has_permission client N/A N/A predicates get permission N/A N/A N/A meth client target args N/A cmd_name N/A N/A predicates get name N/A meth __name__ N/A N/A N/A N/A self context privmsg N/A client nick N/A You are not allowed to use the %r command cmd_name N/A N/A attach_command N/A N/A func depth N/A 2 predicates N/A N/A commands N/A N/A predicates pop commands irc3.plugins.command.Commands N/A category N/A N/A predicates pop venusian_category irc3.plugins.command callback N/A N/A context name ob N/A N/A N/A obj N/A context context N/A N/A N/A info scope class N/A N/A callback N/A N/A func __get__ N/A N/A obj get_plugin ob ob N/A N/A callback N/A N/A utils wraps_with_context func obj N/A plugin N/A N/A obj get_plugin N/A N/A utils maybedotted commands N/A N/A N/A predicates update module N/A func __module__ N/A cmd_name N/A N/A predicates get name N/A func __name__ N/A N/A N/A plugin case_sensitive N/A N/A cmd_name N/A N/A cmd_name lower N/A N/A plugin N/A cmd_name N/A predicates callback N/A N/A N/A N/A obj log debug Register command %r cmd_name N/A N/A info N/A N/A venusian attach func callback category category depth depth N/A command N/A N/A N/A func predicates N/A N/A func N/A N/A func N/A func N/A 0 N/A N/A attach_command func predicates N/A func N/A wrapper N/A N/A func N/A N/A N/A N/A attach_command func predicates N/A func N/A N/A wrapper N/A Commands N/A dict N/A N/A __reloadable__ False N/A requires N/A N/A N/A __name__ replace command core N/A default_policy free_policy N/A case_sensitive False __init__ N/A N/A self context N/A N/A N/A N/A self context context N/A module N/A N/A self __class__ __module__ N/A N/A self config config N/A N/A N/A context config get module N/A N/A N/A self log N/A N/A logging getLogger module N/A N/A N/A N/A self log debug Config: %r config N/A N/A cmd N/A context config N/A N/A N/A config N/A cmd N/A N/A context config N/A cmd N/A N/A N/A context config N/A cmd N/A self cmd N/A N/A config get cmd ! N/A N/A N/A context config N/A re_cmd N/A N/A re escape N/A self cmd N/A N/A self antiflood N/A N/A N/A self config get antiflood False N/A N/A self case_sensitive N/A N/A N/A self config get casesensitive N/A self case_sensitive N/A guard N/A N/A utils maybedotted N/A N/A config get guard N/A self default_policy N/A N/A N/A N/A self log debug Guard: %s N/A guard __name__ N/A N/A self guard N/A guard context N/A N/A self handles N/A defaultdict Done N/A N/A self tasks N/A defaultdict Done N/A on_command N/A N/A self cmd mask target client N/A None None None kw N/A N/A N/A N/A self case_sensitive N/A N/A cmd N/A N/A cmd lower N/A N/A predicates meth N/A N/A self get cmd N/A None None N/A N/A meth None N/A N/A N/A N/A N/A N/A predicates get public True False N/A target is_channel N/A N/A N/A N/A N/A self context privmsg N/A mask nick N/A You can only use the %r command in private. N/A str cmd N/A N/A N/A N/A self do_command predicates meth mask target kw N/A N/A N/A irc3 event (@(?P<tags>\S+) )?:(?P<mask>\S+) PRIVMSG (?P<target>\S+) :{re_cmd}(?P<cmd>\w+)(\s(?P<data>\S.*)|(\s*$)) do_command N/A N/A self predicates meth client target data N/A None kw N/A N/A nick N/A N/A N/A self context nick - N/A to N/A N/A N/A target nick N/A client nick target N/A doc N/A N/A meth __doc__ N/A doc N/A N/A N/A l strip N/A l N/A N/A N/A N/A doc strip split N/A doc N/A N/A N/A nick N/A N/A l strip %% N/A l doc N/A N/A l startswith %% N/A doc N/A N/A Usage: N/A N/A join doc N/A encoding N/A N/A self context encoding N/A data N/A N/A N/A N/A isinstance data str N/A N/A data N/A N/A data encode encoding N/A data N/A N/A data N/A N/A data split N/A N/A docopt_args N/A dict help False N/A N/A options_first predicates N/A N/A N/A N/A docopt_args update options_first N/A predicates N/A options_first N/A cmd_name N/A N/A predicates get name N/A meth __name__ N/A N/A N/A args N/A N/A docopt docopt doc N/A N/A cmd_name data docopt_args N/A N/A N/A N/A docopt DocoptExit N/A N/A N/A N/A N/A self context privmsg to Invalid arguments. N/A N/A uid N/A cmd_name to N/A use_client N/A isinstance client N/A asyncio Protocol N/A N/A N/A N/A N/A N/A self tasks N/A uid done N/A N/A N/A N/A N/A self context notice N/A use_client client N/A client nick Another task is already running. Please be patient and don't flood me nowait True N/A N/A N/A N/A N/A N/A N/A N/A self handles N/A uid done N/A self antiflood N/A N/A N/A N/A N/A self context notice N/A use_client client N/A client nick Please be patient and don't flood me nowait True N/A N/A N/A PY3 N/A N/A N/A k v N/A N/A args items N/A N/A N/A isinstance v list N/A N/A N/A args N/A k N/A N/A N/A s decode encoding N/A s v N/A N/A N/A v N/A None True False N/A N/A N/A args N/A k N/A N/A v decode encoding N/A res N/A N/A self guard predicates meth client target args args N/A callback N/A N/A functools partial N/A self command_callback uid to N/A N/A res None N/A N/A N/A N/A N/A asyncio iscoroutinefunction meth N/A N/A asyncio iscoroutinefunction N/A N/A self guard __call__ N/A N/A task N/A N/A asyncio async res loop N/A N/A self context loop N/A N/A N/A task add_done_callback callback N/A N/A N/A self tasks N/A uid task N/A task N/A N/A N/A callback res N/A command_callback N/A N/A self uid to msgs N/A N/A N/A N/A isinstance msgs N/A asyncio Future N/A N/A msgs N/A N/A msgs result N/A N/A msgs None N/A iterator N/A N/A msgs N/A N/A N/A msg msgs N/A N/A N/A N/A to msg N/A N/A N/A isinstance msgs string_types N/A N/A msgs N/A msgs N/A handle N/A N/A N/A self context call_many privmsg N/A iterator msgs N/A N/A handle None N/A N/A N/A N/A self handles N/A uid handle N/A help N/A N/A self mask target args N/A N/A N/A Show help

            %%help [<cmd>]
         N/A N/A args N/A <cmd> N/A N/A args N/A args N/A <cmd> N/A N/A N/A args startswith N/A N/A N/A self context config cmd N/A N/A args N/A args N/A N/A len N/A N/A N/A self context config cmd N/A N/A predicates meth N/A N/A self get args N/A None None N/A N/A meth None N/A N/A doc N/A N/A meth __doc__ N/A doc N/A N/A N/A l strip N/A l N/A N/A doc split N/A N/A l strip N/A buf N/A line doc N/A N/A N/A N/A %% line N/A buf None N/A N/A buf N/A line N/A N/A N/A buf None N/A N/A b N/A N/A utils split_message buf 160 N/A N/A N/A b N/A buf None N/A line N/A N/A line replace %% N/A N/A N/A self context config cmd N/A N/A line N/A N/A N/A N/A No such command. Try %shelp for an overview of all commands. N/A N/A N/A self context config cmd N/A N/A cmds N/A sorted N/A k N/A N/A k N/A p m N/A N/A self items N/A N/A p get show_in_help_list True N/A cmds_str N/A N/A ,  join N/A N/A N/A self cmd k N/A k cmds N/A lines N/A N/A utils split_message N/A Available commands: %s  cmds_str 160 N/A line lines N/A N/A N/A line N/A url N/A N/A N/A self config get url N/A url N/A N/A N/A N/A Full help is available at  url N/A command __repr__ N/A N/A self N/A N/A N/A N/A <Commands %s> N/A sorted N/A N/A N/A self cmd k N/A k N/A N/A self keys N/A N/A N/A irc3 plugin Done N/A object N/A done N/A N/A self N/A N/A N/A True N/A N/A ping N/A N/A bot mask target args N/A N/A N/A ping/pong

        %%ping
     N/A N/A N/A bot send N/A NOTICE %(nick)s :PONG %(nick)s! N/A dict nick N/A mask nick N/A N/A command permission admin public False quote N/A N/A bot mask target args N/A N/A N/A send quote to the server

        %%quote <args>...
     N/A msg N/A N/A join N/A args N/A <args> N/A N/A N/A N/A bot log info quote> %r msg N/A N/A N/A bot send msg N/A N/A command venusian_category irc3.debug reconnect N/A N/A bot mask target args N/A N/A N/A force reconnect

        %%reconnect
     N/A plugin N/A N/A bot get_plugin N/A N/A utils maybedotted irc3.plugins.core.Core N/A N/A N/A N/A bot loop call_soon N/A plugin reconnect N/A N/A command venusian_category irc3.debug print_help_page N/A N/A bot file N/A N/A sys stdout N/A N/A print help page p N/A N/A text N/A N/A N/A N/A print text file file N/A N/A plugin N/A N/A bot get_plugin Commands N/A title N/A N/A Available Commands for {nick} at {host} format N/A bot config N/A N/A p N/A = N/A len title N/A N/A p title N/A N/A p N/A = N/A len title N/A N/A p N/A N/A p .. contents:: N/A N/A p N/A modules N/A N/A N/A name N/A predicates callback N/A N/A plugin items N/A N/A commands N/A N/A modules setdefault N/A callback __module__ N/A N/A N/A N/A commands append N/A name callback predicates N/A module N/A sorted modules N/A N/A N/A p module N/A N/A p N/A = N/A len module N/A N/A p N/A N/A name callback predicates N/A sorted N/A modules N/A module N/A N/A N/A p name N/A N/A p N/A - N/A len name N/A N/A p N/A doc N/A callback __doc__ N/A doc N/A N/A doc replace %% N/A N/A bot config cmd N/A line N/A N/A doc split N/A N/A line N/A N/A line strip N/A N/A N/A line startswith N/A N/A bot config cmd N/A N/A line N/A N/A     ``{}`` format line N/A N/A p line N/A N/A permission predicates N/A N/A N/A p N/A N/A *Require {0[permission]} permission.* format predicates N/A N/A N/A N/A predicates get public True False N/A N/A N/A p *Only available in private.* N/A N/A p N/A N/A irc3 extend