diff --git a/.gitignore b/.gitignore index cdcd23ad8..0eb42244e 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ docs/plugins *.swp *.swo *~ +*.mo diff --git a/plugins/Admin/locale/fi.po b/plugins/Admin/locale/fi.po index 4dd96ecac..0dcd5759c 100644 --- a/plugins/Admin/locale/fi.po +++ b/plugins/Admin/locale/fi.po @@ -1,12 +1,12 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR ORGANIZATION -# FIRST AUTHOR , YEAR. +# Admin plugin in Limnoria. +# Copyright (C) 2011 Limnoria +# Mika Suomalainen , 2011. # msgid "" msgstr "" "Project-Id-Version: Finnish translation of Admin plugin in Supybot\n" "POT-Creation-Date: 2010-10-16 10:43+CEST\n" -"PO-Revision-Date: 2011-02-28 14:51+0200\n" +"PO-Revision-Date: 2011-08-13 23:31+0200\n" "Last-Translator: Mika Suomalainen \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -18,27 +18,27 @@ msgstr "" #: plugin.py:54 msgid "Nick/channel temporarily unavailable." -msgstr "Nimimerkki/kanava on väliaikaisesti saavutettavissa." +msgstr "Nimimerkki/kanava on väliaikaisesti saavuttamattomissa." #: plugin.py:72 msgid "Cannot join %s, it's full." -msgstr "Ei voida liittyä %s, se on täynnä." +msgstr "Ei voida liittyä kanavalle %s, se on täynnä." #: plugin.py:80 msgid "Cannot join %s, I was not invited." -msgstr "Ei voi liittyä %s, minua ei ole kutsuttu." +msgstr "Ei voi liittyä kanavalle %s, minua ei ole kutsuttu." #: plugin.py:88 msgid "Cannot join %s, it's banned me." -msgstr "Ei voi liittyä %s, se on bannannut minut." +msgstr "Ei voi liittyä kanavalle %s, se on antanut minulle porttikiellon." #: plugin.py:96 msgid "Cannot join %s, my keyword was wrong." -msgstr "Ei voi littyä %s, minun avainsanani oli väärä." +msgstr "En voi liittyä kanavalle %s, minun avainsana oli väärä." #: plugin.py:104 msgid "Cannot join %s, I'm not identified with the NickServ." -msgstr "Ei voi liittyä %s, minä en ole tunnistautunut NickServillä." +msgstr "En voi liittyä kanavalle %s, koska en ole tunnistautunut NickServille." #: plugin.py:134 msgid "" @@ -50,13 +50,13 @@ msgid "" msgstr "" " []\n" "\n" -"Käskee botin liittyä annetulle kanavalle. Jos on annettu, sitä käytetään\n" -"yrittäessä liittyä kanavalle.\n" +" Käskee botin liittyä annetulle kanavalle. Jos on annettu, sitä käytetään\n" +" yrittäessä liittyä kanavalle.\n" " " #: plugin.py:147 msgid "I'm already too close to maximum number of channels for this network." -msgstr "Minä olen liian lähellä kanavien maksimi määrää tällä verkolla." +msgstr "Minä olen jo liian lähellä kanavien maksimimäärää tässä verkossa." #: plugin.py:156 msgid "" @@ -68,8 +68,8 @@ msgid "" msgstr "" "Ei ota parametrejä\n" "\n" -"Palauttaa listan kanavista, joilla botti on. Täytyy antaa yksityisviestillä salaisten kanavien\n" -"salaisuuden suojelemiseksi.\n" +" Palauttaa listan kanavista, joilla botti on. Täytyy antaa yksityisviestillä salaistenkanavien\n" +" salaisuuden suojelemiseksi.\n" " " #: plugin.py:166 @@ -86,11 +86,11 @@ msgstr "Joku muu käyttää jo tuota nimimerkkiä." #: plugin.py:186 msgid "That nick is currently banned." -msgstr "Se nimimerkki on juuri nyt bannattu." +msgstr "Tuolla nimimerkillä on tällähetkellä porttikielto." #: plugin.py:193 msgid "I can't change nicks, the server said %q." -msgstr "Minä en voi vaihtaa nimimerkkiä, palvelin sanoi %q" +msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q" #: plugin.py:207 msgid "" @@ -102,8 +102,8 @@ msgid "" msgstr "" "[]\n" "\n" -"Vaihtaa botin nimimerkin . Jos nimimerkkiä ei ole annettu, palauttaa\n" -"botin nykyisen nimimerkin.\n" +" Vaihtaa botin nimimerkin . Jos nimimerkkiä ei ole annettu, palauttaa\n" +" botin nykyisen nimimerkin.\n" " " #: plugin.py:222 @@ -118,15 +118,15 @@ msgid "" msgstr "" "[] []\n" "\n" -"Käskee botin poistua kanavilta, jotka annat sille. on\n" -"vaadittu jost tahdot botin poistuvat muulta, kuin \n" -"nykyiseltä kanavalta. Jos on määritetty, sitä käytetään poistumis\n" -"viestissä.\n" +" Käskee botin poistua kanavilta, jotka annat sille. on\n" +" vaadittu jos haluat botin poistuvat muulta, kuin \n" +" nykyiseltä kanavalta. Jos on määritetty, sitä käytetään\n" +" poistumisviestissä.\n" " " #: plugin.py:240 msgid "I'm not in %s." -msgstr "Minä en ole %s:ssa." +msgstr "Minä en ole kanavalla %s." #: plugin.py:252 msgid "" @@ -138,13 +138,13 @@ msgid "" msgstr "" " \n" "\n" -"Antaa määrittämälle käyttäjälle (tai käyttäjälle jonka \n" -"ilmoittaa) määritetyn valtuuden \n" +" Antaa määrittämälle käyttäjälle (tai käyttäjälle jonka \n" +" ilmoittaa) määritetyn valtuuden \n" " " #: plugin.py:272 msgid "The \"owner\" capability can't be added in the bot. Use the supybot-adduser program (or edit the users.conf file yourself) to add an owner capability." -msgstr "\"Owner\" valtuutta ei voida lisätä bottiin. Käytä supybot-adduser ohjelmaa (tai muokkaa users.conf tiedostoa itse) lisätäksesi owner valtuuden." +msgstr "\"Owner\" valtuutta ei voi lisätä botissa. Käytä supybot-adduser ohjelmaa (tai muokkaa users.conf tiedostoa itse) lisätäksesi owner valtuuden." #: plugin.py:283 msgid "You can't add capabilities you don't have." @@ -160,13 +160,13 @@ msgid "" msgstr "" " \n" "\n" -"Ottaa määrittämältä käyttäjältä (tai käyttäjältä jonka\n" -" sopii) määritetyn valtuuden \n" +" Ottaa määrittämältä käyttäjältä (tai käyttäjältä johon\n" +" sopii) määritetyn valtuuden \n" " " #: plugin.py:300 msgid "That user doesn't have that capability." -msgstr "Tuolla käyttäjällä ei ole sitä valtuutta." +msgstr "Tuolla käyttäjällä ei tuota valtuutta." #: plugin.py:302 msgid "You can't remove capabilities you don't have." @@ -184,10 +184,10 @@ msgid "" msgstr "" " []\n" "\n" -"Tämä asettaa pysyvän ignoren tai hostmaskiin,\n" -" joka on tällä hetkellä yhdistetty . on vaihtoehtoinen paremetri,\n" -"joka määrittää (in \"sekuntit\") jolloin ignore vanhentuu; jos\n" -"sitä ei ole annettu, ignore ei vanhene automaattisesti ikinä.\n" +" Tämä asettaa pysyvän ignoren tai hostmaskiin,\n" +" joka on tällä hetkellä yhdistetty . on vaihtoehtoinen paremetri,\n" +" joka määrittää (\"sekuntieissa\") joiden jälkeen ignore poistetaan; jos\n" +" sitä ei ole annettu, ignore ei vanhene koskaan automaattisesti.\n" " " #: plugin.py:323 @@ -200,8 +200,8 @@ msgid "" msgstr "" "\n" "\n" -"Tämä poistaa pysyvän ignoren tai\n" -"hostmaskista joka on tällä hetkellä yhdistetty .\n" +" Tämä poistaa pysyvän ignoren tai\n" +" hostmaskista joka on tällä hetkellä yhdistetty .\n" " " #: plugin.py:332 @@ -217,10 +217,10 @@ msgid "" msgstr "" "Ei ota parametrejä\n" "\n" -"Luetteloi hostmaskit jotka ovat botin ignoressa.\n" +" Luetteloi hostmaskit jotka ovat botin ignoressa.\n" " " #: plugin.py:345 msgid "I'm not currently globally ignoring anyone." -msgstr "Kukaan ei juuri nyt ole globaalisti estolistalla." +msgstr "Minä en tällä hetkellä pidä ketään globaalissa ignoressa." diff --git a/plugins/Alias/locale/fi.po b/plugins/Alias/locale/fi.po index 498721e67..377c3cecd 100644 --- a/plugins/Alias/locale/fi.po +++ b/plugins/Alias/locale/fi.po @@ -1,3 +1,7 @@ +# Alias plugin in Limnoria. +# Copyright (C) 2011 Limnoria +# Mika Suomalainen , 2011. +# msgid "" msgstr "" "Project-Id-Version: Supybot Alias plugin\n" @@ -22,8 +26,8 @@ msgid "" msgstr "" "Palauttaa kanavan, jolta viesti tuli tai kanavan, joka on annettu parametreissä.\n" "\n" -"Jos kanava annetaan parametreissä, parametriä muokataan (kanava\n" -"poistetaan).\n" +" Jos kanava annetaan parametreissä, parametriä muokataan (kanava\n" +" poistetaan).\n" " " #: plugin.py:164 @@ -53,7 +57,7 @@ msgid "" msgstr "" "\n" "\n" -"Lukitsee aliaksen, niin ettei kukaan muu voi muuttaa sitä.\n" +" Lukitsee aliaksen, niin ettei kukaan muu voi muuttaa sitä.\n" " " #: plugin.py:229 @@ -70,12 +74,12 @@ msgid "" msgstr "" "\n" "\n" -"Poistaa lukituksen aliaksesta, jotta ihmiset vouvat määrittää uusia aliaksia sen päälle.\n" +" Poistaa lukituksen aliaksesta, jotta ihmiset vouvat määrittää uusia aliaksia sen päälle.\n" " " #: plugin.py:254 msgid "That name isn't valid. Try %q instead." -msgstr "Nimi ei ole kelvollinen. Yritä sen sijaa %q:ta." +msgstr "Tuo nimi ei ole kelvollinen. Yritä sen sijaan %q:ta." #: plugin.py:292 msgid "" @@ -91,12 +95,12 @@ msgid "" msgstr "" " \n" "\n" -"Määrittää aliaksen , joka suorittaa . \n" -"Aliaksen pitäisi olla tavallisia \"komento parametri [sisäkkäiset parametrit]\"\n" -"parametrejä aliakselle; ne täytetään ensinmäinen, toinen, jne.\n" -"Parametrit. $1, $2, jne. voidaan käyttää vaadittuina parametreinä. @1, @2,\n" -"jne. voidaan käyttää vaihtoehtoisina parametreinä. $* tarkoittaa yksinkertaisesti \"kaikki\n" -"jäljellä olevat parametrit,\" ja johon ei voida yhdistää vaihtoehtoisia parametrejä.\n" +" Määrittää aliaksen , joka suorittaa . \n" +" pitäisi olla tavallinen \"komento parametri [sisäkkäinen komento parametrit]\"\n" +" parametrejä aliakselle; ne täytetään ensinmäinen, toinen, jne.\n" +" Parametrit. $1, $2, jne. ovat vaadittuja parametrejä. @1, @2,\n" +" jne. ovat vapaaehtoisia parametrejä. $* tarkoittaa yksinkertaisesti \"kaikki\n" +" jäljellä olevat parametrit,\" ja johon ei voida yhdistää vaihtoehtoisia parametrejä.\n" " " #: plugin.py:315 @@ -108,6 +112,6 @@ msgid "" msgstr "" "\n" "\n" -"Poistaa annetun aliaksen jos se ei ole lukittu.\n" +" Poistaa annetun aliaksen jos se ei ole lukittu.\n" " " diff --git a/plugins/RSS/config.py b/plugins/RSS/config.py index 7029f5448..d4c03e8af 100644 --- a/plugins/RSS/config.py +++ b/plugins/RSS/config.py @@ -78,6 +78,14 @@ conf.registerGlobalValue(RSS, 'defaultNumberOfHeadlines', conf.registerChannelValue(RSS, 'initialAnnounceHeadlines', registry.PositiveInteger(5, """Indicates how many headlines an rss feed will output when it is first added to announce for a channel.""")) +conf.registerChannelValue(RSS, 'keywordWhitelist', + registry.SpaceSeparatedSetOfStrings([], """Space separated list of + strings, lets you filter headlines to those containing one or more items + in this whitelist.""")) +conf.registerChannelValue(RSS, 'keywordBlacklist', + registry.SpaceSeparatedSetOfStrings([], """Space separated list of + strings, lets you filter headlines to those not containing any items + in this blacklist.""")) conf.registerGroup(RSS, 'announce') conf.registerChannelValue(RSS.announce, 'showLinks', diff --git a/plugins/RSS/plugin.py b/plugins/RSS/plugin.py index e11e23dbb..53a1ca2b7 100644 --- a/plugins/RSS/plugin.py +++ b/plugins/RSS/plugin.py @@ -184,9 +184,29 @@ class RSS(callbacks.Plugin): newheadlines[i] = None newheadlines = filter(None, newheadlines) # Removes Nones. if newheadlines: + def filter_whitelist(headline): + v = False + for kw in whitelist: + if kw in headline[0] or kw in headline[1]: + v = True + break + return v + def filter_blacklist(headline): + v = True + for kw in blacklist: + if kw in headline[0] or kw in headline[1]: + v = False + break + return v for channel in channels: if len(oldheadlines) == 0: - newheadlines = newheadlines[:self.registryValue('initialAnnounceHeadlines', channel)] + channelnewheadlines = newheadlines[:self.registryValue('initialAnnounceHeadlines', channel)] + whitelist = self.registryValue('keywordWhitelist', channel) + blacklist = self.registryValue('keywordBlacklist', channel) + if len(whitelist) != 0: + channelnewheadlines = filter(filter_whitelist, channelnewheadlines) + if len(blacklist) != 0: + channelnewheadlines = filter(filter_blacklist, channelnewheadlines) bold = self.registryValue('bold', channel) sep = self.registryValue('headlineSeparator', channel) prefix = self.registryValue('announcementPrefix', channel) @@ -194,7 +214,7 @@ class RSS(callbacks.Plugin): if bold: pre = ircutils.bold(pre) sep = ircutils.bold(sep) - headlines = self.buildHeadlines(newheadlines, channel) + headlines = self.buildHeadlines(channelnewheadlines, channel) irc.replies(headlines, prefixer=pre, joiner=sep, to=channel, prefixNick=False, private=True) finally: diff --git a/plugins/Services/locale/fi.po b/plugins/Services/locale/fi.po index cdd61e498..975ff3874 100644 --- a/plugins/Services/locale/fi.po +++ b/plugins/Services/locale/fi.po @@ -1,12 +1,12 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR ORGANIZATION +# Services plugin in Limnoria. +# Copyright (C) 2011 Limnoria # Mika Suomalainen , 2011. # msgid "" msgstr "" "Project-Id-Version: \n" "POT-Creation-Date: 2011-02-26 09:49+CET\n" -"PO-Revision-Date: 2011-08-09 16:35+0200\n" +"PO-Revision-Date: 2011-08-13 23:02+0200\n" "Last-Translator: Mika Suomalainen \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -20,35 +20,39 @@ msgstr "Määrittää mitä salasanaa botti käyttää, kun tunnistautuu %s:ksi #: config.py:49 msgid "What is your registered nick?" -msgstr "" +msgstr "Mikä on rekisteröity nimimerkkisi?" #: config.py:50 msgid "What is your password for that nick?" -msgstr "" +msgstr "Mikä on salasanasi tuolle nimimerkille?" #: config.py:51 msgid "What is your ChanServ named?" -msgstr "" +msgstr "Minkä niminen ChanServisi on?" #: config.py:52 msgid "What is your NickServ named?" -msgstr "" +msgstr "Minkä niminen NickServisi on?" #: config.py:70 msgid "" "Determines what nicks the bot will use with\n" " services." msgstr "" +"Määrittää mitä nimimerkkiä botti käyttää\n" +" palvelujen kanssa." #: config.py:77 msgid "" "Determines what networks this plugin\n" " will be disabled on." msgstr "" +"Määrittää missä verkoissa tämä\n" +" lisäosa on poistettu käytöstä." #: config.py:77 msgid "QuakeNet" -msgstr "" +msgstr "QuakeNet" #: config.py:81 msgid "" @@ -57,48 +61,66 @@ msgid "" " you have a vhost that isn't set until you're identified, or if you're\n" " joining +r channels that won't allow you to join unless you identify." msgstr "" +"Määrittää liittyykö botti millekään kanavalle ennen\n" +" kuin se on tunnistautunut. Tämä voi olla hyödyllinen, esimerkiksi, jos\n" +" sinulla on vhost, jota ei aseteta ennen kuin tunnistaudut, tai jos olet\n" +" liittymässä +r kanaville, jotka eivät salli sinun liittyvän, paitsi jos olet tunnistautunut." #: config.py:86 msgid "" "Determines how many seconds the bot will\n" " wait between successive GHOST attempts." msgstr "" +"Määrittää monta sekuntia botti odottaa\n" +" GHOSTaus yritysten välillä." #: config.py:89 msgid "" "Determines what nick the 'NickServ' service\n" " has." msgstr "" +"Määrittää mikä nimimerkki 'NickServ' palvelulla\n" +" on." #: config.py:93 msgid "" "Determines what nick the 'ChanServ' service\n" " has." msgstr "" +"Määrittää mikä nimimerkki 'ChanServ' palvelulla\n" +" on." #: config.py:96 msgid "" "Determines what password the bot will use with\n" " ChanServ." msgstr "" +"Määrittää mitä salasanaa botti käyttää\n" +" ChanServin kanssa." #: config.py:99 msgid "" "Determines whether the bot will request to get\n" " opped by the ChanServ when it joins the channel." msgstr "" +"Määrittää pyytääkö botti ChanServin oppaamaksi\n" +" tulemista, kun se liittyy kanavalle." #: config.py:102 msgid "" "Determines whether the bot will request to get\n" " half-opped by the ChanServ when it joins the channel." msgstr "" +"Määrittää pyytääkö botti tulla ChanServin puolioppaamaksi, kun\n" +" se liittyy kanavalle." #: config.py:105 msgid "" "Determines whether the bot will request to get\n" " voiced by the ChanServ when it joins the channel." msgstr "" +"Määrittää pyytääkö botti ChanServiltä äänen, kun\n" +" se liittyy kanavalle." #: plugin.py:47 msgid "" @@ -111,10 +133,18 @@ msgid "" " network. Other commands such as identify, op, etc. should not be\n" " necessary if the bot is properly configured." msgstr "" +"Tämä lisäosa hoitaa palvelut verkoissa, jotka tarjoavat niitä.\n" +" Perusteellisesti, sinun pitäisi käyttää komentoa \"password\" kertoaksesi botille\n" +" millä salasanalla ja tunnuksella se tunnistautuu. Voit käyttää\n" +" salasanakomentoa monta kertaa, mikäli botillasi on monta rekisteröityä\n" +" nimimerkkiä. Varmista myös, että asetusarvot täsmäävät\n" +" NickServin ja ChanServin nimimerkkeihin verkossasi.\n" +" Muiden komentojen, kuten identify, op, jne. ei\n" +" pitäisi olla vaadittuja, jos botti on määritetty hyvin." #: plugin.py:397 msgid "You must set supybot.plugins.Services.ChanServ before I'm able to send the %s command." -msgstr "" +msgstr "Sinun täytyy asettaa supybot.plugins.Services.ChanServ ennen kuin pystyn lähettämään komennon %s." #: plugin.py:403 msgid "" @@ -124,10 +154,15 @@ msgid "" " necessary if the message isn't sent in the channel itself.\n" " " msgstr "" +"[]\n" +"\n" +" Yrittää päästä ChanServin oppaamaksi . on vaadittu vain,\n" +" jos viestiä ei lähetetä kanavalla itsellään.\n" +" " #: plugin.py:409 msgid "I'm already opped in %s." -msgstr "" +msgstr "Minut on jo opattu kanavalla %s." #: plugin.py:416 msgid "" @@ -137,10 +172,15 @@ msgid "" " necessary if the message isn't sent in the channel itself.\n" " " msgstr "" +"[]\n" +"\n" +" Yrittää saada ChanServiltä äänen . on vaadittu vain, jos\n" +" viestiä ei lähetetä kanavalla itsellään.\n" +" " #: plugin.py:422 msgid "I'm already voiced in %s." -msgstr "" +msgstr "Minulla on jo ääni kanavalla %s." #: plugin.py:439 msgid "" @@ -152,6 +192,12 @@ msgid "" " itself.\n" " " msgstr "" +"[]\n" +"\n" +" Yrittää poistaa porttikiellon käyttämällä ChanServiä. on vaadittu vain, jos\n" +" viestiä ei lähetetä kanavalla itsellään, mutta luultavast jos tarvitset tätä komentoa, et ole kanavallai\n" +" itsellään.\n" +" " #: plugin.py:460 msgid "" @@ -163,6 +209,13 @@ msgid "" " itself.\n" " " msgstr "" +"[]\n" +"\n" +" Yrittää saada ChanServiltä kutsun . on vaadittu vain,\n" +" jos viestiä ei lähetetä kanavalla itsellään, mutta luultavasti\n" +" jos tarvitset tätä komentoa, et lähetä sitä kanavalla\n" +" itsellään.\n" +" " #: plugin.py:481 msgid "" @@ -171,14 +224,18 @@ msgid "" " Identifies with NickServ using the current nick.\n" " " msgstr "" +"ei ota parametrejä\n" +"\n" +" Tunnistautuu NickServille käyttämällä nykyistä nimimerkkiä.\n" +" " #: plugin.py:490 msgid "I don't have a configured password for my current nick." -msgstr "" +msgstr "Minulla ei ole määritettyä salasanaa nimimerkilleni." #: plugin.py:493 msgid "You must set supybot.plugins.Services.NickServ before I'm able to do identify." -msgstr "" +msgstr "Sinun täytyy asettaa supybot.plugins.Services.NickServ ennen kuin pystyn tunnistautumaan." #: plugin.py:499 msgid "" @@ -188,14 +245,19 @@ msgid "" " ghosts the bot's configured nick and takes it.\n" " " msgstr "" +"[]\n" +"\n" +" Ghostaa botin annetun nimimerkin ja ottaa sen. Jos nimimerkkiä ei ole annettu,\n" +" ghostaa botin määritetyn nimimerkin ja ottaa sen.\n" +" " #: plugin.py:508 msgid "I cowardly refuse to ghost myself." -msgstr "" +msgstr "Minä pelkurimaisesti kieltäydyn ghostaamasta itseäni." #: plugin.py:513 msgid "You must set supybot.plugins.Services.NickServ before I'm able to ghost a nick." -msgstr "" +msgstr "Sinun täytyy asettaa supybot.plugins.Services.NickServ ennen kuin pystyn ghostaamaan nimimerkin." #: plugin.py:519 msgid "" @@ -205,10 +267,15 @@ msgid "" " not given, removes from the configured nicks.\n" " " msgstr "" +" []\n" +"\n" +" Asettaa NickServin salasanan . Jos ei\n" +" ole annettu, poistaa määritetyistä nimimerkeistä.\n" +" " #: plugin.py:529 msgid "That nick was not configured with a password." -msgstr "" +msgstr "Tuota nimimerkkiä ei ole määritetty salasanan kanssa." #: plugin.py:540 msgid "" @@ -218,8 +285,13 @@ msgid "" " with.\n" " " msgstr "" +"ei ota parametrejä\n" +"\n" +" Palauttaa nimimerkin, jolla tämä lisäosa on määritetty tunnistautumaan ja\n" +" ghostaamaan.\n" +" " #: plugin.py:550 msgid "I'm not currently configured for any nicks." -msgstr "" +msgstr "Minulle ei ole tällä hetkellä määritetty yhtään nimimerkkiä."