Starting with this commit, there should be no "original" text in READMEs. Instead, the entire text should be in docstrings, and READMEs should be automatically generated from these docstrings. Motivation: * The same help is available both via IRC and in the README (although the README can be more detailed, as only the first paragraph will be shown on IRC) * This will allow auto-generating plugin help on docs.limnoria.net using the same content as the README, as it's sourced from the docstrings Additionally, this converts all READMEs from Markdown to ReST, because the documentation already uses ReST, and other docstrings in the codebase are in ReST for this reason.
4.9 KiB
Documentation for the MessageParser plugin for Supybot
Purpose
The MessageParser plugin allows you to set custom regexp triggers, which will trigger the bot to respond if they match anywhere in the message. This is useful for those cases when you want a bot response even when the bot was not explicitly addressed by name or prefix character.
An updated page of this plugin's documentation is located here: https://sourceforge.net/p/gribble/wiki/MessageParser_Plugin/
Usage
This plugin can set regexp triggers to activate the bot. Use 'add' command to add regexp trigger, 'remove' to remove.
Commands
- add [<channel>|global] <regexp> <action>
-
Associates <regexp> with <action>. <channel> is only necessary if the message isn't sent on the channel itself. Action is echoed upon regexp match, with variables $1, $2, etc. being interpolated from the regexp match groups.
- info [<channel>|global] [--id] <regexp>
-
Display information about <regexp> in the triggers database. <channel> is only necessary if the message isn't sent in the channel itself. If option --id specified, will retrieve by regexp id, not content.
- list [<channel>|global]
-
Lists regexps present in the triggers database. <channel> is only necessary if the message isn't sent in the channel itself. Regexp ID listed in parentheses.
- lock [<channel>|global] <regexp>
-
Locks the <regexp> so that it cannot be removed or overwritten to. <channel> is only necessary if the message isn't sent in the channel itself.
- rank [<channel>|global]
-
Returns a list of top-ranked regexps, sorted by usage count (rank). The number of regexps returned is set by the rankListLength registry value. <channel> is only necessary if the message isn't sent in the channel itself.
- remove [<channel>|global] [--id] <regexp>]
-
Removes the trigger for <regexp> from the triggers database. <channel> is only necessary if the message isn't sent in the channel itself. If option --id specified, will retrieve by regexp id, not content.
- show [<channel>|global] [--id] <regexp>
-
Looks up the value of <regexp> in the triggers database. <channel> is only necessary if the message isn't sent in the channel itself. If option --id specified, will retrieve by regexp id, not content.
- unlock [<channel>|global] <regexp>
-
Unlocks the entry associated with <regexp> so that it can be removed or overwritten. <channel> is only necessary if the message isn't sent in the channel itself.
- vacuum [<channel>|global]
-
Vacuums the database for <channel>. See SQLite vacuum doc here: http://www.sqlite.org/lang_vacuum.html <channel> is only necessary if the message isn't sent in the channel itself. First check if user has the required capability specified in plugin config requireVacuumCapability.
Configuration
- supybot.plugins.MessageParser.enable
-
This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the message parser is enabled. If enabled, will trigger on regexps added to the regexp db.
- supybot.plugins.MessageParser.enableForNotices
-
This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the message parser is enabled for NOTICE messages too.
- supybot.plugins.MessageParser.keepRankInfo
-
This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether we keep updating the usage count for each regexp, for popularity ranking.
- supybot.plugins.MessageParser.listSeparator
-
This config variable defaults to ", ", is network-specific, and is channel-specific.
Determines the separator used between regexps when shown by the list command.
- supybot.plugins.MessageParser.maxTriggers
-
This config variable defaults to "0", is network-specific, and is channel-specific.
Determines the maximum number of triggers in one message. Set this to 0 to allow an infinite number of triggers.
- supybot.plugins.MessageParser.public
-
This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible.
- supybot.plugins.MessageParser.rankListLength
-
This config variable defaults to "20", is network-specific, and is channel-specific.
Determines the number of regexps returned by the triggerrank command.
- supybot.plugins.MessageParser.requireManageCapability
-
This config variable defaults to "admin; channel,op", is network-specific, and is channel-specific.
Determines the capabilities required (if any) to manage the regexp database, including add, remove, lock, unlock. Use 'channel,capab' for channel-level capabilities. Note that absence of an explicit anticapability means user has capability.
- supybot.plugins.MessageParser.requireVacuumCapability
-
This config variable defaults to "admin", is network-specific, and is channel-specific.
Determines the capability required (if any) to vacuum the database.