@trigger << Regexp.new(rex, true)
else
rex.sub!(/^(["'])(.*)\1$/, '\2')
- @trigger << Regexp.new(/\b#{Regexp.escape(rex)}\b/ui)
+ @trigger << Regexp.new(/\b#{Regexp.escape(rex)}(?:\b|$)/ui)
end
end
def rm_reply(num)
@replies.delete_at(num-1)
+ make_ranges
return @raw_replies.delete_at(num-1)
end
return unless reply
args = reply.apply(subs)
if args[0] == :cmd
- new_m = PrivMessage.new(@bot, m.server, m.source, m.target, @bot.nick+": "+args[1])
- @bot.plugins.delegate "listen", new_m
- @bot.plugins.privmsg(new_m) if new_m.address?
+ begin
+ # Pass the new message back to the bot.
+ # FIXME Maybe we should do it the alias way, only calling
+ # @bot.plugins.privmsg() ?
+ fake_message(@bot.nick+": "+args[1], :from => m)
+ rescue RecurseTooDeep => e
+ error e
+ end
else
m.__send__(*args)
end
def handle_rm(m, params)
trigger = params[:trigger].to_s
- n = params[:n].to_i rescue nil
+ n = params[:n]
+ n = n.to_i if n
debug trigger.inspect
found = find_reaction(trigger)
purged = nil