]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - lib/rbot/core/config.rb
+ core/config: sort config search result
[user/henk/code/ruby/rbot.git] / lib / rbot / core / config.rb
index 38140f18b6599979abb2a72a78c099387553eb10..d887855d33614350b554cdc94d21e9b7903f0ed5 100644 (file)
@@ -4,16 +4,14 @@
 # :title: rbot config management from IRC
 #
 # Author:: Giuseppe "Oblomov" Bilotta <giuseppe.bilotta@gmail.com>
-# Copyright:: (C) 2006,2007 Giuseppe Bilotta
-# License:: GPL v2
 
 class ConfigModule < CoreBotModule
 
   def version_string
     if $version_timestamp.to_i > 0
-      ago = String.new ' ['
-      ago << Utils.secs_to_string(Time.now.to_i - $version_timestamp.to_i)
-      ago << ' ago]'
+      ago = _(" [%{secs} ago]") % {
+        :secs => Utils.secs_to_string(Time.now.to_i - $version_timestamp.to_i)
+      }
     else
       ago = ''
     end
@@ -74,13 +72,13 @@ class ConfigModule < CoreBotModule
     rx = Regexp.new(params[:rx].to_s, true)
     cfs = []
     @bot.config.items.each do |k, v|
-      cfs << v if k.to_s.match(rx) or (v.desc.match(rx) rescue false)
+      cfs << [Bold + k.to_s + Bold, v.desc] if k.to_s.match(rx) or (v.desc.match(rx) rescue false)
     end
     if cfs.empty?
       m.reply _("no config key found matching %{r}") % { :r => params[:rx].to_s}
     else
-      m.reply _("possible keys: %{kl}") % { :kl => cfs.map { |c| c.key}.join(', ') }
-      m.reply cfs.map { |c| [c.key, c.desc].join(': ') }.join("\n")
+      m.reply _("possible keys: %{kl}") % { :kl => cfs.map { |c| c.first}.sort.join(', ') } if cfs.length > 1
+      m.reply cfs.map { |c| c.join(': ') }.join("\n")
     end
   end
 
@@ -183,6 +181,7 @@ class ConfigModule < CoreBotModule
 
   def bot_nick(m, param)
     @bot.nickchg(param[:nick])
+    @bot.wanted_nick = param[:nick]
   end
 
   def bot_status(m, param)