diff --git a/plugins/Admin/plugin.py b/plugins/Admin/plugin.py index cd18a6a84..63489d4e2 100644 --- a/plugins/Admin/plugin.py +++ b/plugins/Admin/plugin.py @@ -231,7 +231,6 @@ class Admin(callbacks.Plugin): irc.reply(irc.nick) nick = wrap(nick, [additional('nick'), additional('something')]) - @internationalizeDocstring class capability(callbacks.Commands): @internationalizeDocstring diff --git a/plugins/Owner/config.py b/plugins/Owner/config.py index 25e5d9915..243e4ee07 100644 --- a/plugins/Owner/config.py +++ b/plugins/Owner/config.py @@ -46,10 +46,11 @@ conf.registerGlobalValue(Owner, 'public', registry.Boolean(True, """Determines whether this plugin is publicly visible.""")) conf.registerGlobalValue(Owner, 'quitMsg', - registry.String('', """Determines what quit message will be used by default. + registry.String('$version', """Determines what quit message will be used by default. If the quit command is called without a quit message, this will be used. If this value is empty, the nick of the person giving the quit command will be - used.""")) + used. The standard substitutions ($version, $nick, etc.) are all handled + appropriately.""")) conf.registerGroup(conf.supybot.commands, 'renames', orderAlphabetically=True) diff --git a/plugins/Owner/plugin.py b/plugins/Owner/plugin.py index 8f5afc245..dc8de8981 100644 --- a/plugins/Owner/plugin.py +++ b/plugins/Owner/plugin.py @@ -344,9 +344,11 @@ class Owner(callbacks.Plugin): Exits the bot with the QUIT message . If is not given, the default quit message (supybot.plugins.Owner.quitMsg) will be used. - If there is no default quitMsg set, your nick will be used. + If there is no default quitMsg set, your nick will be used. The standard + substitutions ($version, $nick, etc.) are all handled appropriately. """ text = text or self.registryValue('quitMsg') or msg.nick + text = ircutils.standardSubstitute(irc, msg, text) irc.noReply() m = ircmsgs.quit(text) world.upkeep() diff --git a/scripts/supybot b/scripts/supybot index 00ebd9bf2..a658ea78a 100644 --- a/scripts/supybot +++ b/scripts/supybot @@ -69,6 +69,7 @@ import supybot.i18n as i18n import supybot.utils as utils import supybot.registry as registry import supybot.questions as questions +import supybot.ircutils as ircutils from supybot.version import version @@ -104,6 +105,7 @@ def main(): for irc in world.ircs: quitmsg = conf.supybot.plugins.Owner.quitMsg() or \ 'Ctrl-C at console.' + quitmsg = ircutils.standardSubstitute(irc, None, quitmsg) irc.queueMsg(ircmsgs.quit(quitmsg)) irc.die() except SystemExit as e: diff --git a/src/ircutils.py b/src/ircutils.py index 324c455bc..c7968954a 100644 --- a/src/ircutils.py +++ b/src/ircutils.py @@ -49,7 +49,7 @@ from cStringIO import StringIO as sio from . import utils from . import minisix - +from .version import version def debug(s, *args): """Prints a debug string. Most likely replaced by our logging debug.""" @@ -690,6 +690,7 @@ def standardSubstitute(irc, msg, text, env=None): 'm': localtime[4], 'min': localtime[4], 'minute': localtime[4], 's': localtime[5], 'sec': localtime[5], 'second': localtime[5], 'tz': time.strftime('%Z', localtime), + 'version': 'Supybot %s' % version, }) if irc: vars.update({