]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - po/en_US/rbot.po
extends: BotModule#fake_message() to simplify creation of fake messages
[user/henk/code/ruby/rbot.git] / po / en_US / rbot.po
index 53e8f2a4e133bac1480dc21108bbf0588e1ff99d..73651ccc369d5f7e653cc81e86c915c21d64be5f 100644 (file)
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rbot\n"
-"POT-Creation-Date: 2007-10-22 01:22+0200\n"
+"POT-Creation-Date: 2008-04-08 00:11+0200\n"
 "PO-Revision-Date: 2007-07-14 00:06-0400\n"
 "Last-Translator: Yaohan Chen <yaohan.chen@gmail.com>\n"
 "Language-Team: English\n"
@@ -39,23 +39,23 @@ msgstr ""
 msgid "Set true to allow new botusers to be created automatically"
 msgstr ""
 
-#: lib/rbot/botuser.rb:885
+#: lib/rbot/botuser.rb:897
 msgid "%{user}, you don't have '%{command}' permissions here"
 msgstr "%{user}, you don't have '%{command}' permissions here"
 
-#: lib/rbot/config.rb:196
+#: lib/rbot/config.rb:217
 msgid "%{desc} [valid values are: %{values}]"
 msgstr "%{desc} [valid values are: %{values}]"
 
-#: lib/rbot/config.rb:326
+#: lib/rbot/config.rb:351
 msgid "First time rbot configuration wizard"
 msgstr "First time rbot configuration wizard"
 
-#: lib/rbot/config.rb:329
+#: lib/rbot/config.rb:354
 msgid "This wizard will ask you a few questions to get you started."
 msgstr "This wizard will ask you a few questions to get you started."
 
-#: lib/rbot/config.rb:330
+#: lib/rbot/config.rb:355
 msgid ""
 "The rest of rbot's configuration can be manipulated via IRC once rbot is "
 "connected and you are auth'd."
@@ -84,6 +84,7 @@ msgid "you probably forgot a comma"
 msgstr "you probably forgot a comma"
 
 #: lib/rbot/core/auth.rb:111 lib/rbot/core/auth.rb:165
+#: lib/rbot/core/auth.rb:231
 msgid "couldn't find botuser %{name}"
 msgstr "couldn't find botuser %{name}"
 
@@ -119,35 +120,61 @@ msgstr "no permissions set for %{user}"
 msgid "permissions for %{user}:: %{permissions}"
 msgstr "permissions for %{user}:: %{permissions}"
 
-#: lib/rbot/core/auth.rb:203
+#: lib/rbot/core/auth.rb:199
+msgid ". only %{max} will be shown"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:200
+msgid "%{count} commands found matching %{pattern}%{extra}"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:205
+msgid "%{cmd}: %{perms}"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:262
+msgid "%{user} can already do that"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:264
+msgid "%{user} can't do that already"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:274
+msgid ""
+"sorry, %{cmd} doesn't look like a valid command. maybe you misspelled it, or "
+"you need to specify it should be in private?"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:297
 msgid "welcome, %{user}"
 msgstr "welcome, %{user}"
 
-#: lib/rbot/core/auth.rb:218
+#: lib/rbot/core/auth.rb:312
 msgid "sorry, can't do"
 msgstr "sorry, can't do"
 
-#: lib/rbot/core/auth.rb:221
+#: lib/rbot/core/auth.rb:315
 msgid "couldn't login: %{exception}"
 msgstr "couldn't login: %{exception}"
 
-#: lib/rbot/core/auth.rb:229
+#: lib/rbot/core/auth.rb:323
 msgid "I couldn't find anything to let you login automatically"
 msgstr "I couldn't find anything to let you login automatically"
 
-#: lib/rbot/core/auth.rb:240
+#: lib/rbot/core/auth.rb:334
 msgid "you are %{who}"
 msgstr "you are %{who}"
 
-#: lib/rbot/core/auth.rb:242 lib/rbot/core/auth.rb:255
+#: lib/rbot/core/auth.rb:336 lib/rbot/core/auth.rb:349
 msgid "no one that I know"
 msgstr "no one that I know"
 
-#: lib/rbot/core/auth.rb:243 lib/rbot/core/auth.rb:256
+#: lib/rbot/core/auth.rb:337 lib/rbot/core/auth.rb:350
 msgid "my boss"
 msgstr "my boss"
 
-#: lib/rbot/core/auth.rb:263
+#: lib/rbot/core/auth.rb:357
 msgid ""
 "login [<botuser>] [<pass>]: logs in to the bot as botuser <botuser> with "
 "password <pass>. When using the full form, you must contact the bot in "
@@ -161,16 +188,16 @@ msgstr ""
 "netmask is among the known ones. if <botuser> is omitted too autologin will "
 "be attempted"
 
-#: lib/rbot/core/auth.rb:265
+#: lib/rbot/core/auth.rb:359
 msgid "whoami: names the botuser you're linked to"
 msgstr "whoami: names the botuser you're linked to"
 
-#: lib/rbot/core/auth.rb:267
+#: lib/rbot/core/auth.rb:361
 #, fuzzy
 msgid "who is <user>: names the botuser <user> is linked to"
 msgstr "whoami: names the botuser you're linked to"
 
-#: lib/rbot/core/auth.rb:271
+#: lib/rbot/core/auth.rb:365
 msgid ""
 "a permission is specified as module::path::to::cmd; when you want to enable "
 "it, prefix it with +; when you want to disable it, prefix it with -; when "
@@ -180,7 +207,7 @@ msgstr ""
 "it, prefix it with +; when you want to disable it, prefix it with -; when "
 "using the +reset+ command, do not use any prefix"
 
-#: lib/rbot/core/auth.rb:273
+#: lib/rbot/core/auth.rb:367
 msgid ""
 "permissions [re]set <permission> [in <channel>] for <user>: sets or resets "
 "the permissions for botuser <user> in channel <channel> (use ? to change the "
@@ -190,15 +217,23 @@ msgstr ""
 "the permissions for botuser <user> in channel <channel> (use ? to change the "
 "permissions for private addressing)"
 
-#: lib/rbot/core/auth.rb:275
+#: lib/rbot/core/auth.rb:369
 msgid "permissions view [for <user>]: display the permissions for user <user>"
 msgstr "permissions view [for <user>]: display the permissions for user <user>"
 
-#: lib/rbot/core/auth.rb:277
-msgid "permission topics: syntax, (re)set, view"
+#: lib/rbot/core/auth.rb:371
+#, fuzzy
+msgid ""
+"permissions search <pattern>: display the permissions associated with the "
+"commands matching <pattern>"
+msgstr "permissions view [for <user>]: display the permissions for user <user>"
+
+#: lib/rbot/core/auth.rb:373
+#, fuzzy
+msgid "permission topics: syntax, (re)set, view, search"
 msgstr "permission topics: syntax, (re)set, view"
 
-#: lib/rbot/core/auth.rb:282
+#: lib/rbot/core/auth.rb:378
 msgid ""
 "user show <what> : shows info about the user; <what> can be any of "
 "autologin, login-by-mask, netmasks"
@@ -206,7 +241,7 @@ msgstr ""
 "user show <what> : shows info about the user; <what> can be any of "
 "autologin, login-by-mask, netmasks"
 
-#: lib/rbot/core/auth.rb:284
+#: lib/rbot/core/auth.rb:380
 msgid ""
 "user enable|disable <what> : turns on or off <what> (autologin, login-by-"
 "mask)"
@@ -214,7 +249,7 @@ msgstr ""
 "user enable|disable <what> : turns on or off <what> (autologin, login-by-"
 "mask)"
 
-#: lib/rbot/core/auth.rb:286
+#: lib/rbot/core/auth.rb:382
 msgid ""
 "user set password <blah> : sets the user password to <blah>; passwords can "
 "only contain upper and lowercase letters and numbers, and must be at least 4 "
@@ -224,7 +259,7 @@ msgstr ""
 "only contain upper and lowercase letters and numbers, and must be at least 4 "
 "characters long"
 
-#: lib/rbot/core/auth.rb:288
+#: lib/rbot/core/auth.rb:384
 msgid ""
 "user add|rm netmask <mask> : adds/removes netmask <mask> from the list of "
 "netmasks known to the botuser you're linked to"
@@ -232,7 +267,7 @@ msgstr ""
 "user add|rm netmask <mask> : adds/removes netmask <mask> from the list of "
 "netmasks known to the botuser you're linked to"
 
-#: lib/rbot/core/auth.rb:290
+#: lib/rbot/core/auth.rb:386
 msgid ""
 "user reset <what> : resets <what> to the default values. <what> can be "
 "+netmasks+ (the list will be emptied), +autologin+ or +login-by-mask+ (will "
@@ -244,7 +279,7 @@ msgstr ""
 "be reset to the default value) or +password+ (a new one will be generated "
 "and you'll be told in private)"
 
-#: lib/rbot/core/auth.rb:292
+#: lib/rbot/core/auth.rb:388
 msgid ""
 "user tell <who> the password for <botuser> : contacts <who> in private to "
 "tell him/her the password for <botuser>"
@@ -252,7 +287,7 @@ msgstr ""
 "user tell <who> the password for <botuser> : contacts <who> in private to "
 "tell him/her the password for <botuser>"
 
-#: lib/rbot/core/auth.rb:294
+#: lib/rbot/core/auth.rb:390
 msgid ""
 "user create <name> <password> : create botuser named <name> with password "
 "<password>. The password can be omitted, in which case a random one will be "
@@ -264,18 +299,18 @@ msgstr ""
 "generated. The <name> should only contain alphanumeric characters and the "
 "underscore (_)"
 
-#: lib/rbot/core/auth.rb:296
+#: lib/rbot/core/auth.rb:392
 msgid "user list : lists all the botusers"
 msgstr "user list : lists all the botusers"
 
-#: lib/rbot/core/auth.rb:298
+#: lib/rbot/core/auth.rb:394
+#, fuzzy
 msgid ""
-"user destroy <botuser> <password> : destroys <botuser>; this function %"
-"{highlight}must%{highlight} be called in two steps. On the first call, no "
-"password must be specified: <botuser> is then queued for destruction. On the "
-"second call, you must specify the correct password for <botuser>, and it "
-"will be destroyed. If you want to cancel the destruction, issue the command "
-"+user cancel destroy <botuser>+"
+"user destroy <botuser> : destroys <botuser>. This function %{highlight}must%"
+"{highlight} be called in two steps. On the first call <botuser> is queued "
+"for destruction. On the second call, which must be in the form 'user confirm "
+"destroy <botuser>', the botuser will be destroyed. If you want to cancel the "
+"destruction, issue the command 'user cancel destroy <botuser>'"
 msgstr ""
 "user destroy <botuser> <password> : destroys <botuser>; this function %"
 "{highlight}must%{highlight} be called in two steps. On the first call, no "
@@ -284,7 +319,7 @@ msgstr ""
 "will be destroyed. If you want to cancel the destruction, issue the command "
 "+user cancel destroy <botuser>+"
 
-#: lib/rbot/core/auth.rb:300
+#: lib/rbot/core/auth.rb:396
 msgid ""
 "user topics: show, enable|disable, add|rm netmask, set, reset, tell, create, "
 "list, destroy"
@@ -292,285 +327,331 @@ msgstr ""
 "user topics: show, enable|disable, add|rm netmask, set, reset, tell, create, "
 "list, destroy"
 
-#: lib/rbot/core/auth.rb:303
+#: lib/rbot/core/auth.rb:399
+#, fuzzy
 msgid ""
 "auth <masterpassword>: log in as the bot owner; other commands: login, "
-"whoami, permission syntax, permissions [re]set, permissions view, user"
+"whoami, permission syntax, permissions [re]set, permissions view, user, "
+"meet, hello, allow, prevent"
 msgstr ""
 "auth <masterpassword>: log in as the bot owner; other commands: login, "
 "whoami, permission syntax, permissions [re]set, permissions view, user"
 
-#: lib/rbot/core/auth.rb:305
+#: lib/rbot/core/auth.rb:401
+msgid ""
+"meet <nick> [as <user>]: creates a bot user for nick, calling it user "
+"(defaults to the nick itself)"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:403
+msgid "hello: creates a bot user for the person issuing the command"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:405
+msgid ""
+"allow <user> to do <sample command> [<where>]: gives botuser <user> the "
+"permissions to execute a command such as the provided sample command (in "
+"private or in channel, according to the optional <where>)"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:407
+msgid ""
+"deny <user> from doing <sample command> [<where>]: removes from botuser "
+"<user> the permissions to execute a command such as the provided sample "
+"command (in private or in channel, according to the optional <where>)"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:409
 #, fuzzy
-msgid "auth commands: auth, login, whoami, who, permission[s], user"
+msgid ""
+"auth commands: auth, login, whoami, who, permission[s], user, meet, hello, "
+"allow, deny"
 msgstr "auth commands: auth, login, whoami, permission[s], user"
 
-#: lib/rbot/core/auth.rb:310
+#: lib/rbot/core/auth.rb:414
 msgid "sorry, I need more arguments to %{command}"
 msgstr "sorry, I need more arguments to %{command}"
 
-#: lib/rbot/core/auth.rb:314
+#: lib/rbot/core/auth.rb:418
 msgid "I can only %{command} these: %{arguments}"
 msgstr "I can only %{command} these: %{arguments}"
 
-#: lib/rbot/core/auth.rb:349
+#: lib/rbot/core/auth.rb:453
 #, fuzzy
 msgid "no such bot user %{user}"
 msgstr "no such botuser %{user}"
 
-#: lib/rbot/core/auth.rb:352
+#: lib/rbot/core/auth.rb:456
 msgid "you can't mess with %{user}"
 msgstr "you can't mess with %{user}"
 
-#: lib/rbot/core/auth.rb:363
+#: lib/rbot/core/auth.rb:468
 msgid "you can't see the properties of %{user}"
 msgstr "you can't see the properties of %{user}"
 
-#: lib/rbot/core/auth.rb:372
+#: lib/rbot/core/auth.rb:477
 msgid "no way I'm telling you the master password!"
 msgstr "no way I'm telling you the master password!"
 
-#: lib/rbot/core/auth.rb:373
+#: lib/rbot/core/auth.rb:478
 msgid "you can't ask for someone else's password"
 msgstr "you can't ask for someone else's password"
 
-#: lib/rbot/core/auth.rb:375
+#: lib/rbot/core/auth.rb:480
 msgid ""
 "c'mon, you can't be asking me seriously to tell you the password in public!"
 msgstr ""
 "c'mon, you can't be asking me seriously to tell you the password in public!"
 
-#: lib/rbot/core/auth.rb:376
+#: lib/rbot/core/auth.rb:481
 msgid "the password for %{user} is %{password}"
 msgstr "the password for %{user} is %{password}"
 
-#: lib/rbot/core/auth.rb:390
+#: lib/rbot/core/auth.rb:495
 msgid "can %{action}"
 msgstr "can %{action}"
 
-#: lib/rbot/core/auth.rb:392
+#: lib/rbot/core/auth.rb:497
 msgid "can not %{action}"
 msgstr "can not %{action}"
 
-#: lib/rbot/core/auth.rb:396
+#: lib/rbot/core/auth.rb:501
 msgid "knows no netmasks"
 msgstr "knows no netmasks"
 
-#: lib/rbot/core/auth.rb:398
+#: lib/rbot/core/auth.rb:503
 msgid "knows %{netmasks}"
 msgstr "knows %{netmasks}"
 
-#: lib/rbot/core/auth.rb:405 lib/rbot/core/auth.rb:432
-#: lib/rbot/core/auth.rb:450 lib/rbot/core/auth.rb:482
+#: lib/rbot/core/auth.rb:510 lib/rbot/core/auth.rb:537
+#: lib/rbot/core/auth.rb:555 lib/rbot/core/auth.rb:587
 msgid "you can't change the default user"
 msgstr "you can't change the default user"
 
-#: lib/rbot/core/auth.rb:406 lib/rbot/core/auth.rb:434
-#: lib/rbot/core/auth.rb:452 lib/rbot/core/auth.rb:484
+#: lib/rbot/core/auth.rb:511 lib/rbot/core/auth.rb:539
+#: lib/rbot/core/auth.rb:557 lib/rbot/core/auth.rb:589
 msgid "you can't edit %{user}"
 msgstr "you can't edit %{user}"
 
-#: lib/rbot/core/auth.rb:421 lib/rbot/core/auth.rb:468
+#: lib/rbot/core/auth.rb:526 lib/rbot/core/auth.rb:573
 msgid "I ignored %{things} because %{reason}"
 msgstr "I ignored %{things} because %{reason}"
 
-#: lib/rbot/core/auth.rb:425 lib/rbot/core/auth.rb:472
+#: lib/rbot/core/auth.rb:530 lib/rbot/core/auth.rb:577
 msgid "I haven't changed anything"
 msgstr "I haven't changed anything"
 
-#: lib/rbot/core/auth.rb:443
+#: lib/rbot/core/auth.rb:548
 msgid "is that a joke? setting the password in public?"
 msgstr "is that a joke? setting the password in public?"
 
-#: lib/rbot/core/auth.rb:475
+#: lib/rbot/core/auth.rb:580
 msgid "the password for %{user} is now %{password}"
 msgstr "the password for %{user} is now %{password}"
 
-#: lib/rbot/core/auth.rb:489
+#: lib/rbot/core/auth.rb:594
 msgid ""
 "I can only add/remove netmasks. See +help user add+ for more instructions"
 msgstr ""
 "I can only add/remove netmasks. See +help user add+ for more instructions"
 
-#: lib/rbot/core/auth.rb:510
+#: lib/rbot/core/auth.rb:615
 msgid "sorry, I don't know how to %{request}"
 msgstr "sorry, I don't know how to %{request}"
 
-#: lib/rbot/core/auth.rb:519
+#: lib/rbot/core/auth.rb:618
+#, fuzzy
+msgid "couldn't %{cmd}: %{exception}"
+msgstr "couldn't login: %{exception}"
+
+#: lib/rbot/core/auth.rb:647
+msgid ""
+"you are now registered as %{buname}. I created a random password for you : %"
+"{pass} and you can change it at any time by telling me 'user set password "
+"<password>' in private"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:654
+msgid "but I already know %{buname}"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:656
+msgid "I had problems meeting %{nick}: %{e}"
+msgstr ""
+
+#: lib/rbot/core/auth.rb:665
 msgid "couldn't find botuser %{user}"
 msgstr "couldn't find botuser %{user}"
 
-#: lib/rbot/core/auth.rb:521
-msgid "I'm not telling the master password to anyway, pal"
-msgstr "I'm not telling the master password to anyway, pal"
+#: lib/rbot/core/auth.rb:667
+msgid "I'm not telling the master password to anyone, pal"
+msgstr "I'm not telling the master password to anyone, pal"
 
-#: lib/rbot/core/auth.rb:522
+#: lib/rbot/core/auth.rb:668
 msgid "the password for botuser %{user} is %{password}"
 msgstr "the password for botuser %{user} is %{password}"
 
-#: lib/rbot/core/auth.rb:525
+#: lib/rbot/core/auth.rb:671
 msgid "I told %{user} that %{message}"
 msgstr "I told %{user} that %{message}"
 
-#: lib/rbot/core/auth.rb:531
+#: lib/rbot/core/auth.rb:677
 msgid "are you nuts, creating a botuser with a publicly known password?"
 msgstr "are you nuts, creating a botuser with a publicly known password?"
 
-#: lib/rbot/core/auth.rb:536
+#: lib/rbot/core/auth.rb:682
 msgid "failed to create %{user}: %{exception}"
 msgstr "failed to create %{user}: %{exception}"
 
-#: lib/rbot/core/auth.rb:540
+#: lib/rbot/core/auth.rb:686
 msgid "created botuser %{user}"
 msgstr "created botuser %{user}"
 
-#: lib/rbot/core/auth.rb:548
+#: lib/rbot/core/auth.rb:694
 msgid " (queued for destruction)"
 msgstr " (queued for destruction)"
 
-#: lib/rbot/core/auth.rb:551
+#: lib/rbot/core/auth.rb:697
 msgid "I have no botusers other than the default ones"
 msgstr "I have no botusers other than the default ones"
 
-#: lib/rbot/core/auth.rb:552
+#: lib/rbot/core/auth.rb:698
 msgid "botuser: %{list}"
 msgid_plural "botusers: %{list}"
 msgstr[0] "botuser: %{list}"
 msgstr[1] "botusers: %{list}"
 
-#: lib/rbot/core/auth.rb:559
+#: lib/rbot/core/auth.rb:705
 msgid "You can't destroy %{user}"
 msgstr "You can't destroy %{user}"
 
-#: lib/rbot/core/auth.rb:570
+#: lib/rbot/core/auth.rb:715
 msgid "no such botuser %{user}"
 msgstr "no such botuser %{user}"
 
-#: lib/rbot/core/auth.rb:576
+#: lib/rbot/core/auth.rb:722
 msgid "%{user} removed from the destruction queue"
 msgstr "%{user} removed from the destruction queue"
 
-#: lib/rbot/core/auth.rb:578
+#: lib/rbot/core/auth.rb:724
 msgid "%{user} was not queued for destruction"
 msgstr "%{user} was not queued for destruction"
 
-#: lib/rbot/core/auth.rb:585
+#: lib/rbot/core/auth.rb:729
+#, fuzzy
 msgid ""
-"%{user} already queued for destruction, use %{highlight}user destroy %{user} "
-"<password>%{highlight} to destroy it"
+"%{user} already queued for destruction, use %{highlight}user confirm destroy "
+"%{user}%{highlight} to destroy it"
 msgstr ""
 "%{user} already queued for destruction, use %{highlight}user destroy %{user} "
 "<password>%{highlight} to destroy it"
 
-#: lib/rbot/core/auth.rb:588
+#: lib/rbot/core/auth.rb:732
+#, fuzzy
 msgid ""
-"%{user} queued for destruction, use %{highlight}user destroy %{user} "
-"<password>%{highlight} to destroy it"
+"%{user} queued for destruction, use %{highlight}user confirm destroy %{user}%"
+"{highlight} to destroy it"
 msgstr ""
 "%{user} queued for destruction, use %{highlight}user destroy %{user} "
 "<password>%{highlight} to destroy it"
 
-#: lib/rbot/core/auth.rb:592
+#: lib/rbot/core/auth.rb:736
 msgid "%{user} is not queued for destruction yet"
 msgstr "%{user} is not queued for destruction yet"
 
-#: lib/rbot/core/auth.rb:594
-msgid "wrong password for %{user}"
-msgstr "wrong password for %{user}"
-
-#: lib/rbot/core/auth.rb:603 lib/rbot/core/auth.rb:643
+#: lib/rbot/core/auth.rb:745 lib/rbot/core/auth.rb:785
 msgid "failed: %{exception}"
 msgstr "failed: %{exception}"
 
-#: lib/rbot/core/auth.rb:605
+#: lib/rbot/core/auth.rb:747
 msgid "botuser %{user} destroyed"
 msgstr "botuser %{user} destroyed"
 
-#: lib/rbot/core/auth.rb:613
+#: lib/rbot/core/auth.rb:754
 msgid "please don't touch the default users"
 msgstr "please don't touch the default users"
 
-#: lib/rbot/core/auth.rb:622
+#: lib/rbot/core/auth.rb:763
 msgid "no such botuser %{source}"
 msgstr "no such botuser %{source}"
 
-#: lib/rbot/core/auth.rb:624
+#: lib/rbot/core/auth.rb:765
 msgid "botuser %{dest} exists already"
 msgstr "botuser %{dest} exists already"
 
-#: lib/rbot/core/auth.rb:645
+#: lib/rbot/core/auth.rb:788
 msgid "botuser %{source} copied to %{dest}"
 msgstr "botuser %{source} copied to %{dest}"
 
-#: lib/rbot/core/auth.rb:647
+#: lib/rbot/core/auth.rb:791
 msgid "botuser %{source} renamed to %{dest}"
 msgstr "botuser %{source} renamed to %{dest}"
 
-#: lib/rbot/core/auth.rb:666
+#: lib/rbot/core/auth.rb:811
 msgid "selecting data to export ..."
 msgstr "selecting data to export ..."
 
-#: lib/rbot/core/auth.rb:682
+#: lib/rbot/core/auth.rb:827
 msgid "preparing data for export ..."
 msgstr "preparing data for export ..."
 
-#: lib/rbot/core/auth.rb:705
+#: lib/rbot/core/auth.rb:850
 msgid "failed to prepare data: %{exception}"
 msgstr "failed to prepare data: %{exception}"
 
-#: lib/rbot/core/auth.rb:710
+#: lib/rbot/core/auth.rb:855
 msgid "exporting to %{file} ..."
 msgstr "exporting to %{file} ..."
 
-#: lib/rbot/core/auth.rb:717
+#: lib/rbot/core/auth.rb:862
 msgid "failed to export users: %{exception}"
 msgstr "failed to export users: %{exception}"
 
-#: lib/rbot/core/auth.rb:721 lib/rbot/core/auth.rb:799
+#: lib/rbot/core/auth.rb:866 lib/rbot/core/auth.rb:944
 msgid "done"
 msgstr "done"
 
-#: lib/rbot/core/auth.rb:738
+#: lib/rbot/core/auth.rb:883
 msgid "reading %{file} ..."
 msgstr "reading %{file} ..."
 
-#: lib/rbot/core/auth.rb:742
+#: lib/rbot/core/auth.rb:887
 msgid "failed to import from: %{exception}"
 msgstr "failed to import from: %{exception}"
 
-#: lib/rbot/core/auth.rb:749
+#: lib/rbot/core/auth.rb:894
 msgid "selecting data to import ..."
 msgstr "selecting data to import ..."
 
-#: lib/rbot/core/auth.rb:759
+#: lib/rbot/core/auth.rb:904
 msgid "parsing data from import ..."
 msgstr "parsing data from import ..."
 
-#: lib/rbot/core/auth.rb:779
+#: lib/rbot/core/auth.rb:924
 msgid "failed to parse data: %{exception}"
 msgstr "failed to parse data: %{exception}"
 
-#: lib/rbot/core/basics.rb:105
+#: lib/rbot/core/basics.rb:111
 msgid "quit [<message>] => quit IRC with message <message>"
 msgstr "quit [<message>] => quit IRC with message <message>"
 
-#: lib/rbot/core/basics.rb:107
+#: lib/rbot/core/basics.rb:113
 msgid "restart => completely stop and restart the bot (including reconnect)"
 msgstr "restart => completely stop and restart the bot (including reconnect)"
 
-#: lib/rbot/core/basics.rb:111
+#: lib/rbot/core/basics.rb:117
 msgid "part"
 msgstr "part"
 
-#: lib/rbot/core/basics.rb:113
+#: lib/rbot/core/basics.rb:119
 msgid "hide => part all channels"
 msgstr "hide => part all channels"
 
-#: lib/rbot/core/basics.rb:115
+#: lib/rbot/core/basics.rb:121
 msgid "nick <nick> => attempt to change nick to <nick>"
 msgstr "nick <nick> => attempt to change nick to <nick>"
 
-#: lib/rbot/core/basics.rb:117
+#: lib/rbot/core/basics.rb:123
 msgid ""
 "say <channel>|<nick> <message> => say <message> to <channel> or in private "
 "message to <nick>"
@@ -578,7 +659,7 @@ msgstr ""
 "say <channel>|<nick> <message> => say <message> to <channel> or in private "
 "message to <nick>"
 
-#: lib/rbot/core/basics.rb:119
+#: lib/rbot/core/basics.rb:125
 msgid ""
 "action <channel>|<nick> <message> => does a /me <message> to <channel> or in "
 "private message to <nick>"
@@ -586,7 +667,7 @@ msgstr ""
 "action <channel>|<nick> <message> => does a /me <message> to <channel> or in "
 "private message to <nick>"
 
-#: lib/rbot/core/basics.rb:121
+#: lib/rbot/core/basics.rb:127
 msgid ""
 "quiet [in here|<channel>] => with no arguments, stop speaking in all "
 "channels, if \"in here\", stop speaking in this channel, or stop speaking in "
@@ -596,7 +677,7 @@ msgstr ""
 "channels, if \"in here\", stop speaking in this channel, or stop speaking in "
 "<channel>"
 
-#: lib/rbot/core/basics.rb:123
+#: lib/rbot/core/basics.rb:129
 msgid ""
 "talk [in here|<channel>] => with no arguments, resume speaking in all "
 "channels, if \"in here\", resume speaking in this channel, or resume "
@@ -606,11 +687,11 @@ msgstr ""
 "channels, if \"in here\", resume speaking in this channel, or resume "
 "speaking in <channel>"
 
-#: lib/rbot/core/basics.rb:125
+#: lib/rbot/core/basics.rb:131
 msgid "ping => replies with a pong"
 msgstr "ping => replies with a pong"
 
-#: lib/rbot/core/basics.rb:127
+#: lib/rbot/core/basics.rb:133
 msgid ""
 "mode <channel> <mode> <nicks> => set channel modes for <nicks> on <channel> "
 "to <mode>"
@@ -618,7 +699,7 @@ msgstr ""
 "mode <channel> <mode> <nicks> => set channel modes for <nicks> on <channel> "
 "to <mode>"
 
-#: lib/rbot/core/basics.rb:133
+#: lib/rbot/core/basics.rb:139
 #, fuzzy
 msgid ""
 "%{name}: quit, restart, join, part, hide, save, nick, say, action, topic, "
@@ -636,50 +717,58 @@ msgid "no such module %{module}"
 msgstr "no such module %{module}"
 
 #: lib/rbot/core/config.rb:49 lib/rbot/core/config.rb:60
-#: lib/rbot/core/config.rb:68 lib/rbot/core/config.rb:81
-#: lib/rbot/core/config.rb:107 lib/rbot/core/config.rb:130
+#: lib/rbot/core/config.rb:82 lib/rbot/core/config.rb:95
+#: lib/rbot/core/config.rb:121 lib/rbot/core/config.rb:144
 msgid "no such config key %{key}"
 msgstr "no such config key %{key}"
 
-#: lib/rbot/core/config.rb:73 lib/rbot/core/config.rb:92
-#: lib/rbot/core/config.rb:122 lib/rbot/core/config.rb:145
+#: lib/rbot/core/config.rb:72
+msgid "no config key found matching %{r}"
+msgstr ""
+
+#: lib/rbot/core/config.rb:74
+msgid "possible keys: %{kl}"
+msgstr ""
+
+#: lib/rbot/core/config.rb:87 lib/rbot/core/config.rb:106
+#: lib/rbot/core/config.rb:136 lib/rbot/core/config.rb:159
 msgid "this config change will take effect on the next restart"
 msgstr "this config change will take effect on the next restart"
 
-#: lib/rbot/core/config.rb:74 lib/rbot/core/config.rb:95
-#: lib/rbot/core/config.rb:123 lib/rbot/core/config.rb:146
+#: lib/rbot/core/config.rb:88 lib/rbot/core/config.rb:109
+#: lib/rbot/core/config.rb:137 lib/rbot/core/config.rb:160
 msgid "this config change will take effect on the next rescan"
 msgstr "this config change will take effect on the next rescan"
 
-#: lib/rbot/core/config.rb:88
+#: lib/rbot/core/config.rb:102
 msgid "failed to set %{key}: %{error}"
 msgstr "failed to set %{key}: %{error}"
 
-#: lib/rbot/core/config.rb:111 lib/rbot/core/config.rb:134
+#: lib/rbot/core/config.rb:125 lib/rbot/core/config.rb:148
 msgid "config key %{key} is not an array"
 msgstr "config key %{key} is not an array"
 
-#: lib/rbot/core/config.rb:118
+#: lib/rbot/core/config.rb:132
 msgid "failed to add %{value} to %{key}: %{error}"
 msgstr "failed to add %{value} to %{key}: %{error}"
 
-#: lib/rbot/core/config.rb:141
+#: lib/rbot/core/config.rb:155
 msgid "failed to remove %{value} from %{key}: %{error}"
 msgstr "failed to remove %{value} from %{key}: %{error}"
 
-#: lib/rbot/core/config.rb:155
+#: lib/rbot/core/config.rb:169
 msgid "saving ..."
 msgstr "saving ..."
 
-#: lib/rbot/core/config.rb:157
+#: lib/rbot/core/config.rb:171
 msgid "rescanning ..."
 msgstr "rescanning ..."
 
-#: lib/rbot/core/config.rb:159
+#: lib/rbot/core/config.rb:173
 msgid "done. %{plugin_status}"
 msgstr "done. %{plugin_status}"
 
-#: lib/rbot/core/config.rb:202
+#: lib/rbot/core/config.rb:216
 msgid ""
 "config list => list configuration modules, config list <module> => list "
 "configuration keys for module <module>"
@@ -687,25 +776,25 @@ msgstr ""
 "config list => list configuration modules, config list <module> => list "
 "configuration keys for module <module>"
 
-#: lib/rbot/core/config.rb:204
+#: lib/rbot/core/config.rb:218
 msgid "config get <key> => get configuration value for key <key>"
 msgstr "config get <key> => get configuration value for key <key>"
 
-#: lib/rbot/core/config.rb:206
+#: lib/rbot/core/config.rb:220
 msgid "reset key <key> to the default"
 msgstr "reset key <key> to the default"
 
-#: lib/rbot/core/config.rb:208
+#: lib/rbot/core/config.rb:222
 msgid ""
 "config set <key> <value> => set configuration value for key <key> to <value>"
 msgstr ""
 "config set <key> <value> => set configuration value for key <key> to <value>"
 
-#: lib/rbot/core/config.rb:210
+#: lib/rbot/core/config.rb:224
 msgid "config desc <key> => describe what key <key> configures"
 msgstr "config desc <key> => describe what key <key> configures"
 
-#: lib/rbot/core/config.rb:212
+#: lib/rbot/core/config.rb:226
 msgid ""
 "config add <value> to <key> => add value <value> to key <key> if <key> is an "
 "array"
@@ -713,7 +802,7 @@ msgstr ""
 "config add <value> to <key> => add value <value> to key <key> if <key> is an "
 "array"
 
-#: lib/rbot/core/config.rb:214
+#: lib/rbot/core/config.rb:228
 msgid ""
 "config rm <value> from <key> => remove value <value> from key <key> if <key> "
 "is an array"
@@ -721,7 +810,7 @@ msgstr ""
 "config rm <value> from <key> => remove value <value> from key <key> if <key> "
 "is an array"
 
-#: lib/rbot/core/config.rb:216
+#: lib/rbot/core/config.rb:230
 msgid ""
 "config module - bot configuration. usage: list, desc, get, set, unset, add, "
 "rm"
@@ -729,32 +818,41 @@ msgstr ""
 "config module - bot configuration. usage: list, desc, get, set, unset, add, "
 "rm"
 
-#: lib/rbot/core/config.rb:221
+#: lib/rbot/core/config.rb:235
 #, fuzzy
 msgid "nick <newnick> => change the bot nick to <newnick>, if possible"
 msgstr "nick <nick> => attempt to change nick to <nick>"
 
-#: lib/rbot/core/config.rb:223
+#: lib/rbot/core/config.rb:237
 msgid "status => display some information on the bot's status"
 msgstr ""
 
-#: lib/rbot/core/config.rb:225
+#: lib/rbot/core/config.rb:239
 msgid "save => save current dynamic data and configuration"
 msgstr "save => save current dynamic data and configuration"
 
-#: lib/rbot/core/config.rb:227
+#: lib/rbot/core/config.rb:241
 msgid "rescan => reload modules and static facts"
 msgstr "rescan => reload modules and static facts"
 
-#: lib/rbot/core/config.rb:229
+#: lib/rbot/core/config.rb:243
 msgid "version => describes software version"
 msgstr "version => describes software version"
 
-#: lib/rbot/core/config.rb:231
+#: lib/rbot/core/config.rb:245
 #, fuzzy
 msgid "config-related tasks: config, save, rescan, version, nick, status"
 msgstr "config-related tasks: config, save, rescan"
 
+#: lib/rbot/core/userdata.rb:148
+#, fuzzy
+msgid "%{key} data for %{user}: %{data}"
+msgstr "%{word} learned from %{user} on %{date}"
+
+#: lib/rbot/core/userdata.rb:154
+msgid "sorry, no %{key} data for %{user}"
+msgstr ""
+
 #: lib/rbot/core/utils/utils.rb:205
 msgid "year"
 msgstr ""
@@ -807,71 +905,90 @@ msgstr ""
 msgid " and "
 msgstr ""
 
-#: lib/rbot/core/userdata.rb:133
-#, fuzzy
-msgid "%{key} data for %{user}: %{data}"
-msgstr "%{word} learned from %{user} on %{date}"
+#: lib/rbot/core/filters_ui.rb:27
+msgid "no filters in group %{g}"
+msgstr ""
 
-#: lib/rbot/core/userdata.rb:139
-msgid "sorry, no %{key} data for %{user}"
+#: lib/rbot/core/filters_ui.rb:29
+msgid "no known filters"
+msgstr ""
+
+#: lib/rbot/core/filters_ui.rb:32
+msgid "known filters: "
+msgstr ""
+
+#: lib/rbot/core/filters_ui.rb:40
+msgid "no known filter groups"
+msgstr ""
+
+#: lib/rbot/core/filters_ui.rb:42
+msgid "known filter groups: "
+msgstr ""
+
+#: lib/rbot/core/filters_ui.rb:52
+msgid "no filters match %{pat}"
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1148
+#: lib/rbot/core/filters_ui.rb:54
+msgid "filters matching %{pat}: "
+msgstr ""
+
+#: lib/rbot/ircbot.rb:1165
 msgid "help topics: "
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1150
+#: lib/rbot/ircbot.rb:1167
 msgid " (help <topic> for more info)"
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1153
+#: lib/rbot/ircbot.rb:1170
 msgid "no help for topic %{topic}"
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1164
+#: lib/rbot/ircbot.rb:1181
 msgid ""
 "Uptime %{up}, %{plug} plugins active, %{sent} lines sent, %{recv} received."
 msgstr ""
 
-#: lib/rbot/plugins.rb:306
+#: lib/rbot/plugins.rb:315
 msgid "incorrect usage, ask for help using '%{command}'"
 msgstr "incorrect usage, ask for help using '%{command}'"
 
-#: lib/rbot/plugins.rb:578
+#: lib/rbot/plugins.rb:616
 msgid "%{count} core module loaded"
 msgid_plural "%{count} core modules loaded"
 msgstr[0] "%{count} core module loaded"
 msgstr[1] "%{count} core modules loaded"
 
-#: lib/rbot/plugins.rb:581
+#: lib/rbot/plugins.rb:619
 msgid "%{count} core module: %{list}"
 msgid_plural "%{count} core modules: %{list}"
 msgstr[0] "%{count} core module: %{list}"
 msgstr[1] "%{count} core modules: %{list}"
 
-#: lib/rbot/plugins.rb:587
+#: lib/rbot/plugins.rb:625
 msgid "no core botmodules loaded"
 msgstr "no core botmodules loaded"
 
-#: lib/rbot/plugins.rb:592
+#: lib/rbot/plugins.rb:630
 msgid "%{count} plugin loaded"
 msgid_plural "%{count} plugins loaded"
 msgstr[0] "%{count} plugin loaded"
 msgstr[1] "%{count} plugins loaded"
 
-#: lib/rbot/plugins.rb:595
+#: lib/rbot/plugins.rb:633
 msgid "%{count} plugin: %{list}"
 msgid_plural "%{count} plugins: %{list}"
 msgstr[0] "%{count} plugin: %{list}"
 msgstr[1] "%{count} plugins: %{list}"
 
-#: lib/rbot/plugins.rb:606
+#: lib/rbot/plugins.rb:644
 msgid "%{highlight}%{count} plugin ignored%{highlight}"
 msgid_plural "%{highlight}%{count} plugins ignored%{highlight}"
 msgstr[0] "%{highlight}%{count} plugin ignored%{highlight}"
 msgstr[1] "%{highlight}%{count} plugins ignored%{highlight}"
 
-#: lib/rbot/plugins.rb:611
+#: lib/rbot/plugins.rb:649
 msgid ""
 "%{highlight}%{count} plugin ignored%{highlight}: use %{bold}%{command}%"
 "{bold} to see why"
@@ -885,13 +1002,13 @@ msgstr[1] ""
 "%{highlight}%{count} plugins ignored%{highlight}: use %{bold}%{command}%"
 "{bold} to see why"
 
-#: lib/rbot/plugins.rb:621
+#: lib/rbot/plugins.rb:659
 msgid "%{highlight}%{count} plugin failed to load%{highlight}"
 msgid_plural "%{highlight}%{count} plugins failed to load%{highlight}"
 msgstr[0] "%{highlight}%{count} plugin failed to load%{highlight}"
 msgstr[1] "%{highlight}%{count} plugins failed to load%{highlight}"
 
-#: lib/rbot/plugins.rb:626
+#: lib/rbot/plugins.rb:664
 msgid ""
 "%{highlight}%{count} plugin failed to load%{highlight}: use %{bold}%"
 "{command}%{bold} to see why"
@@ -905,11 +1022,11 @@ msgstr[1] ""
 "%{highlight}%{count} plugins failed to load%{highlight}: use %{bold}%"
 "{command}%{bold} to see why"
 
-#: lib/rbot/plugins.rb:656
+#: lib/rbot/plugins.rb:694
 msgid "no plugins failed to load"
 msgstr "no plugins failed to load"
 
-#: lib/rbot/plugins.rb:658
+#: lib/rbot/plugins.rb:696
 msgid ""
 "%{highlight}%{plugin}%{highlight} in %{dir} failed with error %{exception}: %"
 "{reason}"
@@ -917,15 +1034,15 @@ msgstr ""
 "%{highlight}%{plugin}%{highlight} in %{dir} failed with error %{exception}: %"
 "{reason}"
 
-#: lib/rbot/plugins.rb:662
+#: lib/rbot/plugins.rb:700
 msgid "at %{backtrace}"
 msgstr "at %{backtrace}"
 
-#: lib/rbot/plugins.rb:668
+#: lib/rbot/plugins.rb:706
 msgid "no plugins were ignored"
 msgstr "no plugins were ignored"
 
-#: lib/rbot/plugins.rb:672
+#: lib/rbot/plugins.rb:710
 msgid "overruled by previous"
 msgstr "overruled by previous"
 
@@ -977,30 +1094,36 @@ msgid ""
 "versa"
 msgstr ""
 
-#: data/rbot/plugins/alias.rb:131
+#: data/rbot/plugins/alias.rb:119
+msgid "Error mapping %{text} as command: %{error}"
+msgstr ""
+
+#: data/rbot/plugins/alias.rb:137
 msgid ""
 "The alias seems to have caused infinite recursion. Please examine your alias "
 "definitions"
 msgstr ""
 
-#: data/rbot/plugins/alias.rb:147
-msgid "Error handling the alias, the command is not defined"
+#: data/rbot/plugins/alias.rb:153
+msgid ""
+"Error handling the alias, The alias %{text} is not defined or has beeen "
+"removed. I will stop responding to it after rescan,"
 msgstr ""
 
-#: data/rbot/plugins/alias.rb:157
+#: data/rbot/plugins/alias.rb:165
 msgid "Create and use aliases for commands. Topics: create, commands"
 msgstr ""
 
-#: data/rbot/plugins/alias.rb:159
+#: data/rbot/plugins/alias.rb:174
 msgid ""
 "\"alias <text> => <command>\" => add text as an alias of command. Text can "
 "contain placeholders marked with : or * for :words and *multiword arguments. "
 "The command can contain placeholders enclosed with < > which will be "
 "substituded with argument values. For example: alias googlerbot *terms => "
-"google site:linuxbrit.co.uk/rbot/ <terms>"
+"google site:ruby-rbot.org <terms>"
 msgstr ""
 
-#: data/rbot/plugins/alias.rb:161
+#: data/rbot/plugins/alias.rb:176
 msgid ""
 "alias list => list defined aliases | alias whatis <alias> => show definition "
 "of the alias | alias remove <alias> => remove defined alias | see the "
@@ -1115,22 +1238,117 @@ msgid ""
 "information"
 msgstr ""
 
+#: data/rbot/plugins/factoids.rb:32
+#, fuzzy
+msgid "from %{who}"
+msgstr "you are %{who}"
+
+#: data/rbot/plugins/factoids.rb:35
+msgid "on %{when}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:38
+msgid "in %{where}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:41
+msgid " [%{data}]"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:142
+msgid "%{name} (%{fname}) must be under %{dir}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:149
+msgid "%{name} is not a file"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:163
+msgid "fact must be the last field"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:170
+msgid "%{name} (%{fname}) doesn't exist"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:263
+msgid ""
+"factoids plugin: learn that <factoid>, forget that <factoids>, facts about "
+"<words>"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:292 data/rbot/plugins/factoids.rb:404
+#: data/rbot/plugins/factoids.rb:436
+msgid "please select a fact number between 1 and %{total}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:296
+msgid "I forgot that %{factoid}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:299
+msgid "I couldn't delete factoid %{idx}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:307
+#, fuzzy
+msgid "I didn't know that %{factoid}"
+msgstr "I don't know any %{lang} word %{word}"
+
+#: data/rbot/plugins/factoids.rb:314
+msgid "[%{idx}/%{total}] %{fact}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:342
+msgid "I know %{total} facts"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:352 data/rbot/plugins/factoids.rb:420
+#, fuzzy
+msgid "I know nothing about %{words}"
+msgstr "I already know the %{lang} word %{word}"
+
+#: data/rbot/plugins/factoids.rb:357
+msgid "%{len} out of %{total} facts refer to %{words}, I'll only show %{max}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:412
+msgid "I know nothing"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:452
+msgid "not a date '%{dstr}'"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:460
+msgid "couldn't change learn data for fact %{fact}: %{err}"
+msgstr ""
+
+#: data/rbot/plugins/factoids.rb:475
+#, fuzzy
+msgid "failed to import facts from %{fname}: %{err}"
+msgstr "failed to remove %{value} from %{key}: %{error}"
+
+#: data/rbot/plugins/factoids.rb:480
+msgid "%{len} facts loaded from %{fname}"
+msgstr ""
+
 #: data/rbot/plugins/figlet.rb:7
 msgid "Path to the figlet program"
 msgstr ""
 
-#: data/rbot/plugins/games/azgame.rb:69 data/rbot/plugins/games/azgame.rb:236
-#: data/rbot/plugins/games/azgame.rb:242
+#: data/rbot/plugins/games/azgame.rb:78 data/rbot/plugins/games/azgame.rb:251
+#: data/rbot/plugins/games/azgame.rb:257
 msgid "%{count} try"
 msgid_plural "%{count} tries"
 msgstr[0] "%{count} try"
 msgstr[1] "%{count} tries"
 
-#: data/rbot/plugins/games/azgame.rb:74
+#: data/rbot/plugins/games/azgame.rb:83
 msgid "winner, %{tries}"
 msgstr ""
 
-#: data/rbot/plugins/games/azgame.rb:153
+#: data/rbot/plugins/games/azgame.rb:163
 msgid ""
 "%{bold}BINGO!%{bold} the word was %{underline}%{word}%{underline}. Congrats, "
 "%{bold}%{player}%{bold}!"
@@ -1138,45 +1356,45 @@ msgstr ""
 "%{bold}BINGO!%{bold} the word was %{underline}%{word}%{underline}. Congrats, "
 "%{bold}%{player}%{bold}!"
 
-#: data/rbot/plugins/games/azgame.rb:160
+#: data/rbot/plugins/games/azgame.rb:170
 msgid ""
 "The game was won after %{tries} tries. Scores for this game:    %{scores}"
 msgstr ""
 "The game was won after %{tries} tries. Scores for this game:    %{scores}"
 
-#: data/rbot/plugins/games/azgame.rb:163
+#: data/rbot/plugins/games/azgame.rb:173
 msgid "%{word} is not in the range %{bold}%{range}%{bold}"
 msgstr "%{word} is not in the range %{bold}%{range}%{bold}"
 
-#: data/rbot/plugins/games/azgame.rb:165
+#: data/rbot/plugins/games/azgame.rb:177
 msgid "%{word} doesn't exist or is not acceptable for the game"
 msgstr "%{word} doesn't exist or is not acceptable for the game"
 
-#: data/rbot/plugins/games/azgame.rb:169
+#: data/rbot/plugins/games/azgame.rb:183
 msgid "close, but no cigar. New range: %{bold}%{range}%{bold}"
 msgstr "close, but no cigar. New range: %{bold}%{range}%{bold}"
 
-#: data/rbot/plugins/games/azgame.rb:173
+#: data/rbot/plugins/games/azgame.rb:187
 msgid "%{word} is already one of the range extrema: %{range}"
 msgstr "%{word} is already one of the range extrema: %{range}"
 
-#: data/rbot/plugins/games/azgame.rb:175
+#: data/rbot/plugins/games/azgame.rb:189
 msgid "hm, something went wrong while verifying %{word}"
 msgstr "hm, something went wrong while verifying %{word}"
 
-#: data/rbot/plugins/games/azgame.rb:183
+#: data/rbot/plugins/games/azgame.rb:198
 msgid "no A-Z game running here, can't check if %{word} is valid, can I?"
 msgstr "no A-Z game running here, can't check if %{word} is valid, can I?"
 
-#: data/rbot/plugins/games/azgame.rb:187
+#: data/rbot/plugins/games/azgame.rb:202
 msgid "I only accept single words composed by letters only, sorry"
 msgstr "I only accept single words composed by letters only, sorry"
 
-#: data/rbot/plugins/games/azgame.rb:197
+#: data/rbot/plugins/games/azgame.rb:212
 msgid "the word in %{bold}%{range}%{bold} was:   %{bold}%{word}%{bold}"
 msgstr "the word in %{bold}%{range}%{bold} was:   %{bold}%{word}%{bold}"
 
-#: data/rbot/plugins/games/azgame.rb:201
+#: data/rbot/plugins/games/azgame.rb:216
 msgid ""
 "The game was cancelled after %{tries} tries. Scores for this game would have "
 "been:    %{scores}"
@@ -1184,87 +1402,88 @@ msgstr ""
 "The game was cancelled after %{tries} tries. Scores for this game would have "
 "been:    %{scores}"
 
-#: data/rbot/plugins/games/azgame.rb:204
+#: data/rbot/plugins/games/azgame.rb:219
 msgid "no A-Z game running in this channel ..."
 msgstr "no A-Z game running in this channel ..."
 
-#: data/rbot/plugins/games/azgame.rb:214
+#: data/rbot/plugins/games/azgame.rb:229
 msgid "let me think ..."
 msgstr "let me think ..."
 
-#: data/rbot/plugins/games/azgame.rb:218
+#: data/rbot/plugins/games/azgame.rb:233
 msgid "couldn't think of anything ..."
 msgstr "couldn't think of anything ..."
 
-#: data/rbot/plugins/games/azgame.rb:222
+#: data/rbot/plugins/games/azgame.rb:237
 msgid "I can't play A-Z in %{lang}, sorry"
 msgstr "I can't play A-Z in %{lang}, sorry"
 
-#: data/rbot/plugins/games/azgame.rb:225
+#: data/rbot/plugins/games/azgame.rb:240
 msgid "got it!"
 msgstr "got it!"
 
-#: data/rbot/plugins/games/azgame.rb:235
+#: data/rbot/plugins/games/azgame.rb:250
 #, fuzzy
 msgid " (after %{total_tries} and %{invalid_tries})"
 msgstr " (after %{total_tries} and %{invalid_tries}"
 
-#: data/rbot/plugins/games/azgame.rb:238
+#: data/rbot/plugins/games/azgame.rb:253
 msgid "%{count} invalid try"
 msgid_plural "%{count} invalid tries"
 msgstr[0] "%{count} invalid try"
 msgstr[1] "%{count} invalid tries"
 
-#: data/rbot/plugins/games/azgame.rb:241
-msgid " (after %{total_tries}"
+#: data/rbot/plugins/games/azgame.rb:256
+#, fuzzy
+msgid " (after %{total_tries})"
 msgstr " (after %{total_tries}"
 
-#: data/rbot/plugins/games/azgame.rb:247
+#: data/rbot/plugins/games/azgame.rb:262
 msgid "A-Z: %{bold}%{range}%{bold}"
 msgstr "A-Z: %{bold}%{range}%{bold}"
 
-#: data/rbot/plugins/games/azgame.rb:258
+#: data/rbot/plugins/games/azgame.rb:273
 msgid "I have %{count} %{lang} word in my cache"
 msgid_plural "I have %{count} %{lang} words in my cache"
 msgstr[0] "I have %{count} %{lang} word in my cache"
 msgstr[1] "I have %{count} %{lang} words in my cache"
 
-#: data/rbot/plugins/games/azgame.rb:261
+#: data/rbot/plugins/games/azgame.rb:276
 msgid "provide a regexp to match"
 msgstr "provide a regexp to match"
 
-#: data/rbot/plugins/games/azgame.rb:273
+#: data/rbot/plugins/games/azgame.rb:288
 msgid "no %{lang} word I know match %{pattern}"
 msgstr "no %{lang} word I know match %{pattern}"
 
-#: data/rbot/plugins/games/azgame.rb:275
+#: data/rbot/plugins/games/azgame.rb:290
 msgid ""
 "more than 25 %{lang} words I know match %{pattern}, try a stricter matching"
 msgstr ""
 "more than 25 %{lang} words I know match %{pattern}, try a stricter matching"
 
-#: data/rbot/plugins/games/azgame.rb:281 data/rbot/plugins/games/azgame.rb:297
-#: data/rbot/plugins/games/azgame.rb:309
+#: data/rbot/plugins/games/azgame.rb:296 data/rbot/plugins/games/azgame.rb:312
+#: data/rbot/plugins/games/azgame.rb:324
 msgid "provide a word"
 msgstr "provide a word"
 
-#: data/rbot/plugins/games/azgame.rb:286 data/rbot/plugins/games/azgame.rb:302
+#: data/rbot/plugins/games/azgame.rb:301 data/rbot/plugins/games/azgame.rb:317
 msgid "I don't know any %{lang} word %{word}"
 msgstr "I don't know any %{lang} word %{word}"
 
-#: data/rbot/plugins/games/azgame.rb:290
+#: data/rbot/plugins/games/azgame.rb:305
 msgid "%{word} learned from %{user} on %{date}"
 msgstr "%{word} learned from %{user} on %{date}"
 
-#: data/rbot/plugins/games/azgame.rb:292
+#: data/rbot/plugins/games/azgame.rb:307
 msgid "%{word} learned from %{user}"
 msgstr "%{word} learned from %{user}"
 
-#: data/rbot/plugins/games/azgame.rb:314
+#: data/rbot/plugins/games/azgame.rb:329
 msgid "I already know the %{lang} word %{word}"
 msgstr "I already know the %{lang} word %{word}"
 
-#: data/rbot/plugins/games/azgame.rb:530
+#: data/rbot/plugins/games/azgame.rb:545
 msgid ""
 "az [lang] word [count|list|add|delete] => manage the az wordlist for "
 "language lang (defaults to current bot language)"
@@ -1272,15 +1491,15 @@ msgstr ""
 "az [lang] word [count|list|add|delete] => manage the az wordlist for "
 "language lang (defaults to current bot language)"
 
-#: data/rbot/plugins/games/azgame.rb:532
+#: data/rbot/plugins/games/azgame.rb:547
 msgid "az cancel => abort current game"
 msgstr "az cancel => abort current game"
 
-#: data/rbot/plugins/games/azgame.rb:534
+#: data/rbot/plugins/games/azgame.rb:549
 msgid "az check <word> => checks <word> against current game"
 msgstr "az check <word> => checks <word> against current game"
 
-#: data/rbot/plugins/games/azgame.rb:536
+#: data/rbot/plugins/games/azgame.rb:551
 msgid ""
 "try to guess the word the bot is thinking of; if you guess wrong, the bot "
 "will use the new word to restrict the range of allowed words: eventually, "
@@ -1290,7 +1509,7 @@ msgstr ""
 "will use the new word to restrict the range of allowed words: eventually, "
 "the range will be so small around the correct word that you can't miss it"
 
-#: data/rbot/plugins/games/azgame.rb:538
+#: data/rbot/plugins/games/azgame.rb:553
 msgid ""
 "az => start a game if none is running, show the current word range "
 "otherwise; you can say 'az <language>' if you want to play in a language "
@@ -1300,19 +1519,19 @@ msgstr ""
 "otherwise; you can say 'az <language>' if you want to play in a language "
 "different from the current bot default"
 
-#: data/rbot/plugins/games/azgame.rb:540
+#: data/rbot/plugins/games/azgame.rb:555
 msgid "az topics: play, rules, cancel, manage, check"
 msgstr "az topics: play, rules, cancel, manage, check"
 
-#: data/rbot/plugins/games/shiritori.rb:203
+#: data/rbot/plugins/games/shiritori.rb:207
 msgid "%{current_player}, it's your turn. %{previous_word} -> %{current_word}"
 msgstr "%{current_player}, it's your turn. %{previous_word} -> %{current_word}"
 
-#: data/rbot/plugins/games/shiritori.rb:207
+#: data/rbot/plugins/games/shiritori.rb:211
 msgid "No one has given the first word yet. Say the first word to start."
 msgstr "No one has given the first word yet. Say the first word to start."
 
-#: data/rbot/plugins/games/shiritori.rb:209
+#: data/rbot/plugins/games/shiritori.rb:213
 msgid ""
 "Poor %{current_player} is playing alone! Anyone care to join? %"
 "{previous_word} -> %{current_word}"
@@ -1320,32 +1539,32 @@ msgstr ""
 "Poor %{current_player} is playing alone! Anyone care to join? %"
 "{previous_word} -> %{current_word}"
 
-#: data/rbot/plugins/games/shiritori.rb:240
+#: data/rbot/plugins/games/shiritori.rb:244
 msgid "%{player} took too long and is out of the game. Try again next game!"
 msgstr "%{player} took too long and is out of the game. Try again next game!"
 
-#: data/rbot/plugins/games/shiritori.rb:245
+#: data/rbot/plugins/games/shiritori.rb:249
 msgid "%{player} is the last remaining player and the winner! Congratulations!"
 msgstr ""
 "%{player} is the last remaining player and the winner! Congratulations!"
 
-#: data/rbot/plugins/games/shiritori.rb:253
+#: data/rbot/plugins/games/shiritori.rb:257
 msgid "%{player} took too long and skipped the turn."
 msgstr "%{player} took too long and skipped the turn."
 
-#: data/rbot/plugins/games/shiritori.rb:281
+#: data/rbot/plugins/games/shiritori.rb:285
 msgid "%{player} has given the first word: %{word}"
 msgstr "%{player} has given the first word: %{word}"
 
-#: data/rbot/plugins/games/shiritori.rb:287
+#: data/rbot/plugins/games/shiritori.rb:291
 msgid "Welcome to shiritori, %{player}."
 msgstr "Welcome to shiritori, %{player}."
 
-#: data/rbot/plugins/games/shiritori.rb:292
+#: data/rbot/plugins/games/shiritori.rb:296
 msgid "The word %{used_word} has been used. Retry from %{word}"
 msgstr "The word %{used_word} has been used. Retry from %{word}"
 
-#: data/rbot/plugins/games/shiritori.rb:297
+#: data/rbot/plugins/games/shiritori.rb:301
 msgid ""
 "It's impossible to continue the chain from %{word}. The game has ended. "
 "Thanks a lot, %{player}! :("
@@ -1353,19 +1572,19 @@ msgstr ""
 "It's impossible to continue the chain from %{word}. The game has ended. "
 "Thanks a lot, %{player}! :("
 
-#: data/rbot/plugins/games/shiritori.rb:301
+#: data/rbot/plugins/games/shiritori.rb:305
 msgid ""
 "It's impossible to continue the chain from %{bad_word}. Retry from %{word}"
 msgstr ""
 "It's impossible to continue the chain from %{bad_word}. Retry from %{word}"
 
-#: data/rbot/plugins/games/shiritori.rb:306
+#: data/rbot/plugins/games/shiritori.rb:310
 msgid ""
 "It's impossible to continue the chain from %{word}. Start with another word."
 msgstr ""
 "It's impossible to continue the chain from %{word}. Start with another word."
 
-#: data/rbot/plugins/games/shiritori.rb:327
+#: data/rbot/plugins/games/shiritori.rb:331
 msgid ""
 "A game in which each player must continue the previous player's word, by "
 "using its last one or few characters/letters of the word to start a new "
@@ -1377,85 +1596,353 @@ msgstr ""
 "word. 'shiritori <ruleset>' => Play shiritori with a set of rules. Available "
 "rulesets: %{rulesets}. 'shiritori stop' => Stop the current shiritori game."
 
-#: data/rbot/plugins/games/shiritori.rb:398
+#: data/rbot/plugins/games/shiritori.rb:408
 msgid "Already playing shiritori here"
 msgstr "Already playing shiritori here"
 
-#: data/rbot/plugins/games/shiritori.rb:409
+#: data/rbot/plugins/games/shiritori.rb:419
 msgid "Shiritori has started. Please say the first word"
 msgstr "Shiritori has started. Please say the first word"
 
-#: data/rbot/plugins/games/shiritori.rb:411
+#: data/rbot/plugins/games/shiritori.rb:421
 msgid "couldn't start %{ruleset} shiritori: %{error}"
 msgstr "couldn't start %{ruleset} shiritori: %{error}"
 
-#: data/rbot/plugins/games/shiritori.rb:415
+#: data/rbot/plugins/games/shiritori.rb:425
 msgid "There is no ruleset named %{ruleset}"
 msgstr "There is no ruleset named %{ruleset}"
 
-#: data/rbot/plugins/games/shiritori.rb:433
+#: data/rbot/plugins/games/shiritori.rb:443
 msgid "Shiritori has stopped. Hope you had fun!"
 msgstr "Shiritori has stopped. Hope you had fun!"
 
-#: data/rbot/plugins/games/shiritori.rb:436
+#: data/rbot/plugins/games/shiritori.rb:446
 msgid "No game to stop here, because no game is being played."
 msgstr "No game to stop here, because no game is being played."
 
-#: data/rbot/plugins/translator.rb:47
+#: data/rbot/plugins/games/wheelfortune.rb:48
+msgid " [Letters called so far: %{red}%{letters}%{nocolor}]"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:230
+msgid ""
+"wof [<channel>] play [<name>] for <single> to <max> => starts a wheel-of-"
+"fortune game on channel <channel> (default: current channel), named <name> "
+"(default: wheelfortune.game_name config setting, or the last game name used "
+"by the user), with <single> points per round. the game is won when a player "
+"reachers <max> points. vowerls cost <single>*<single>/<max> points. The user "
+"that starts the game is the game manager and must set up the clues and "
+"answers in private. All the other users have to learn the answer to each "
+"clue by saying single consonants or the whole sentence. Every time a "
+"consonant is guessed, the bot will reveal the partial answer, showing the "
+"missing letters as * (asterisks)."
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:232
+msgid ""
+"wof <channel> [category: <cat>,] clue: <clue>, answer: <ans> => set up a new "
+"question for the wheel-of-fortune game being played on channel <channel>. "
+"This command must be sent in private by the game manager. The category <cat> "
+"can be omitted. If you make mistakes, you can use 'wof replace' (see help) "
+"before the question gets asked"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:234
+msgid ""
+"wof <channel> replace <round> [category: <cat>,] [clue: <clue>,] [answer: "
+"<ans>] => fix the question for round <round> of the wheel-of-fortune game "
+"being played on <channel> by replacing the category and/or clue and/or answer"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:236
+msgid ""
+"wof cancel => cancels the wheel-of-fortune being played on the current "
+"channel"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:238
+msgid ""
+"wof buy <vowel> => buy the vowel <vowel>: the user buying the vowel will "
+"lose points equal to the vowel price, and the corresponding vowel will be "
+"revealed in the answer (if present)"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:240
+msgid ""
+"wof: wheel-of-fortune plugin. topics: play, category, clue, answer, replace, "
+"cancel, buy"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:247
+msgid "you must specify a channel"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:253
+msgid "there's already a %{name} game on %{chan}, managed by %{who}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:267
+msgid ""
+"%{who} just created a new %{name} game to %{max} points (%{single} per "
+"question, %{price} per vowel)"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:274
+msgid ""
+"ok, the game has been created. now add clues and answers with \"wof %{chan} "
+"[category: <category>,] clue: <clue>, answer: <ans>\". if the clue and "
+"answer don't fit in one line, add the answer separately with \"wof %{chan} "
+"answer <answer>\""
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:282
+#: data/rbot/plugins/games/wheelfortune.rb:343
+#: data/rbot/plugins/games/wheelfortune.rb:412
+#: data/rbot/plugins/games/wheelfortune.rb:522
+#: data/rbot/plugins/games/wheelfortune.rb:559
+msgid "there's no %{name} game running on %{chan}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:291
+msgid "you can't add questions to the %{name} game on %{chan}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:301
+#: data/rbot/plugins/games/wheelfortune.rb:383
+msgid "sorry, the answer cannot contain the '*' character"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:308
+msgid "ok, clue added for %{name} round %{count} on %{chan}: %{catclue}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:310
+msgid ""
+"there's already a pending clue for %{name} round %{count} on %{chan}: %"
+"{catclue}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:323
+msgid ""
+"ok, QA added for %{name} round %{count} on %{chan}: %{catclue} => %{ans}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:325
+msgid "there's no pending clue for %{name} on %{chan}!"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:336
+msgid ""
+"something went wrong, I can't seem to understand what you're trying to set up"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:352
+msgid "you can't replace questions to the %{name} game on %{chan}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:365
+msgid ""
+"there are no questions in the %{name} game on %{chan} which can be replaced"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:370
+msgid ""
+"you can only replace questions between rounds %{min} and %{max} in the %"
+"{name} game on %{chan}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:398
+msgid ""
+"ok, replaced QA for %{name} round %{count} on %{chan}: %{catclue} => %{ans}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:421
+#: data/rbot/plugins/games/wheelfortune.rb:528
+msgid ""
+"there are no %{name} questions for %{chan}, I'm waiting for %{who} to add "
+"them"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:429
+msgid "%{bold}%{color}%{name}%{bold}, round %{count}:%{nocolor} %{qa}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:444
+msgid "no scores"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:465
+msgid "You must buy the %{vowel}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:476
+msgid "%{who} got it! The answer was: %{ans}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:482
+msgid ""
+"%{bold}%{color}%{name}%{bold}%{nocolor}: %{who} %{bold}wins%{bold} after %"
+"{count} rounds!\n"
+"The final score is"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:493
+msgid ""
+"%{bold}%{color}%{name}%{bold}, round %{count}%{nocolor} -- score so far:"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:538
+msgid "%{who} buys a %{vowel} for %{price} points"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:546
+msgid ""
+"you can't buy a %{vowel}, %{who}: it costs %{price} points and you only have "
+"%{score}"
+msgstr ""
+
+#: data/rbot/plugins/games/wheelfortune.rb:569
+#, fuzzy
+msgid "you can't cancel the current game"
+msgstr "az cancel => abort current game"
+
+#: data/rbot/plugins/games/wheelfortune.rb:576
+msgid "%{name} game cancelled after %{count} rounds. Partial score:"
+msgstr ""
+
+#: data/rbot/plugins/keywords.rb:457
+#, fuzzy
+msgid "couldn't find keyword %{key}"
+msgstr "couldn't find botuser %{name}"
+
+#: data/rbot/plugins/keywords.rb:506
+#, fuzzy
+msgid "failed to export keywords as factoids (%{err})"
+msgstr "failed to export users: %{exception}"
+
+#: data/rbot/plugins/markov.rb:133
+msgid "markov has a %{prob}% chance of chipping in"
+msgstr ""
+
+#: data/rbot/plugins/rss.rb:809
+#, fuzzy
+msgid "no such feed %{handle}"
+msgstr "no such module %{module}"
+
+#: data/rbot/plugins/translator.rb:52
 msgid "Cannot translate empty string"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:257
+#: data/rbot/plugins/translator.rb:262
 msgid "Number of seconds to wait for the translation service before timeout"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:277
+#: data/rbot/plugins/translator.rb:282
 msgid "Translator %{name} cannot be used: %{reason}"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:285
+#: data/rbot/plugins/translator.rb:290
 msgid "List of translators to try in order when translator name not specified"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:293
-msgid "%{info}, supported directions of translation: %{directions}"
+#: data/rbot/plugins/translator.rb:298
+msgid ""
+"%{translator} <from> <to> <phrase> => Look up phrase using %{info}, "
+"supported from -> to languages: %{directions}"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:296
+#: data/rbot/plugins/translator.rb:302
 msgid "%{source} -> %{targets}"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:301
+#: data/rbot/plugins/translator.rb:307
 msgid ""
 "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %"
 "{translators}. If \"translator\" is used in place of the translator name, "
 "the first translator in translator.default_list which supports the specified "
-"direction will be picked automatically. Use \"help translator <translator>\" "
-"to look up supported from and to languages"
+"direction will be picked automatically. Use \"help <translator>\" to look up "
+"supported from and to languages"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:316
+#: data/rbot/plugins/translator.rb:322
 msgid ""
 "None of the default translators (translator.default_list) supports "
 "translating from %{source} to %{target}"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:332
+#: data/rbot/plugins/translator.rb:337
+msgid "%{translation} (provided by %{translator})"
+msgstr ""
+
+#: data/rbot/plugins/translator.rb:344
 msgid "%{translator} doesn't support translating from %{source} to %{target}"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:335
+#: data/rbot/plugins/translator.rb:347
 msgid "%{translator} failed to provide a translation"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:338
+#: data/rbot/plugins/translator.rb:350
 msgid "The translator timed out"
 msgstr ""
 
-#: data/rbot/plugins/translator.rb:341
+#: data/rbot/plugins/translator.rb:353
 msgid "No translator called %{name}"
 msgstr ""
 
+#: data/rbot/plugins/twitter.rb:172
+msgid "actions will be twitted"
+msgstr ""
+
+#: data/rbot/plugins/twitter.rb:174
+msgid "actions will not be twitted"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:33
+msgid ""
+"Category: %{cat}. Rating: %{rating}. Author: %{author}. Duration: %"
+"{duration}. %{views} views, faved %{faves} times. %{desc}"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:76 data/rbot/plugins/youtube.rb:106
+msgid "unknown duration"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:182
+msgid ""
+"%{bold}%{title}%{bold} [%{cat}] %{rating} @ %{url} by %{author} (%"
+"{duration}). %{views} views, faved %{faves} times. %{desc}"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:185
+msgid ""
+"\n"
+" -- also available at: "
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:192
+msgid "couldn't retrieve video info"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:202
+msgid "error looking for %{what} on youtube: %{e}"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:210
+msgid "no videos found for %{what}"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:214
+msgid "One video found for %{what}: %{show}"
+msgstr ""
+
+#: data/rbot/plugins/youtube.rb:221
+msgid "Videos for %{what}: %{shorts}"
+msgstr ""
+
+#~ msgid "wrong password for %{user}"
+#~ msgstr "wrong password for %{user}"
+
 #~ msgid "config-related tasks: config topics, save, rescan"
 #~ msgstr "config-related tasks: config topics, save, rescan"