]> 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 f426d5eb66d310613646c9ed7e8f494e6a89b08a..73651ccc369d5f7e653cc81e86c915c21d64be5f 100644 (file)
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: rbot\n"
-"POT-Creation-Date: 2008-03-11 01:34+0100\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"
@@ -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}"
 
@@ -131,35 +132,49 @@ msgstr ""
 msgid "%{cmd}: %{perms}"
 msgstr ""
 
-#: lib/rbot/core/auth.rb:221
+#: 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:236
+#: lib/rbot/core/auth.rb:312
 msgid "sorry, can't do"
 msgstr "sorry, can't do"
 
-#: lib/rbot/core/auth.rb:239
+#: lib/rbot/core/auth.rb:315
 msgid "couldn't login: %{exception}"
 msgstr "couldn't login: %{exception}"
 
-#: lib/rbot/core/auth.rb:247
+#: 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:258
+#: lib/rbot/core/auth.rb:334
 msgid "you are %{who}"
 msgstr "you are %{who}"
 
-#: lib/rbot/core/auth.rb:260 lib/rbot/core/auth.rb:273
+#: 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:261 lib/rbot/core/auth.rb:274
+#: lib/rbot/core/auth.rb:337 lib/rbot/core/auth.rb:350
 msgid "my boss"
 msgstr "my boss"
 
-#: lib/rbot/core/auth.rb:281
+#: 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 "
@@ -173,16 +188,16 @@ msgstr ""
 "netmask is among the known ones. if <botuser> is omitted too autologin will "
 "be attempted"
 
-#: lib/rbot/core/auth.rb:283
+#: 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:285
+#: 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:289
+#: 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 "
@@ -192,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:291
+#: 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 "
@@ -202,23 +217,23 @@ msgstr ""
 "the permissions for botuser <user> in channel <channel> (use ? to change the "
 "permissions for private addressing)"
 
-#: lib/rbot/core/auth.rb:293
+#: 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:295
+#: 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:297
+#: 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:302
+#: 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"
@@ -226,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:304
+#: lib/rbot/core/auth.rb:380
 msgid ""
 "user enable|disable <what> : turns on or off <what> (autologin, login-by-"
 "mask)"
@@ -234,7 +249,7 @@ msgstr ""
 "user enable|disable <what> : turns on or off <what> (autologin, login-by-"
 "mask)"
 
-#: lib/rbot/core/auth.rb:306
+#: 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 "
@@ -244,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:308
+#: 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"
@@ -252,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:310
+#: 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 "
@@ -264,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:312
+#: 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>"
@@ -272,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:314
+#: 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 "
@@ -284,11 +299,11 @@ msgstr ""
 "generated. The <name> should only contain alphanumeric characters and the "
 "underscore (_)"
 
-#: lib/rbot/core/auth.rb:316
+#: 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:318
+#: lib/rbot/core/auth.rb:394
 #, fuzzy
 msgid ""
 "user destroy <botuser> : destroys <botuser>. This function %{highlight}must%"
@@ -304,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:320
+#: lib/rbot/core/auth.rb:396
 msgid ""
 "user topics: show, enable|disable, add|rm netmask, set, reset, tell, create, "
 "list, destroy"
@@ -312,202 +327,217 @@ msgstr ""
 "user topics: show, enable|disable, add|rm netmask, set, reset, tell, create, "
 "list, destroy"
 
-#: lib/rbot/core/auth.rb:323
+#: 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, "
-"meet, hello"
+"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:325
+#: 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:327
+#: lib/rbot/core/auth.rb:403
 msgid "hello: creates a bot user for the person issuing the command"
 msgstr ""
 
-#: lib/rbot/core/auth.rb:329
+#: 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, meet, hello"
+"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:334
+#: 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:338
+#: 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:373
+#: lib/rbot/core/auth.rb:453
 #, fuzzy
 msgid "no such bot user %{user}"
 msgstr "no such botuser %{user}"
 
-#: lib/rbot/core/auth.rb:376
+#: 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:388
+#: 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:397
+#: 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:398
+#: 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:400
+#: 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:401
+#: 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:415
+#: lib/rbot/core/auth.rb:495
 msgid "can %{action}"
 msgstr "can %{action}"
 
-#: lib/rbot/core/auth.rb:417
+#: lib/rbot/core/auth.rb:497
 msgid "can not %{action}"
 msgstr "can not %{action}"
 
-#: lib/rbot/core/auth.rb:421
+#: lib/rbot/core/auth.rb:501
 msgid "knows no netmasks"
 msgstr "knows no netmasks"
 
-#: lib/rbot/core/auth.rb:423
+#: lib/rbot/core/auth.rb:503
 msgid "knows %{netmasks}"
 msgstr "knows %{netmasks}"
 
-#: lib/rbot/core/auth.rb:430 lib/rbot/core/auth.rb:457
-#: lib/rbot/core/auth.rb:475 lib/rbot/core/auth.rb:507
+#: 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:431 lib/rbot/core/auth.rb:459
-#: lib/rbot/core/auth.rb:477 lib/rbot/core/auth.rb:509
+#: 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:446 lib/rbot/core/auth.rb:493
+#: 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:450 lib/rbot/core/auth.rb:497
+#: 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:468
+#: 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:500
+#: 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:514
+#: 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:535
+#: 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:538
+#: lib/rbot/core/auth.rb:618
 #, fuzzy
 msgid "couldn't %{cmd}: %{exception}"
 msgstr "couldn't login: %{exception}"
 
-#: lib/rbot/core/auth.rb:567
+#: 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:574
+#: lib/rbot/core/auth.rb:654
 msgid "but I already know %{buname}"
 msgstr ""
 
-#: lib/rbot/core/auth.rb:576
+#: lib/rbot/core/auth.rb:656
 msgid "I had problems meeting %{nick}: %{e}"
 msgstr ""
 
-#: lib/rbot/core/auth.rb:585
+#: lib/rbot/core/auth.rb:665
 msgid "couldn't find botuser %{user}"
 msgstr "couldn't find botuser %{user}"
 
-#: lib/rbot/core/auth.rb:587
-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:588
+#: 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:591
+#: lib/rbot/core/auth.rb:671
 msgid "I told %{user} that %{message}"
 msgstr "I told %{user} that %{message}"
 
-#: lib/rbot/core/auth.rb:597
+#: 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:602
+#: lib/rbot/core/auth.rb:682
 msgid "failed to create %{user}: %{exception}"
 msgstr "failed to create %{user}: %{exception}"
 
-#: lib/rbot/core/auth.rb:606
+#: lib/rbot/core/auth.rb:686
 msgid "created botuser %{user}"
 msgstr "created botuser %{user}"
 
-#: lib/rbot/core/auth.rb:614
+#: lib/rbot/core/auth.rb:694
 msgid " (queued for destruction)"
 msgstr " (queued for destruction)"
 
-#: lib/rbot/core/auth.rb:617
+#: 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:618
+#: 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:625
+#: lib/rbot/core/auth.rb:705
 msgid "You can't destroy %{user}"
 msgstr "You can't destroy %{user}"
 
-#: lib/rbot/core/auth.rb:635
+#: lib/rbot/core/auth.rb:715
 msgid "no such botuser %{user}"
 msgstr "no such botuser %{user}"
 
-#: lib/rbot/core/auth.rb:642
+#: 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:644
+#: 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:649
+#: lib/rbot/core/auth.rb:729
 #, fuzzy
 msgid ""
 "%{user} already queued for destruction, use %{highlight}user confirm destroy "
@@ -516,7 +546,7 @@ msgstr ""
 "%{user} already queued for destruction, use %{highlight}user destroy %{user} "
 "<password>%{highlight} to destroy it"
 
-#: lib/rbot/core/auth.rb:652
+#: lib/rbot/core/auth.rb:732
 #, fuzzy
 msgid ""
 "%{user} queued for destruction, use %{highlight}user confirm destroy %{user}%"
@@ -525,103 +555,103 @@ msgstr ""
 "%{user} queued for destruction, use %{highlight}user destroy %{user} "
 "<password>%{highlight} to destroy it"
 
-#: lib/rbot/core/auth.rb:656
+#: 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:665 lib/rbot/core/auth.rb:705
+#: lib/rbot/core/auth.rb:745 lib/rbot/core/auth.rb:785
 msgid "failed: %{exception}"
 msgstr "failed: %{exception}"
 
-#: lib/rbot/core/auth.rb:667
+#: lib/rbot/core/auth.rb:747
 msgid "botuser %{user} destroyed"
 msgstr "botuser %{user} destroyed"
 
-#: lib/rbot/core/auth.rb:674
+#: 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:683
+#: lib/rbot/core/auth.rb:763
 msgid "no such botuser %{source}"
 msgstr "no such botuser %{source}"
 
-#: lib/rbot/core/auth.rb:685
+#: lib/rbot/core/auth.rb:765
 msgid "botuser %{dest} exists already"
 msgstr "botuser %{dest} exists already"
 
-#: lib/rbot/core/auth.rb:708
+#: lib/rbot/core/auth.rb:788
 msgid "botuser %{source} copied to %{dest}"
 msgstr "botuser %{source} copied to %{dest}"
 
-#: lib/rbot/core/auth.rb:711
+#: lib/rbot/core/auth.rb:791
 msgid "botuser %{source} renamed to %{dest}"
 msgstr "botuser %{source} renamed to %{dest}"
 
-#: lib/rbot/core/auth.rb:731
+#: lib/rbot/core/auth.rb:811
 msgid "selecting data to export ..."
 msgstr "selecting data to export ..."
 
-#: lib/rbot/core/auth.rb:747
+#: lib/rbot/core/auth.rb:827
 msgid "preparing data for export ..."
 msgstr "preparing data for export ..."
 
-#: lib/rbot/core/auth.rb:770
+#: lib/rbot/core/auth.rb:850
 msgid "failed to prepare data: %{exception}"
 msgstr "failed to prepare data: %{exception}"
 
-#: lib/rbot/core/auth.rb:775
+#: lib/rbot/core/auth.rb:855
 msgid "exporting to %{file} ..."
 msgstr "exporting to %{file} ..."
 
-#: lib/rbot/core/auth.rb:782
+#: lib/rbot/core/auth.rb:862
 msgid "failed to export users: %{exception}"
 msgstr "failed to export users: %{exception}"
 
-#: lib/rbot/core/auth.rb:786 lib/rbot/core/auth.rb:864
+#: lib/rbot/core/auth.rb:866 lib/rbot/core/auth.rb:944
 msgid "done"
 msgstr "done"
 
-#: lib/rbot/core/auth.rb:803
+#: lib/rbot/core/auth.rb:883
 msgid "reading %{file} ..."
 msgstr "reading %{file} ..."
 
-#: lib/rbot/core/auth.rb:807
+#: lib/rbot/core/auth.rb:887
 msgid "failed to import from: %{exception}"
 msgstr "failed to import from: %{exception}"
 
-#: lib/rbot/core/auth.rb:814
+#: lib/rbot/core/auth.rb:894
 msgid "selecting data to import ..."
 msgstr "selecting data to import ..."
 
-#: lib/rbot/core/auth.rb:824
+#: lib/rbot/core/auth.rb:904
 msgid "parsing data from import ..."
 msgstr "parsing data from import ..."
 
-#: lib/rbot/core/auth.rb:844
+#: 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>"
@@ -629,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>"
@@ -637,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 "
@@ -647,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 "
@@ -657,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>"
@@ -669,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, "
@@ -875,62 +905,90 @@ msgstr ""
 msgid " and "
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1180
+#: lib/rbot/core/filters_ui.rb:27
+msgid "no filters in group %{g}"
+msgstr ""
+
+#: 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/core/filters_ui.rb:54
+msgid "filters matching %{pat}: "
+msgstr ""
+
+#: lib/rbot/ircbot.rb:1165
 msgid "help topics: "
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1182
+#: lib/rbot/ircbot.rb:1167
 msgid " (help <topic> for more info)"
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1185
+#: lib/rbot/ircbot.rb:1170
 msgid "no help for topic %{topic}"
 msgstr ""
 
-#: lib/rbot/ircbot.rb:1196
+#: lib/rbot/ircbot.rb:1181
 msgid ""
 "Uptime %{up}, %{plug} plugins active, %{sent} lines sent, %{recv} received."
 msgstr ""
 
-#: lib/rbot/plugins.rb:305
+#: 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:606
+#: 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:609
+#: 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:615
+#: lib/rbot/plugins.rb:625
 msgid "no core botmodules loaded"
 msgstr "no core botmodules loaded"
 
-#: lib/rbot/plugins.rb:620
+#: 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:623
+#: 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:634
+#: 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:639
+#: lib/rbot/plugins.rb:649
 msgid ""
 "%{highlight}%{count} plugin ignored%{highlight}: use %{bold}%{command}%"
 "{bold} to see why"
@@ -944,13 +1002,13 @@ msgstr[1] ""
 "%{highlight}%{count} plugins ignored%{highlight}: use %{bold}%{command}%"
 "{bold} to see why"
 
-#: lib/rbot/plugins.rb:649
+#: 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:654
+#: lib/rbot/plugins.rb:664
 msgid ""
 "%{highlight}%{count} plugin failed to load%{highlight}: use %{bold}%"
 "{command}%{bold} to see why"
@@ -964,11 +1022,11 @@ msgstr[1] ""
 "%{highlight}%{count} plugins failed to load%{highlight}: use %{bold}%"
 "{command}%{bold} to see why"
 
-#: lib/rbot/plugins.rb:684
+#: lib/rbot/plugins.rb:694
 msgid "no plugins failed to load"
 msgstr "no plugins failed to load"
 
-#: lib/rbot/plugins.rb:686
+#: lib/rbot/plugins.rb:696
 msgid ""
 "%{highlight}%{plugin}%{highlight} in %{dir} failed with error %{exception}: %"
 "{reason}"
@@ -976,15 +1034,15 @@ msgstr ""
 "%{highlight}%{plugin}%{highlight} in %{dir} failed with error %{exception}: %"
 "{reason}"
 
-#: lib/rbot/plugins.rb:690
+#: lib/rbot/plugins.rb:700
 msgid "at %{backtrace}"
 msgstr "at %{backtrace}"
 
-#: lib/rbot/plugins.rb:696
+#: lib/rbot/plugins.rb:706
 msgid "no plugins were ignored"
 msgstr "no plugins were ignored"
 
-#: lib/rbot/plugins.rb:700
+#: lib/rbot/plugins.rb:710
 msgid "overruled by previous"
 msgstr "overruled by previous"
 
@@ -1219,8 +1277,8 @@ msgid ""
 "<words>"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:292 data/rbot/plugins/factoids.rb:402
-#: data/rbot/plugins/factoids.rb:434
+#: 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 ""
 
@@ -1241,37 +1299,37 @@ msgstr "I don't know any %{lang} word %{word}"
 msgid "[%{idx}/%{total}] %{fact}"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:340
+#: data/rbot/plugins/factoids.rb:342
 msgid "I know %{total} facts"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:350 data/rbot/plugins/factoids.rb:418
+#: 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:355
+#: 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:410
+#: data/rbot/plugins/factoids.rb:412
 msgid "I know nothing"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:450
+#: data/rbot/plugins/factoids.rb:452
 msgid "not a date '%{dstr}'"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:458
+#: data/rbot/plugins/factoids.rb:460
 msgid "couldn't change learn data for fact %{fact}: %{err}"
 msgstr ""
 
-#: data/rbot/plugins/factoids.rb:473
+#: 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:478
+#: data/rbot/plugins/factoids.rb:480
 msgid "%{len} facts loaded from %{fname}"
 msgstr ""
 
@@ -1279,8 +1337,8 @@ msgstr ""
 msgid "Path to the figlet program"
 msgstr ""
 
-#: data/rbot/plugins/games/azgame.rb:78 data/rbot/plugins/games/azgame.rb:252
-#: data/rbot/plugins/games/azgame.rb:258
+#: 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"
@@ -1290,7 +1348,7 @@ msgstr[1] "%{count} tries"
 msgid "winner, %{tries}"
 msgstr ""
 
-#: data/rbot/plugins/games/azgame.rb:164
+#: data/rbot/plugins/games/azgame.rb:163
 msgid ""
 "%{bold}BINGO!%{bold} the word was %{underline}%{word}%{underline}. Congrats, "
 "%{bold}%{player}%{bold}!"
@@ -1298,45 +1356,45 @@ msgstr ""
 "%{bold}BINGO!%{bold} the word was %{underline}%{word}%{underline}. Congrats, "
 "%{bold}%{player}%{bold}!"
 
-#: data/rbot/plugins/games/azgame.rb:171
+#: 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:174
+#: 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:178
+#: 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:184
+#: 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:188
+#: 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:190
+#: 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:199
+#: 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:203
+#: 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:213
+#: 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:217
+#: data/rbot/plugins/games/azgame.rb:216
 msgid ""
 "The game was cancelled after %{tries} tries. Scores for this game would have "
 "been:    %{scores}"
@@ -1344,88 +1402,88 @@ msgstr ""
 "The game was cancelled after %{tries} tries. Scores for this game would have "
 "been:    %{scores}"
 
-#: data/rbot/plugins/games/azgame.rb:220
+#: 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:230
+#: data/rbot/plugins/games/azgame.rb:229
 msgid "let me think ..."
 msgstr "let me think ..."
 
-#: data/rbot/plugins/games/azgame.rb:234
+#: 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:238
+#: 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:241
+#: data/rbot/plugins/games/azgame.rb:240
 msgid "got it!"
 msgstr "got it!"
 
-#: data/rbot/plugins/games/azgame.rb:251
+#: 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:254
+#: 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:257
+#: data/rbot/plugins/games/azgame.rb:256
 #, fuzzy
 msgid " (after %{total_tries})"
 msgstr " (after %{total_tries}"
 
-#: data/rbot/plugins/games/azgame.rb:263
+#: 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:274
+#: 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:277
+#: 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:289
+#: 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:291
+#: 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:297 data/rbot/plugins/games/azgame.rb:313
-#: data/rbot/plugins/games/azgame.rb:325
+#: 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:302 data/rbot/plugins/games/azgame.rb:318
+#: 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:306
+#: 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:308
+#: data/rbot/plugins/games/azgame.rb:307
 msgid "%{word} learned from %{user}"
 msgstr "%{word} learned from %{user}"
 
-#: data/rbot/plugins/games/azgame.rb:330
+#: 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:546
+#: 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)"
@@ -1433,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:548
+#: 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:550
+#: 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:552
+#: 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, "
@@ -1451,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:554
+#: 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 "
@@ -1461,7 +1519,7 @@ 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:556
+#: data/rbot/plugins/games/azgame.rb:555
 msgid "az topics: play, rules, cancel, manage, check"
 msgstr "az topics: play, rules, cancel, manage, check"
 
@@ -1752,21 +1810,21 @@ msgstr "az cancel => abort current game"
 msgid "%{name} game cancelled after %{count} rounds. Partial score:"
 msgstr ""
 
-#: data/rbot/plugins/keywords.rb:452
+#: data/rbot/plugins/keywords.rb:457
 #, fuzzy
 msgid "couldn't find keyword %{key}"
 msgstr "couldn't find botuser %{name}"
 
-#: data/rbot/plugins/keywords.rb:501
+#: 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:134
+#: data/rbot/plugins/markov.rb:133
 msgid "markov has a %{prob}% chance of chipping in"
 msgstr ""
 
-#: data/rbot/plugins/rss.rb:696
+#: data/rbot/plugins/rss.rb:809
 #, fuzzy
 msgid "no such feed %{handle}"
 msgstr "no such module %{module}"
@@ -1840,6 +1898,48 @@ msgstr ""
 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}"