def index(f)
fact = f.to_s
return if fact.empty?
- self.map { |f| f[:fact] }.index(fact)
+ self.map { |fs| fs[:fact] }.index(fact)
end
def delete(f)
end
def help(plugin, topic="")
- _("factoids plugin: learn that <factoid>, forget that <factoids>, facts about <words>")
+ case plugin
+ when 'learn'
+ _("learn that <factoid> => learn a factoid")
+ when 'forget'
+ _("forget fact <#num> => forget factoid number #num ; forget about <factoid> => forget a factoid")
+ else
+ _("factoids plugin: learn that <factoid>, forget that <factoid>, facts about <words>")
+ end
end
def learn(m, params)
if params[:words].nil_or_empty? and params[:rx].nil_or_empty?
m.reply _("I know %{total} facts" % { :total => total })
else
- if params[:words].empty?
+ unless params.key? :words and not params[:words].empty?
rx = Regexp.new(params[:rx].to_s, true)
else
rx = words2rx(params[:words])
known = @factoids.grep(rx)
reply = []
if known.empty?
- reply << _("I know nothing about %{words}" % params)
+ if params.key? :words
+ reply << _("I know nothing about %{words}" % params)
+ else params.key? :rx
+ reply << _("I know nothing matching %{rx}" % params)
+ end
else
max_facts = @bot.config['factoids.search_results']
len = known.length