action = params[:action]
user = params[:option]
case action
- when 'remove':
+ when 'remove'
if @bot.config['markov.ignore'].include? user
s = @bot.config['markov.ignore']
s.delete user
else
m.reply _("not found in list")
end
- when 'add':
+ when 'add'
if user
if @bot.config['markov.ignore'].include?(user)
m.reply _("%{u} already in list") % { :u => user }
else
m.reply _("give the name of a person or channel to ignore")
end
- when 'list':
+ when 'list'
m.reply _("I'm ignoring %{ignored}") % { :ignored => @bot.config['markov.ignore'].join(", ") }
else
m.reply _("have markov ignore the input from a hostmask or a channel. usage: markov ignore add <mask or channel>; markov ignore remove <mask or channel>; markov ignore list")
def random_markov(m, message)
return unless should_talk
- word1, word2 = message.split(/\s+/)
+ word1, word2 = clean_str(message).split(/\s+/)
return unless word1 and word2
line = generate_string(word1.intern, word2.intern)
return unless line
return if ignore? m
# in channel message, the kind we are interested in
- message = clean_str m.plainmessage
+ message = m.plainmessage
if m.action?
message = "#{m.sourcenick} #{message}"
def learn_line(message)
# debug "learning #{message.inspect}"
- wordlist = message.split(/\s+/).map { |w| w.intern }
+ wordlist = clean_str(message).split(/\s+/).map { |w| w.intern }
return unless wordlist.length >= 2
word1, word2 = MARKER, MARKER
wordlist << MARKER