Merge branch 'aka-sqlite3' into speed-up-2to3

This commit is contained in:
Valentin Lorentz 2014-02-02 22:15:43 +01:00
commit 4fe74ed397
127 changed files with 2856 additions and 1879 deletions

View File

@ -12,11 +12,8 @@ isn't any way to get around it. You can get it from [Python homepage].
[Twisted] -- Version 1.2.0 or greater (unless you actually want to use Twisted,
you don't actually need it)
[SQLAlchemy] -- If you want the Aka plugin (and probably other plugins in the future)
[PySQLite]:https://code.google.com/p/pysqlite/
[Twisted]:http://twistedmatrix.com/trac/
[SQLAlchemy]:http://www.sqlalchemy.org/
For more information and help on how to use Supybot, checkout
the documents under [docs/], especially [GETTING_STARTED] and

View File

@ -1,7 +1,7 @@
# Valentin Lorentz <progval@progval.net>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-04-21 16:00+CEST\n"
"PO-Revision-Date: 2013-04-21 16:01+0100\n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"

View File

@ -1,17 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2011-10-30 19:20+CET\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 13:38+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Last-Translator: \n"
"Language-Team: ProgVal <progval@gmail.com>\n"
"Language: \n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: French\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: Ascii\n"
"X-Generator: Poedit 1.5.4\n"
#: plugin.py:54
msgid "Nick/channel temporarily unavailable."
@ -33,75 +32,81 @@ msgstr "Ne peut joindre %s, j'y suis banni."
msgid "Cannot join %s, my keyword was wrong."
msgstr "Ne peut joindre %s, mon mot de passe est mauvais."
#: plugin.py:104
#: plugin.py:104 plugin.py:113
msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "Ne peut joindre %s, je ne suis pas identifié auprès de NickServ."
#: plugin.py:134
#: plugin.py:143
msgid ""
"<channel> [<key>]\n"
"\n"
" Tell the bot to join the given channel. If <key> is given, it is used\n"
" Tell the bot to join the given channel. If <key> is given, it is "
"used\n"
" when attempting to join the channel.\n"
" "
msgstr ""
"<canal> [<clef>]\n"
"\n"
"Dit au bot de rejoindre le canal donné. Si la <clef> est donnée, elle est utilisée pour rejoindre le canal."
"Dit au bot de rejoindre le canal donné. Si la <clef> est donnée, elle est "
"utilisée pour rejoindre le canal."
#: plugin.py:147
#: plugin.py:156
msgid "I'm already too close to maximum number of channels for this network."
msgstr "Je suis déjà sur un nombre de canaux trop grand pour ce réseau."
#: plugin.py:156
#: plugin.py:165
msgid ""
"takes no arguments\n"
"\n"
" Returns the channels the bot is on. Must be given in private, in order\n"
" Returns the channels the bot is on. Must be given in private, in "
"order\n"
" to protect the secrecy of secret channels.\n"
" "
msgstr ""
"Ne prend pas d'argument \n"
"\n"
"Retourne les canaux sur lesquels le bot est. Doit être en privé, dans le but d'éviter que les canaux secrets ne soient divulgués."
"Retourne les canaux sur lesquels le bot est. Doit être en privé, dans le but "
"d'éviter que les canaux secrets ne soient divulgués."
#: plugin.py:166
#: plugin.py:175
msgid "I'm not currently in any channels."
msgstr "Je ne suis actuellement sur aucun canal."
#: plugin.py:172
#: plugin.py:181
msgid "My connection is restricted, I can't change nicks."
msgstr "Ma connexion est restreinte, je ne peux changer de nick."
#: plugin.py:179
#: plugin.py:188
msgid "Someone else is already using that nick."
msgstr "Quelqu'un d'autre utilise déjà ce nick."
#: plugin.py:186
#: plugin.py:195
msgid "That nick is currently banned."
msgstr "Ce nick est banni."
#: plugin.py:193
#: plugin.py:202
msgid "I can't change nicks, the server said %q."
msgstr "Je ne peux changer de nick, le serveur a dit %q."
#: plugin.py:207
#: plugin.py:216
msgid ""
"[<nick>]\n"
"[<nick>] [<network>]\n"
"\n"
" Changes the bot's nick to <nick>. If no nick is given, returns the\n"
" bot's current nick.\n"
" "
msgstr ""
"[<nick>]\n"
"[<nick>] [<réseau>]\n"
"\n"
"Change le nick du bot à <nick>. Si aucun nick n'est donné, retourne le nick actuel du bot."
"Change le nick du bot à <nick>. Si aucun nick n'est donné, retourne le nick "
"actuel du bot."
#: plugin.py:222
#: plugin.py:233
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> is\n"
" Tells the bot to part the list of channels you give it. <channel> "
"is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
@ -109,67 +114,84 @@ msgid ""
msgstr ""
"[<canal>] [<raison>]\n"
"\n"
"Dit au bot de partir de la liste de canaux que vous avez donnée. <canal> n'est nécessaire que si vous voulez que le bot parte d'un autre canal que l'actuel. Si la <raison> est spécifiée, elle est utilisée comme message de départ."
"Dit au bot de partir de la liste de canaux que vous avez donnée. <canal> "
"n'est nécessaire que si vous voulez que le bot parte d'un autre canal que "
"l'actuel. Si la <raison> est spécifiée, elle est utilisée comme message de "
"départ."
#: plugin.py:240
#: plugin.py:251
msgid "I'm not in %s."
msgstr "Je ne suis pas sur %s."
#: plugin.py:252
#: plugin.py:263
msgid ""
"<name|hostmask> <capability>\n"
"\n"
" Gives the user specified by <name> (or the user to whom <hostmask>\n"
" Gives the user specified by <name> (or the user to whom "
"<hostmask>\n"
" currently maps) the specified capability <capability>\n"
" "
msgstr ""
"<nom|masque d'hôte> <capacité>\n"
"\n"
"Donne la <capacité> à l'utilisateur spécifié par <nom> (ou l'utilisateur à qui correspond <masque d'hôte>)."
#: 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 "La capacité \"owner\" ne peut être ajoutée via le bot. Utilisez le programme supybot-adduser (ou éditez le fichier users.conf vous-même) pour ajouter la capacité owner."
"Donne la <capacité> à l'utilisateur spécifié par <nom> (ou l'utilisateur à "
"qui correspond <masque d'hôte>)."
#: plugin.py:283
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 ""
"La capacité \"owner\" ne peut être ajoutée via le bot. Utilisez le programme "
"supybot-adduser (ou éditez le fichier users.conf vous-même) pour ajouter la "
"capacité owner."
#: plugin.py:294
msgid "You can't add capabilities you don't have."
msgstr "Vous ne pouvez ajouter des capacités que vous n'avez pas."
#: plugin.py:288
#: plugin.py:299
msgid ""
"<name|hostmask> <capability>\n"
"\n"
" Takes from the user specified by <name> (or the user to whom\n"
" <hostmask> currently maps) the specified capability <capability>\n"
" <hostmask> currently maps) the specified capability "
"<capability>\n"
" "
msgstr ""
"<nom|masque d'hôte> <capacité>\n"
"\n"
"Retire la <capacité> à l'utilisateur spécifié par le <nom> (ou celui à qui correspond le <masque d'hôte>)."
"Retire la <capacité> à l'utilisateur spécifié par le <nom> (ou celui à qui "
"correspond le <masque d'hôte>)."
#: plugin.py:300
#: plugin.py:311
msgid "That user doesn't have that capability."
msgstr "Cet utilisateur n'a pas cette capacité."
#: plugin.py:302
#: plugin.py:313
msgid "You can't remove capabilities you don't have."
msgstr "Vous ne pouvez retirer des capacités que vous n'avez pas."
#: plugin.py:310
#: plugin.py:321
msgid ""
"<hostmask|nick> [<expires>]\n"
"\n"
" This will set a persistent ignore on <hostmask> or the hostmask\n"
" currently associated with <nick>. <expires> is an optional argument\n"
" specifying when (in \"seconds from now\") the ignore will expire; if\n"
" currently associated with <nick>. <expires> is an optional "
"argument\n"
" specifying when (in \"seconds from now\") the ignore will "
"expire; if\n"
" it isn't given, the ignore will never automatically expire.\n"
" "
msgstr ""
"<masque d'hôte|nick> [<expiration>]\n"
"\n"
"Ajoute un masque d'ignorance persistant sur le <masque d'hôte>, ou sur le masque d'hôte de <nick>. <expiration> est un argument optionnel spécifiant quand (en \"secondes à partir de maintenant\") l'ignorance expirera ; si elle n'est pas donnée, l'ignorance n'expirera jamais."
"Ajoute un masque d'ignorance persistant sur le <masque d'hôte>, ou sur le "
"masque d'hôte de <nick>. <expiration> est un argument optionnel spécifiant "
"quand (en \"secondes à partir de maintenant\") l'ignorance expirera ; si "
"elle n'est pas donnée, l'ignorance n'expirera jamais."
#: plugin.py:323
#: plugin.py:334
msgid ""
"<hostmask|nick>\n"
"\n"
@ -179,13 +201,14 @@ msgid ""
msgstr ""
"<masque d'hôte|nick>\n"
"\n"
"Ceci retirera le masque d'ignorance persistant sur le <masque d'hôte>, ou sur le masque d'hôte associé au <nick>."
"Ceci retirera le masque d'ignorance persistant sur le <masque d'hôte>, ou "
"sur le masque d'hôte associé au <nick>."
#: plugin.py:332
#: plugin.py:343
msgid "%s wasn't in the ignores database."
msgstr "%s n'étais pas dans ma base de données d'ignorance."
#: plugin.py:337
#: plugin.py:348
msgid ""
"takes no arguments\n"
"\n"
@ -196,11 +219,11 @@ msgstr ""
"\n"
"Liste les masques d'hôte que le bot ignore."
#: plugin.py:345
#: plugin.py:356
msgid "I'm not currently globally ignoring anyone."
msgstr "Je n'ignore actuellement personne globalement."
#: plugin.py:351
#: plugin.py:360 plugin.py:371
msgid ""
"takes no arguments\n"
"\n"
@ -210,4 +233,3 @@ msgstr ""
"Ne prend pas d'argument\n"
"\n"
"Vide la queue en attente pour ce réseau."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -185,7 +185,7 @@ msgstr ""
msgid "I'm not currently globally ignoring anyone."
msgstr ""
#: plugin.py:362
#: plugin.py:360 plugin.py:371
#, docstring
msgid ""
"takes no arguments\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-31 19:09+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,57 +15,80 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:124 plugin.py:334
#: config.py:55
msgid ""
"The maximum number of words allowed in a\n"
" command name. Setting this to an high value may slow down your bot\n"
" on long commands."
msgstr ""
#: plugin.py:129 plugin.py:368
msgid "This Aka already exists."
msgstr ""
#: plugin.py:149 plugin.py:165 plugin.py:181
#: plugin.py:156 plugin.py:173 plugin.py:190
msgid "This Aka does not exist"
msgstr ""
#: plugin.py:151
#: plugin.py:158
msgid "This Aka is already locked."
msgstr ""
#: plugin.py:167
#: plugin.py:175
msgid "This Aka is already unlocked."
msgstr ""
#: plugin.py:226
#: plugin.py:235
#, docstring
msgid ""
"Add the help for \"@plugin help Aka\" here\n"
" This should describe *how* to use this plugin."
msgstr ""
#: plugin.py:312
#: plugin.py:342
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
#: plugin.py:346
msgid " at least"
msgstr ""
#: plugin.py:321
#: plugin.py:355
msgid "Locked by %s at %s"
msgstr ""
#: plugin.py:324
#: plugin.py:358
msgid ""
"<an alias,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
#: plugin.py:325
#: plugin.py:359
msgid "argument"
msgstr ""
#: plugin.py:331
#: plugin.py:365
msgid "You can't overwrite commands in this plugin."
msgstr ""
#: plugin.py:344
#: plugin.py:370
msgid "This Aka has too many spaces in its name."
msgstr ""
#: plugin.py:375
msgid "Can't mix $* and optional args (@1, etc.)"
msgstr ""
#: plugin.py:377
msgid "There can be only one $* in an alias."
msgstr ""
#: plugin.py:384
msgid "This Aka is locked."
msgstr ""
#: plugin.py:348
#: plugin.py:388
#, docstring
msgid ""
"[--channel <#channel>] <name> <command>\n"
@ -80,11 +103,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:362 plugin.py:388 plugin.py:420 plugin.py:443
#: plugin.py:402 plugin.py:428 plugin.py:460 plugin.py:483
msgid "%r is not a valid channel."
msgstr ""
#: plugin.py:380
#: plugin.py:420
#, docstring
msgid ""
"[--channel <#channel>] <name>\n"
@ -93,14 +116,14 @@ msgid ""
" "
msgstr ""
#: plugin.py:402
#: plugin.py:442
#, docstring
msgid ""
"Check if the user has any of the required capabilities to manage\n"
" the regexp database."
msgstr ""
#: plugin.py:412
#: plugin.py:452
#, docstring
msgid ""
"[--channel <#channel>] <alias>\n"
@ -109,7 +132,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:435
#: plugin.py:475
#, docstring
msgid ""
"[--channel <#channel>] <alias>\n"
@ -118,7 +141,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:458
#: plugin.py:498
#, docstring
msgid ""
"takes no arguments\n"
@ -126,11 +149,11 @@ msgid ""
" Imports the Alias database into Aka's, and clean the former."
msgstr ""
#: plugin.py:463
#: plugin.py:503
msgid "Alias plugin is not loaded."
msgstr ""
#: plugin.py:473
#: plugin.py:513
msgid "Error occured when importing the %n: %L"
msgstr ""

View File

@ -32,6 +32,7 @@ import re
import os
import sys
import datetime
import operator
import supybot.conf as conf
import supybot.utils as utils
@ -43,18 +44,160 @@ import supybot.callbacks as callbacks
from supybot.i18n import PluginInternationalization
_ = PluginInternationalization('Aka')
try:
import sqlite3
except ImportError:
sqlite3 = None
try:
import sqlalchemy
import sqlalchemy.ext
import sqlalchemy.ext.declarative
except ImportError:
raise callbacks.Error('You have to install python-sqlalchemy in order '
'to load this plugin.')
sqlalchemy = None
if sqlalchemy:
if not (sqlite3 or sqlalchemy):
raise callbacks.Error('You have to install python-sqlite3 or '
'python-sqlalchemy in order to load this plugin.')
available_db = {}
class Alias(object):
__slots__ = ('name', 'alias', 'locked', 'locked_by', 'locked_at')
def __init__(self, name, alias):
self.name = name
self.alias = alias
self.locked = False
self.locked_by = None
self.locked_at = None
def __repr__(self):
return "<Alias('%r', '%r')>" % (self.name, self.alias)
if sqlite3:
class SQLiteAkaDB(object):
__slots__ = ('engines', 'filename', 'dbs',)
def __init__(self, filename):
self.engines = ircutils.IrcDict()
self.filename = filename.replace('sqlite3', 'sqlalchemy')
def close(self):
self.dbs.clear()
def get_db(self, channel):
if channel in self.engines:
engine = self.engines[channel]
else:
filename = plugins.makeChannelFilename(self.filename, channel)
exists = os.path.exists(filename)
engine = sqlite3.connect(filename, check_same_thread=False)
if not exists:
cursor = engine.cursor()
cursor.execute("""CREATE TABLE aliases (
id INTEGER NOT NULL,
name VARCHAR NOT NULL,
alias VARCHAR NOT NULL,
locked BOOLEAN NOT NULL,
locked_by VARCHAR,
locked_at DATETIME,
PRIMARY KEY (id),
UNIQUE (name))""")
engine.commit()
self.engines[channel] = engine
assert engine.execute("select 1").fetchone() == (1,)
return engine
def has_aka(self, channel, name):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
db = self.get_db(channel)
return self.get_db(channel).cursor() \
.execute("""SELECT COUNT() as count
FROM aliases WHERE name = ?;""", (name,)) \
.fetchone()[0]
def get_aka_list(self, channel):
cursor = self.get_db(channel).cursor()
cursor.execute("""SELECT name FROM aliases;""")
list_ = cursor.fetchall()
return list_
def get_alias(self, channel, name):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
cursor = self.get_db(channel).cursor()
cursor.execute("""SELECT alias FROM aliases
WHERE name = ?;""", (name,))
r = cursor.fetchone()
if r:
return r[0]
else:
return None
def add_aka(self, channel, name, alias):
name = callbacks.canonicalName(name, preserve_spaces=True)
if self.has_aka(channel, name):
raise AkaError(_('This Aka already exists.'))
if sys.version_info[0] < 3:
if isinstance(name, str):
name = name.decode('utf8')
if isinstance(alias, str):
alias = alias.decode('utf8')
db = self.get_db(channel)
cursor = db.cursor()
cursor.execute("""INSERT INTO aliases VALUES (
NULL, ?, ?, 0, NULL, NULL);""", (name, alias))
db.commit()
def remove_aka(self, channel, name):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
db = self.get_db(channel)
db.cursor().execute('DELETE FROM aliases WHERE name = ?', (name,))
db.commit()
def lock_aka(self, channel, name, by):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
db = self.get_db(channel)
cursor = db.cursor().execute("""UPDATE aliases
SET locked=1, locked_at=?, locked_by=? WHERE name = ?""",
(datetime.datetime.now(), by, name))
if cursor.rowcount == 0:
raise AkaError(_('This Aka does not exist'))
db.commit()
def unlock_aka(self, channel, name, by):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
db = self.get_db(channel)
cursor = db.cursor()
cursor.execute("""UPDATE aliases SET locked=0, locked_at=?
WHERE name = ?""", (datetime.datetime.now(), name))
if cursor.rowcount == 0:
raise AkaError(_('This Aka does not exist'))
db.commit()
def get_aka_lock(self, channel, name):
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
cursor = self.get_db(channel).cursor()
cursor.execute("""SELECT locked, locked_by, locked_at
FROM aliases WHERE name = ?;""", (name,))
r = cursor.fetchone()
if r:
return (bool(r[0]), r[1], r[2])
else:
raise AkaError(_('This Aka does not exist'))
available_db.update({'sqlite3': SQLiteAkaDB})
elif sqlalchemy:
Base = sqlalchemy.ext.declarative.declarative_base()
class Alias(Base):
class SQLAlchemyAlias(Alias, Base):
__slots__ = ()
__tablename__ = 'aliases'
id = sqlalchemy.Column(sqlalchemy.Integer, primary_key=True)
@ -65,18 +208,10 @@ if sqlalchemy:
locked_by = sqlalchemy.Column(sqlalchemy.String, nullable=True)
locked_at = sqlalchemy.Column(sqlalchemy.DateTime, nullable=True)
def __init__(self, name, alias):
self.name = name
self.alias = alias
self.locked = False
self.locked_by = None
self.locked_at = None
def __repr__(self):
return "<Alias('%r', '%r')>" % (self.name, self.alias)
# TODO: Add table for usage statistics
class SqlAlchemyAkaDB(object):
__slots__ = ('engines', 'filename', 'sqlalchemy', 'dbs')
def __init__(self, filename):
self.engines = ircutils.IrcDict()
self.filename = filename
@ -105,12 +240,12 @@ if sqlalchemy:
name = callbacks.canonicalName(name, preserve_spaces=True)
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
count = self.get_db(channel).query(Alias) \
.filter(Alias.name == name) \
count = self.get_db(channel).query(SQLAlchemyAlias) \
.filter(SQLAlchemyAlias.name == name) \
.count()
return bool(count)
def get_aka_list(self, channel):
list_ = list(self.get_db(channel).query(Alias.name))
list_ = list(self.get_db(channel).query(SQLAlchemyAlias.name))
return list_
def get_alias(self, channel, name):
@ -118,8 +253,8 @@ if sqlalchemy:
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
try:
return self.get_db(channel).query(Alias.alias) \
.filter(Alias.name == name).one()[0]
return self.get_db(channel).query(SQLAlchemyAlias.alias) \
.filter(SQLAlchemyAlias.name == name).one()[0]
except sqlalchemy.orm.exc.NoResultFound:
return None
@ -133,7 +268,7 @@ if sqlalchemy:
if isinstance(alias, str):
alias = alias.decode('utf8')
db = self.get_db(channel)
db.add(Alias(name, alias))
db.add(SQLAlchemyAlias(name, alias))
db.commit()
def remove_aka(self, channel, name):
@ -141,7 +276,7 @@ if sqlalchemy:
if sys.version_info[0] < 3 and isinstance(name, str):
name = name.decode('utf8')
db = self.get_db(channel)
db.query(Alias).filter(Alias.name == name).delete()
db.query(SQLAlchemyAlias).filter(SQLAlchemyAlias.name == name).delete()
db.commit()
def lock_aka(self, channel, name, by):
@ -150,8 +285,8 @@ if sqlalchemy:
name = name.decode('utf8')
db = self.get_db(channel)
try:
aka = db.query(Alias) \
.filter(Alias.name == name).one()
aka = db.query(SQLAlchemyAlias) \
.filter(SQLAlchemyAlias.name == name).one()
except sqlalchemy.orm.exc.NoResultFound:
raise AkaError(_('This Aka does not exist'))
if aka.locked:
@ -167,8 +302,8 @@ if sqlalchemy:
name = name.decode('utf8')
db = self.get_db(channel)
try:
aka = db.query(Alias) \
.filter(Alias.name == name).one()
aka = db.query(SQLAlchemyAlias) \
.filter(SQLAlchemyAlias.name == name).one()
except sqlalchemy.orm.exc.NoResultFound:
raise AkaError(_('This Aka does not exist'))
if not aka.locked:
@ -184,11 +319,13 @@ if sqlalchemy:
name = name.decode('utf8')
try:
return self.get_db(channel) \
.query(Alias.locked, Alias.locked_by, Alias.locked_at)\
.filter(Alias.name == name).one()
.query(SQLAlchemyAlias.locked, SQLAlchemyAlias.locked_by, SQLAlchemyAlias.locked_at)\
.filter(SQLAlchemyAlias.name == name).one()
except sqlalchemy.orm.exc.NoResultFound:
raise AkaError(_('This Aka does not exist'))
available_db.update({'sqlalchemy': SqlAlchemyAkaDB})
def getArgs(args, required=1, optional=0, wildcard=0):
if len(args) < required:
@ -229,7 +366,7 @@ def findBiggestAt(alias):
else:
return 0
AkaDB = plugins.DB('Aka', {'sqlalchemy': SqlAlchemyAkaDB})
AkaDB = plugins.DB('Aka', available_db)
class Aka(callbacks.Plugin):
"""Add the help for "@plugin help Aka" here

View File

@ -1,17 +1,18 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2013-03-02 19:04+CET\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 13:38+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: plugin.py:45
#: plugin.py:46
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -24,17 +25,23 @@ msgstr ""
"Si le canal était donné en argument, args est modifié (le canal est "
"supprimé)."
#: plugin.py:107
#: plugin.py:108
msgid ""
"Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>d)+<word without dots>."
msgstr ""
msgstr "."
#: plugin.py:217
#: plugin.py:219
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
"Vous avez essayé dutiliser plus dimbrication que ce qui est actuellement "
"autorisé sur ce bot."
#: plugin.py:224
msgid " at least"
msgstr "au moins"
#: plugin.py:218
#: plugin.py:226 plugin.py:231
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -44,11 +51,11 @@ msgstr ""
"\n"
"Alias pour %q."
#: plugin.py:219
#: plugin.py:227 plugin.py:232
msgid "argument"
msgstr "argument"
#: plugin.py:287
#: plugin.py:300
msgid ""
"<alias>\n"
"\n"
@ -59,11 +66,11 @@ msgstr ""
"\n"
"Vérouille un alias pour que personne d'autre ne puisse le changer."
#: plugin.py:296 plugin.py:310
#: plugin.py:309 plugin.py:323
msgid "There is no such alias."
msgstr "Cet alias n'existe pas."
#: plugin.py:301
#: plugin.py:314
msgid ""
"<alias>\n"
"\n"
@ -74,11 +81,11 @@ msgstr ""
"\n"
"Déverrouille un alias de façon à ce que des gens puissent le redéfinir."
#: plugin.py:319
#: plugin.py:335
msgid "That name isn't valid. Try %q instead."
msgstr "Ce nom n'est pas valide. Essayez plutôt %q."
#: plugin.py:363
#: plugin.py:383
msgid ""
"<name> <command>\n"
"\n"
@ -104,7 +111,7 @@ msgstr ""
"simplement *tous* les arguments restants, et ne peut être combiné avec des "
"arguments optionnels."
#: plugin.py:386
#: plugin.py:406
msgid ""
"<name>\n"
"\n"

View File

@ -1,91 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-02-15 23:03+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:45
#, docstring
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
" If the channel was given in args, args is modified (the channel is\n"
" removed).\n"
" "
msgstr ""
#: plugin.py:164
msgid " at least"
msgstr ""
#: plugin.py:165
msgid ""
"<an alias,%s %n>\n"
"\n"
"Alias for %q."
msgstr ""
#: plugin.py:166
msgid "argument"
msgstr ""
#: plugin.py:220
#, docstring
msgid ""
"<alias>\n"
"\n"
" Locks an alias so that no one else can change it.\n"
" "
msgstr ""
#: plugin.py:229 plugin.py:243
msgid "There is no such alias."
msgstr ""
#: plugin.py:234
#, docstring
msgid ""
"<alias>\n"
"\n"
" Unlocks an alias so that people can define new aliases over it.\n"
" "
msgstr ""
#: plugin.py:254
msgid "That name isn't valid. Try %q instead."
msgstr ""
#: plugin.py:292
#, docstring
msgid ""
"<name> <command>\n"
"\n"
" Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, @2,\n"
" etc. can be used for optional arguments. $* simply means \"all\n"
" remaining arguments,\" and cannot be combined with optional arguments.\n"
" "
msgstr ""
#: plugin.py:315
#, docstring
msgid ""
"<name>\n"
"\n"
" Removes the given alias, if unlocked.\n"
" "
msgstr ""

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-10-07 18:48+EEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:45
#: plugin.py:46
#, docstring
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
@ -25,29 +25,33 @@ msgid ""
" "
msgstr ""
#: plugin.py:107
#: plugin.py:108
#, docstring
msgid ""
"Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>d)+<word without dots>."
msgstr ""
#: plugin.py:217
#: plugin.py:219
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
#: plugin.py:224
msgid " at least"
msgstr ""
#: plugin.py:218
#: plugin.py:226 plugin.py:231
msgid ""
"<an alias,%s %n>\n"
"\n"
"Alias for %q."
msgstr ""
#: plugin.py:219
#: plugin.py:227 plugin.py:232
msgid "argument"
msgstr ""
#: plugin.py:287
#: plugin.py:300
#, docstring
msgid ""
"<alias>\n"
@ -56,11 +60,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:296 plugin.py:310
#: plugin.py:309 plugin.py:323
msgid "There is no such alias."
msgstr ""
#: plugin.py:301
#: plugin.py:314
#, docstring
msgid ""
"<alias>\n"
@ -69,11 +73,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:319
#: plugin.py:335
msgid "That name isn't valid. Try %q instead."
msgstr ""
#: plugin.py:363
#: plugin.py:383
#, docstring
msgid ""
"<name> <command>\n"
@ -87,7 +91,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:386
#: plugin.py:406
#, docstring
msgid ""
"<name>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-06-09 18:26+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-06-09 18:26+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -42,7 +42,7 @@ msgid ""
" messages to other users."
msgstr ""
#: plugin.py:40
#: plugin.py:41
#, docstring
msgid ""
"This plugin allows users to act through the bot anonymously. The 'do'\n"
@ -58,23 +58,23 @@ msgid ""
" "
msgstr ""
#: plugin.py:64
#: plugin.py:65
msgid "You must be in %s to %q in there."
msgstr ""
#: plugin.py:68
#: plugin.py:69
msgid "I'm lobotomized in %s."
msgstr ""
#: plugin.py:71
#: plugin.py:72
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr ""
#: plugin.py:74
#: plugin.py:75
msgid "%q cannot be used to send private messages."
msgstr ""
#: plugin.py:80
#: plugin.py:81
#, docstring
msgid ""
"<channel|nick> <text>\n"
@ -84,7 +84,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:94
#: plugin.py:95
#, docstring
msgid ""
"<channel> <action>\n"

View File

@ -1,10 +1,10 @@
# Valentin Lorentz <progval@progval.net>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"PO-Revision-Date: 2013-03-03 19:45+0100\n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 19:30+CET\n"
"PO-Revision-Date: 2014-01-21 19:33+0100\n"
"Last-Translator: \n"
"Language-Team: French <kde-i18n-doc@kde.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -30,6 +30,15 @@ msgstr ""
#: config.py:52
msgid ""
"Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
" autovoice) in addition to/instead of classic ones."
msgstr ""
"Détermine si le bot vérifiera les « capacités alternatives » (ie. autoop, "
"autohalfop, autovoice) en plus/à la place des capacités classiques."
#: config.py:56
msgid ""
"Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on."
@ -37,7 +46,7 @@ msgstr ""
"Détermine si le bot ne halfopera/voicera pas lorsque l'auto-op est "
"désactivé, même si l'auto-halfopvoice est activé."
#: config.py:56
#: config.py:60
msgid ""
"Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n"
@ -46,7 +55,7 @@ msgstr ""
"Détermine si le bot opera automatiquement les gens qui ont la capacité "
"<canal>,op lorsqu'ils rejoignent le canal."
#: config.py:60
#: config.py:64
msgid ""
"Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n"
@ -55,7 +64,7 @@ msgstr ""
"Détermine si le bot halfopera les gens qui ont la capacité <canal>,halfop "
"lorsqu'ils rejoignent le canal."
#: config.py:64
#: config.py:68
msgid ""
"Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n"
@ -64,7 +73,7 @@ msgstr ""
"Détermine si le bot voicera automatiquement les gens avec la capacité "
"<canal>,voice lorsqu'ils rejoingent le canal."
#: config.py:68
#: config.py:72
msgid ""
"Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist."
@ -72,7 +81,7 @@ msgstr ""
"Détermine si le bot bannira automatiquement les personnes qui rejoignent le "
"canal et qui sont sur la liste de bannissement."
#: config.py:71
#: config.py:75
msgid ""
"Determines how many seconds the bot\n"
" will automatically ban a person when banning."
@ -80,7 +89,7 @@ msgstr ""
"Détermine combien de secondes durera le bannissement que le bot posera sur "
"une personne."
#: config.py:75
#: config.py:79
msgid ""
"Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans."
@ -88,7 +97,7 @@ msgstr ""
"Détermine combien de secondes le bot attendra avant d'appliquer un mode. "
"Cela n'a aucun effet sur les bannissements."
#: config.py:79
#: config.py:83
msgid ""
"Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v"
@ -96,8 +105,8 @@ msgstr ""
"Des modes supplémentaires à appliquer à un utilisateur. Par exemple : "
"user1+o-v user2+v user3-v"
#: plugin.py:64
#: plugin.py:78
msgid ""
"Determines whether or not a mode has already\n"
" been applied."
msgstr ""
" been applied."
msgstr "Détermine si un mode a déjà été appliqué ou non."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-10-07 18:54+EEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -29,60 +29,67 @@ msgstr ""
#: config.py:52
msgid ""
"Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
" autovoice) in addition to/instead of classic ones."
msgstr ""
#: config.py:56
msgid ""
"Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on."
msgstr ""
#: config.py:56
#: config.py:60
msgid ""
"Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n"
" "
msgstr ""
#: config.py:60
#: config.py:64
msgid ""
"Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n"
" channel."
msgstr ""
#: config.py:64
#: config.py:68
msgid ""
"Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n"
" channel."
msgstr ""
#: config.py:68
#: config.py:72
msgid ""
"Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist."
msgstr ""
#: config.py:71
#: config.py:75
msgid ""
"Determines how many seconds the bot\n"
" will automatically ban a person when banning."
msgstr ""
#: config.py:75
#: config.py:79
msgid ""
"Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans."
msgstr ""
#: config.py:79
#: config.py:83
msgid ""
"Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v"
msgstr ""
#: plugin.py:64
#: plugin.py:78
#, docstring
msgid ""
"Determines whether or not a mode has already\n"
" been applied."
" been applied."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,21 +15,21 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: config.py:40
#: config.py:42
msgid "Would you like to add some bad words?"
msgstr ""
#: config.py:41
#: config.py:43
msgid "What words? (separate individual words by spaces)"
msgstr ""
#: config.py:53
#: config.py:55
msgid ""
"Determines what words are\n"
" considered to be 'bad' so the bot won't say them."
msgstr ""
#: config.py:56
#: config.py:58
msgid ""
"Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within other\n"
@ -40,14 +40,14 @@ msgid ""
" plugin."
msgstr ""
#: config.py:73
#: config.py:75
msgid ""
"Determines what characters will replace bad words; a\n"
" chunk of these characters matching the size of the replaced bad word will\n"
" be used to replace the bad words you've configured."
msgstr ""
#: config.py:81
#: config.py:83
msgid ""
"Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
@ -58,13 +58,13 @@ msgid ""
" supybot.plugins.BadWords.simpleReplacement."
msgstr ""
#: config.py:89
#: config.py:91
msgid ""
"Determines what word will replace bad\n"
" words if the replacement method is 'simple'."
msgstr ""
#: config.py:92
#: config.py:94
msgid ""
"Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad words.\n"
@ -73,20 +73,20 @@ msgid ""
" plugins that do coloring or bolding of text."
msgstr ""
#: config.py:99
#: config.py:101
msgid ""
"Determines whether the bot will kick people with\n"
" a warning when they use bad words."
msgstr ""
#: config.py:102
#: config.py:104
msgid ""
"You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n"
" language in the future."
msgstr ""
#: config.py:104
#: config.py:106
msgid ""
"Determines the kick message used by the\n"
" bot when kicking users for saying bad words."
@ -100,7 +100,7 @@ msgid ""
" has op."
msgstr ""
#: plugin.py:114
#: plugin.py:115
#, docstring
msgid ""
"takes no arguments\n"
@ -109,11 +109,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:124
#: plugin.py:125
msgid "I'm not currently censoring any bad words."
msgstr ""
#: plugin.py:129
#: plugin.py:130
#, docstring
msgid ""
"<word> [<word> ...]\n"
@ -122,7 +122,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:141
#: plugin.py:142
#, docstring
msgid ""
"<word> [<word> ...]\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -21,7 +21,7 @@ msgid ""
" rejoin a channel whenever it's kicked from the channel."
msgstr ""
#: plugin.py:69
#: plugin.py:74
#, docstring
msgid ""
"[<channel>] <mode> [<arg> ...]\n"
@ -32,11 +32,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:76
#: plugin.py:81
msgid "change the mode"
msgstr ""
#: plugin.py:80
#: plugin.py:85
#, docstring
msgid ""
"[<channel>] [<limit>]\n"
@ -47,11 +47,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:90
#: plugin.py:95
msgid "change the limit"
msgstr ""
#: plugin.py:95
#: plugin.py:100
#, docstring
msgid ""
"[<channel>]\n"
@ -62,11 +62,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:102
#: plugin.py:107
msgid "moderate the channel"
msgstr ""
#: plugin.py:106
#: plugin.py:111
#, docstring
msgid ""
"[<channel>]\n"
@ -77,11 +77,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:114
#: plugin.py:119
msgid "unmoderate the channel"
msgstr ""
#: plugin.py:118
#: plugin.py:123
#, docstring
msgid ""
"[<channel>] [<key>]\n"
@ -92,11 +92,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:130
#: plugin.py:135
msgid "change the keyword"
msgstr ""
#: plugin.py:135
#: plugin.py:140
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -108,11 +108,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:147
#: plugin.py:152
msgid "op someone"
msgstr ""
#: plugin.py:151
#: plugin.py:156
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -124,11 +124,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:163
#: plugin.py:168
msgid "halfop someone"
msgstr ""
#: plugin.py:184
#: plugin.py:189
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -140,11 +140,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:192
#: plugin.py:197
msgid "voice someone"
msgstr ""
#: plugin.py:197
#: plugin.py:202
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -155,15 +155,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:204
#: plugin.py:209
msgid "I cowardly refuse to deop myself. If you really want me deopped, tell me to op you and then deop me yourself."
msgstr ""
#: plugin.py:212
#: plugin.py:217
msgid "deop someone"
msgstr ""
#: plugin.py:217
#: plugin.py:222
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -174,15 +174,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:224
#: plugin.py:229
msgid "I cowardly refuse to dehalfop myself. If you really want me dehalfopped, tell me to op you and then dehalfop me yourself."
msgstr ""
#: plugin.py:232
#: plugin.py:237
msgid "dehalfop someone"
msgstr ""
#: plugin.py:237
#: plugin.py:242
#, docstring
msgid ""
"[<channel>] [<nick> ...]\n"
@ -193,11 +193,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:244
#: plugin.py:249
msgid "I cowardly refuse to devoice myself. If you really want me devoiced, tell me to op you and then devoice me yourself."
msgstr ""
#: plugin.py:253
#: plugin.py:258
#, docstring
msgid ""
"[<channel>]\n"
@ -208,7 +208,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:266
#: plugin.py:271
#, docstring
msgid ""
"[<channel>] <nick>[, <nick>, ...] [<reason>]\n"
@ -220,19 +220,19 @@ msgid ""
" "
msgstr ""
#: plugin.py:274
#: plugin.py:279
msgid "I cowardly refuse to kick myself."
msgstr ""
#: plugin.py:279
#: plugin.py:284
msgid "The reason you gave is longer than the allowed length for a KICK reason on this server."
msgstr ""
#: plugin.py:284
#: plugin.py:289
msgid "kick someone"
msgstr ""
#: plugin.py:290
#: plugin.py:295
#, docstring
msgid ""
"[<channel>] [--{exact,nick,user,host}] <nick> [<seconds>] [<reason>]\n"
@ -249,11 +249,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:307
#: plugin.py:312
msgid "kick or ban someone"
msgstr ""
#: plugin.py:315
#: plugin.py:320
#, docstring
msgid ""
"[<channel>] [--{exact,nick,user,host}] <nick> [<seconds>]\n"
@ -269,27 +269,27 @@ msgid ""
" "
msgstr ""
#: plugin.py:331
#: plugin.py:336
msgid "ban someone"
msgstr ""
#: plugin.py:351
#: plugin.py:356
msgid "I haven't seen %s."
msgstr ""
#: plugin.py:361
#: plugin.py:366
msgid "I cowardly refuse to kickban myself."
msgstr ""
#: plugin.py:370
#: plugin.py:375
msgid "I cowardly refuse to ban myself."
msgstr ""
#: plugin.py:398
#: plugin.py:403
msgid "%s has %s too, you can't ban him/her/it."
msgstr ""
#: plugin.py:410
#: plugin.py:415
#, docstring
msgid ""
"[<channel>] [<hostmask|--all>]\n"
@ -302,19 +302,19 @@ msgid ""
" "
msgstr ""
#: plugin.py:430
#: plugin.py:435
msgid "All bans on %s matching %s have been removed."
msgstr ""
#: plugin.py:434
#: plugin.py:439
msgid "No bans matching %s were found on %s."
msgstr ""
#: plugin.py:437
#: plugin.py:442
msgid "unban someone"
msgstr ""
#: plugin.py:444
#: plugin.py:449
#, docstring
msgid ""
"[<channel>]\n"
@ -323,11 +323,11 @@ msgid ""
" If <channel> is not given, it defaults to the current channel."
msgstr ""
#: plugin.py:448
#: plugin.py:453
msgid "No bans."
msgstr ""
#: plugin.py:453
#: plugin.py:458
#, docstring
msgid ""
"[<channel>] <nick>\n"
@ -338,19 +338,19 @@ msgid ""
" "
msgstr ""
#: plugin.py:462
#: plugin.py:467
msgid "invite someone"
msgstr ""
#: plugin.py:481
#: plugin.py:486
msgid "%s is already in %s."
msgstr ""
#: plugin.py:488
#: plugin.py:493
msgid "There is no %s on this network."
msgstr ""
#: plugin.py:500
#: plugin.py:505
#, docstring
msgid ""
"[<channel>]\n"
@ -362,7 +362,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:515
#: plugin.py:520
#, docstring
msgid ""
"[<channel>]\n"
@ -374,7 +374,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:530
#: plugin.py:535
#, docstring
msgid ""
"takes no arguments\n"
@ -383,15 +383,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:545
#: plugin.py:550
msgid "I'm currently lobotomized in %L."
msgstr ""
#: plugin.py:548
#: plugin.py:553
msgid "I'm not currently lobotomized in any channels that you're in."
msgstr ""
#: plugin.py:555
#: plugin.py:560
#, docstring
msgid ""
"[<channel>] <nick|hostmask> [<expires>]\n"
@ -408,7 +408,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:575
#: plugin.py:580
#, docstring
msgid ""
"[<channel>] <hostmask>\n"
@ -419,11 +419,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:587
#: plugin.py:592
msgid "There are no persistent bans for that hostmask."
msgstr ""
#: plugin.py:592
#: plugin.py:597
#, docstring
msgid ""
"[<channel>]\n"
@ -433,19 +433,19 @@ msgid ""
" "
msgstr ""
#: plugin.py:602
#: plugin.py:607
msgid "%q (expires %t)"
msgstr ""
#: plugin.py:605
#: plugin.py:610
msgid "%q (never expires)"
msgstr ""
#: plugin.py:609
#: plugin.py:614
msgid "There are no persistent bans on %s."
msgstr ""
#: plugin.py:616
#: plugin.py:621
#, docstring
msgid ""
"[<channel>] <nick|hostmask> [<expires>]\n"
@ -460,7 +460,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:634
#: plugin.py:639
#, docstring
msgid ""
"[<channel>] <hostmask>\n"
@ -471,11 +471,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:646
#: plugin.py:651
msgid "There are no ignores for that hostmask."
msgstr ""
#: plugin.py:651
#: plugin.py:656
#, docstring
msgid ""
"[<channel>]\n"
@ -486,11 +486,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:660
#: plugin.py:665
msgid "I'm not currently ignoring any hostmasks in %q"
msgstr ""
#: plugin.py:671
#: plugin.py:676
#, docstring
msgid ""
"[<channel>] <nick|username> <capability> [<capability> ...]\n"
@ -502,7 +502,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:687
#: plugin.py:692
#, docstring
msgid ""
"[<channel>] <name|hostmask> <capability> [<capability> ...]\n"
@ -514,11 +514,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:706
#: plugin.py:711
msgid "That user didn't have the %L %s."
msgstr ""
#: plugin.py:715
#: plugin.py:720
#, docstring
msgid ""
"[<channel>] {True|False}\n"
@ -530,7 +530,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:733
#: plugin.py:738
#, docstring
msgid ""
"[<channel>] <capability> [<capability> ...]\n"
@ -541,7 +541,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:748
#: plugin.py:753
#, docstring
msgid ""
"[<channel>] <capability> [<capability> ...]\n"
@ -553,15 +553,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:764
#: plugin.py:769
msgid "capability"
msgstr ""
#: plugin.py:767
#: plugin.py:772
msgid "I do not know about the %L %s."
msgstr ""
#: plugin.py:774
#: plugin.py:779
#, docstring
msgid ""
"[<channel>]\n"
@ -571,7 +571,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:786
#: plugin.py:791
#, docstring
msgid ""
"[<channel>] [<plugin>] [<command>]\n"
@ -584,15 +584,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:802 plugin.py:841
#: plugin.py:807 plugin.py:846
msgid "The %s plugin does not have a command called %s."
msgstr ""
#: plugin.py:809 plugin.py:848
#: plugin.py:814 plugin.py:853
msgid "No plugin or command named %s could be found."
msgstr ""
#: plugin.py:825
#: plugin.py:830
#, docstring
msgid ""
"[<channel>] [<plugin>] [<command>]\n"
@ -605,11 +605,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:862
#: plugin.py:867
msgid "%s was not disabled."
msgstr ""
#: plugin.py:871
#: plugin.py:876
#, docstring
msgid ""
"[<channel>] [--count]\n"
@ -620,26 +620,26 @@ msgid ""
" "
msgstr ""
#: plugin.py:883
#: plugin.py:888
msgid "You don't have access to that information."
msgstr ""
#: plugin.py:897
#: plugin.py:902
#, docstring
msgid ""
"Internal message for notifying all the #channel,ops in a channel of\n"
" a given situation."
msgstr ""
#: plugin.py:900
#: plugin.py:905
msgid "Alert to all %s ops: %s"
msgstr ""
#: plugin.py:902
#: plugin.py:907
msgid " (from %s)"
msgstr ""
#: plugin.py:910
#: plugin.py:915
#, docstring
msgid ""
"[<channel>] <text>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-03-02 19:04+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-10-07 18:37+EEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,106 +8,116 @@ msgid ""
msgstr ""
"Project-Id-Version: supybot-i18n\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: 2011-06-30 13:29+0100\n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"POT-Creation-Date: 2014-01-22 13:46+CET\n"
"PO-Revision-Date: 2014-01-22 13:47+0100\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.5.4\n"
#: config.py:60
msgid ""
"Determines whether the bot will keep channel\n"
" statistics on itself, possibly skewing the channel stats (especially in\n"
" cases where the bot is relaying between channels on a network)."
msgstr "Détermine si le bot se prendre en compte dans les statistiques du canal, ce qui peut les fausser 'particulièrement dans le cas où le bot relaye entre des canaux)"
msgstr ""
"Détermine si le bot se prendre en compte dans les statistiques du canal, ce "
"qui peut les fausser 'particulièrement dans le cas où le bot relaye entre "
"des canaux)"
#: config.py:64
msgid ""
"Determines what\n"
" words (i.e., pieces of text with no spaces in them) are considered\n"
" 'smileys' for the purposes of stats-keeping."
msgstr "Détermine quels mots (c'est à dire, les morceaux de texte sans espace) sont considérés comme smileys par les stats."
msgstr ""
"Détermine quels mots (c'est à dire, les morceaux de texte sans espace) sont "
"considérés comme smileys par les stats."
#: config.py:68
msgid ""
"Determines what words\n"
" (i.e., pieces of text with no spaces in them ) are considered 'frowns' for\n"
" (i.e., pieces of text with no spaces in them ) are considered 'frowns' "
"for\n"
" the purposes of stats-keeping."
msgstr "Détermine quels mots (c'est à dire, les morceaux de texte sans espace) sont considérés comme sadleys par les stats."
msgstr ""
"Détermine quels mots (c'est à dire, les morceaux de texte sans espace) sont "
"considérés comme sadleys par les stats."
#: plugin.py:246
msgid ""
"[<channel>] [<name>]\n"
"\n"
" Returns the statistics for <name> on <channel>. <channel> is only\n"
" necessary if the message isn't sent on the channel itself. If <name>\n"
" necessary if the message isn't sent on the channel itself. If "
"<name>\n"
" isn't given, it defaults to the user sending the command.\n"
" "
msgstr ""
"[<canal>] [nom]\n"
"\n"
" Retourne les statistiques pour <nom> sur le <canal>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même. Si <nom> n'est pas donné, il correspond par défaut à l'utilisateur envoyant la commande"
" Retourne les statistiques pour <nom> sur le <canal>. <canal> n'est "
"nécessaire que si le message n'est pas envoyé sur le canal lui-même. Si "
"<nom> n'est pas donné, il correspond par défaut à l'utilisateur envoyant la "
"commande"
#: plugin.py:259
#: plugin.py:262
msgid "I couldn't find you in my user database."
msgstr "Je ne peux vous trouver dans ma base de données."
#: plugin.py:272
msgid "%s has sent %n; a total of %n, %n, %n, and %n; %s of those messages %s. %s has joined %n, parted %n, quit %n, kicked someone %n, been kicked %n, changed the topic %n, and changed the mode %n."
msgstr "%s a envoyé %n ; un total de %n, %n, %n, et %n ; %s de ces messages %s. %s est arrivé %n fois, est parti %n fois, a quitté %n fois, a kické %n fois, a été kické %n fois, a changé le topic %n fois, et a changé les modes %n fois."
#: plugin.py:275
msgid ""
"%s has sent %n; a total of %n, %n, %n, and %n; %s of those messages %s. %s "
"has joined %n, parted %n, quit %n, kicked someone %n, been kicked %n, "
"changed the topic %n, and changed the mode %n."
msgstr ""
"%s a envoyé %n ; un total de %n, %n, %n, et %n ; %s de ces messages %s. %s "
"est arrivé %n fois, est parti %n fois, a quitté %n fois, a kické %n fois, a "
"été kické %n fois, a changé le topic %n fois, et a changé les modes %n fois."
#: plugin.py:279
#: plugin.py:282
msgid "character"
msgstr "caractère"
#: plugin.py:280
#: plugin.py:363
#: plugin.py:283 plugin.py:377
msgid "word"
msgstr "mot"
#: plugin.py:281
#: plugin.py:364
#: plugin.py:284 plugin.py:378
msgid "smiley"
msgstr "smiley"
#: plugin.py:282
#: plugin.py:365
#: plugin.py:285 plugin.py:379
msgid "frown"
msgstr "sadley"
#: plugin.py:284
#: plugin.py:366
#: plugin.py:287 plugin.py:380
msgid "was an ACTION"
msgstr "était une action"
#: plugin.py:285
#: plugin.py:367
#: plugin.py:288 plugin.py:381
msgid "were ACTIONs"
msgstr "étaient des ACTIONs"
#: plugin.py:287
#: plugin.py:288
#: plugin.py:289
#: plugin.py:290
#: plugin.py:291
#: plugin.py:292
#: plugin.py:293
#: plugin.py:290 plugin.py:291 plugin.py:292 plugin.py:293 plugin.py:294
#: plugin.py:295 plugin.py:296
msgid "time"
msgstr "<empty>"
#: plugin.py:296
#: plugin.py:299
msgid "I have no stats for that %s in %s."
msgstr "Je n'ai pas de statistiques pour %s sur %s."
#: plugin.py:304
#: plugin.py:308
msgid ""
"[<channel>] <stat expression>\n"
"\n"
" Returns the ranking of users according to the given stat expression.\n"
" Returns the ranking of users according to the given stat "
"expression.\n"
" Valid variables in the stat expression include 'msgs', 'chars',\n"
" 'words', 'smileys', 'frowns', 'actions', 'joins', 'parts', 'quits',\n"
" 'kicks', 'kicked', 'topics', and 'modes'. Any simple mathematical\n"
@ -116,71 +126,93 @@ msgid ""
msgstr ""
"[<canal>] <expression de statistiques>\n"
"\n"
"Retourne le rang des utilisateurs en fonction de l'expression de statistiques données. Les variables valides dans l'expression de statistiques sont : 'msgs', 'chars', 'words', 'smileys', 'frowns', 'actions', 'joins', 'parts', 'quits', 'kicks', 'kicked', 'topics', et 'modes'. Toute expression mathématiques simple utilisant ces variables est autorisée."
"Retourne le rang des utilisateurs en fonction de l'expression de "
"statistiques données. Les variables valides dans l'expression de "
"statistiques sont : 'msgs', 'chars', 'words', 'smileys', 'frowns', "
"'actions', 'joins', 'parts', 'quits', 'kicks', 'kicked', 'topics', et "
"'modes'. Toute expression mathématiques simple utilisant ces variables est "
"autorisée."
#: plugin.py:315
msgid "There's really no reason why you should have underscores or brackets in your mathematical expression. Please remove them."
msgstr "Il n'y a aucune raison pour que vous ayez des underscores ou des crochets dans vos expressions mathématiques. Veuillez les supprimer."
#: plugin.py:322
msgid ""
"There's really no reason why you should have underscores or brackets in your "
"mathematical expression. Please remove them."
msgstr ""
"Il n'y a aucune raison pour que vous ayez des underscores ou des crochets "
"dans vos expressions mathématiques. Veuillez les supprimer."
#: plugin.py:319
#: plugin.py:326
msgid "You can't use lambda in this command."
msgstr "Vous ne pouvez utiliser lambda dans cette commande."
#: plugin.py:333
#: plugin.py:340
msgid "stat variable"
msgstr "Variable statistique"
#: plugin.py:349
#: plugin.py:356
msgid ""
"[<channel>]\n"
"\n"
" Returns the statistics for <channel>. <channel> is only necessary if\n"
" Returns the statistics for <channel>. <channel> is only necessary "
"if\n"
" the message isn't sent on the channel itself.\n"
" "
msgstr ""
"[canal]\n"
"\n"
"Retourne les statistiques pour le <canal>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Retourne les statistiques pour le <canal>. <canal> n'est nécessaire que si "
"le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:357
msgid "On %s there %h been %i messages, containing %i characters, %n, %n, and %n; %i of those messages %s. There have been %n, %n, %n, %n, %n, and %n. There %b currently %n and the channel has peaked at %n."
msgstr "Sur %s il y a eu%v %i messages, contenant %i caractères, %n, %n, et %n ; %i de ces messages %s. Il y a eu %n, %n, %n, %n, %n, et %n. Il y a%v actuellement %n et le record du canal est de %n."
#: plugin.py:362
msgid "I am not in %s."
msgstr "Je ne suis pas dans %s."
#: plugin.py:368
#: plugin.py:364
msgid "You must be in %s to use this command."
msgstr "Vous devez être dans %s pour utiliser cette commande."
#: plugin.py:371
msgid ""
"On %s there %h been %i messages, containing %i characters, %n, %n, and %n; "
"%i of those messages %s. There have been %n, %n, %n, %n, %n, and %n. There "
"%b currently %n and the channel has peaked at %n."
msgstr ""
"Sur %s il y a eu%v %i messages, contenant %i caractères, %n, %n, et %n ; %i "
"de ces messages %s. Il y a eu %n, %n, %n, %n, %n, et %n. Il y a%v "
"actuellement %n et le record du canal est de %n."
#: plugin.py:382
msgid "join"
msgstr "arrivée"
#: plugin.py:369
#: plugin.py:383
msgid "part"
msgstr "départ"
#: plugin.py:370
#: plugin.py:384
msgid "quit"
msgstr "quit"
#: plugin.py:371
#: plugin.py:385
msgid "kick"
msgstr "kick"
#: plugin.py:372
#: plugin.py:386
msgid "mode"
msgstr "mode"
#: plugin.py:372
#: plugin.py:373
#: plugin.py:386 plugin.py:387
msgid "change"
msgstr "changement"
#: plugin.py:373
#: plugin.py:387
msgid "topic"
msgstr "topic"
#: plugin.py:375
#: plugin.py:376
#: plugin.py:389 plugin.py:390
msgid "user"
msgstr "utilisateur"
#: plugin.py:379
#: plugin.py:393
msgid "I've never been on %s."
msgstr "Je n'ai jamais été sur %s."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 13:46+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -123,6 +123,10 @@ msgid ""
" "
msgstr ""
#: plugin.py:362
msgid "I am not in %s."
msgstr ""
#: plugin.py:364
msgid "You must be in %s to use this command."
msgstr ""

View File

@ -359,7 +359,7 @@ class ChannelStats(callbacks.Plugin):
the message isn't sent on the channel itself.
"""
if channel not in irc.state.channels:
irc.error(_('I am not in %s.', channel), Raise=True)
irc.error(_('I am not in %s.') % channel, Raise=True)
elif msg.nick not in irc.state.channels[channel].users:
irc.error(_('You must be in %s to use this command.') % channel,
Raise=True)

View File

@ -1,44 +1,48 @@
msgid ""
msgstr ""
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-06-28 19:37+CEST\n"
"POT-Creation-Date: 2014-01-22 13:46+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: plugin.py:64
#: plugin.py:57
msgid ""
"Add the help for \"@plugin help Conditional\" here\n"
" This should describe *how* to use this plugin."
msgstr ""
#: plugin.py:71
#: plugin.py:64
msgid "Run a command from message, as if command was sent over IRC."
msgstr ""
msgstr "."
#: plugin.py:80
#: plugin.py:73
msgid ""
"<condition> <ifcommand> <elsecommand>\n"
"\n"
" Runs <ifcommand> if <condition> evaluates to true, runs <elsecommand>\n"
" Runs <ifcommand> if <condition> evaluates to true, runs "
"<elsecommand>\n"
" if it evaluates to false.\n"
"\n"
" Use other logical operators defined in this plugin and command nesting\n"
" Use other logical operators defined in this plugin and command "
"nesting\n"
" to your advantage here.\n"
" "
msgstr ""
"<condition> <commande1> <commande2>\n"
"\n"
"Exécute la <commande1> si la <condition> est évaluée à true, lance la <commande2> si elle est évaluée à false. Utilisez d'autres opérateurs logiques définis dans ce plugin et l'imbrication de commandes à votre avantage."
"Exécute la <commande1> si la <condition> est évaluée à true, lance la "
"<commande2> si elle est évaluée à false. Utilisez d'autres opérateurs "
"logiques définis dans ce plugin et l'imbrication de commandes à votre "
"avantage."
#: plugin.py:97
#: plugin.py:90
msgid ""
"<cond1> [<cond2> ... <condN>]\n"
"\n"
@ -49,7 +53,7 @@ msgstr ""
"\n"
"Retourne True si toutes les conditions sont évaluées à true."
#: plugin.py:109
#: plugin.py:102
msgid ""
"<cond1> [<cond2> ... <condN>]\n"
"\n"
@ -60,7 +64,7 @@ msgstr ""
"\n"
"Retourne True si une au moins des conditions est évaluée à true."
#: plugin.py:121
#: plugin.py:114
msgid ""
"<cond1> [<cond2> ... <condN>]\n"
"\n"
@ -71,7 +75,7 @@ msgstr ""
"\n"
"Retourne True si une seule des conditions est évaluée à true."
#: plugin.py:133
#: plugin.py:126
msgid ""
"<item1> <item2>\n"
"\n"
@ -81,9 +85,10 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si ils sont égaux."
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si ils sont égaux."
#: plugin.py:146
#: plugin.py:139
msgid ""
"<item1> <item2>\n"
"\n"
@ -93,9 +98,10 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si ils sont inégaux."
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si ils sont inégaux."
#: plugin.py:159
#: plugin.py:152
msgid ""
"<item1> <item2>\n"
"\n"
@ -105,9 +111,10 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si <élément1> est plus grand que <élément2>"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus grand que <élément2>"
#: plugin.py:172
#: plugin.py:165
msgid ""
"<item1> <item2>\n"
"\n"
@ -117,9 +124,10 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si <élément1> est plus grand ou égal à <élément2>"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus grand ou égal à <élément2>"
#: plugin.py:185
#: plugin.py:178
msgid ""
"<item1> <item2>\n"
"\n"
@ -129,9 +137,10 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si <élément1> est plus petit que <élément2>"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus petit que <élément2>"
#: plugin.py:198
#: plugin.py:191
msgid ""
"<item1> <item2>\n"
"\n"
@ -141,19 +150,24 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true si <élément1> est plus petit ou égal à <élément2>"
"Fait une comparaison de chaîne entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus petit ou égal à <élément2>"
#: plugin.py:211
#: plugin.py:204
msgid ""
"<item1> <item2>\n"
"[--case-insensitive] <item1> <item2>\n"
"\n"
" Determines if <item1> is a substring of <item2>.\n"
" Returns true if <item1> is contained in <item2>.\n"
"\n"
" Will only match case if --case-insensitive is not given.\n"
" "
msgstr ""
"<élément1> <élément2>\n"
"[--case-insensitive] <élément1> <élément2>\n"
"\n"
"Détermine si <élément1> est une sous-chaîne de <élément2>. Retourne true si <élément1> est contenu dans <élément2>"
"Détermine si <élément1> est une sous-chaîne de <élément2>. Retourne true si "
"<élément1> est contenu dans <élément2>.Ne prendra la casse en compte que si "
"--case-insensitive nest pas donné."
#: plugin.py:224
msgid ""
@ -165,7 +179,8 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si ils sont égaux."
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si ils sont égaux."
#: plugin.py:237
msgid ""
@ -177,7 +192,8 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si ils sont inégaux."
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si ils sont inégaux."
#: plugin.py:250
msgid ""
@ -189,7 +205,8 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si <élément1> est plus grand que <élément2>"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus grand que <élément2>"
#: plugin.py:263
msgid ""
@ -201,7 +218,8 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si <élément1> est plus grand ou égal à <élément2>"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus grand ou égal à <élément2>"
#: plugin.py:276
msgid ""
@ -213,7 +231,8 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si <élément1> est plus petit que <élément2>"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus petit que <élément2>"
#: plugin.py:289
msgid ""
@ -225,5 +244,5 @@ msgid ""
msgstr ""
"<élément1> <élément2>\n"
"\n"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true si <élément1> est plus petit ou égal à <élément2>"
"Fait une comparaison numérique entre <élément1> et <élément2>. Retourne true "
"si <élément1> est plus petit ou égal à <élément2>"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Mika Suomalainen <mika.henrik.mainio@hotmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,41 +15,41 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:77
#: plugin.py:81
#, docstring
msgid "\001PING ?(.*)\001"
msgstr ""
#: plugin.py:86
#: plugin.py:90
#, docstring
msgid "\001VERSION\001"
msgstr ""
#: plugin.py:91
#: plugin.py:95
#, docstring
msgid "\001USERINFO\001"
msgstr ""
#: plugin.py:96
#: plugin.py:100
#, docstring
msgid "\001TIME\001"
msgstr ""
#: plugin.py:101
#: plugin.py:105
#, docstring
msgid "\001FINGER\001"
msgstr ""
#: plugin.py:104
#: plugin.py:108
msgid "Supybot, the best Python IRC bot in existence!"
msgstr ""
#: plugin.py:107
#: plugin.py:111
#, docstring
msgid "\001SOURCE\001"
msgstr ""
#: plugin.py:123
#: plugin.py:127
#, docstring
msgid ""
"[<channel>] [--nicks]\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-06-28 19:40+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-06-28 19:40+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -36,7 +36,7 @@ msgid ""
" will use all dictionaries to define words."
msgstr ""
#: plugin.py:54
#: plugin.py:49
#, docstring
msgid ""
"takes no arguments\n"
@ -45,7 +45,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:70
#: plugin.py:65
#, docstring
msgid ""
"takes no arguments\n"
@ -54,7 +54,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:85
#: plugin.py:80
#, docstring
msgid ""
"[<dictionary>] <word>\n"
@ -64,23 +64,23 @@ msgid ""
" "
msgstr ""
#: plugin.py:108
#: plugin.py:103
msgid "You must give a word to define."
msgstr ""
#: plugin.py:114
#: plugin.py:109
msgid "No definition for %q could be found."
msgstr ""
#: plugin.py:117
#: plugin.py:112
msgid "No definition for %q could be found in %s"
msgstr ""
#: plugin.py:129
#: plugin.py:124
msgid "%L responded: %s"
msgstr ""
#: plugin.py:136
#: plugin.py:131
#, docstring
msgid ""
"<word> [<word> ...]\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 10:48+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,82 +1,145 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2011-06-28 19:40+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 19:24+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:45
msgid ""
"Value must include $value, otherwise the factoid's value would be left\n"
" out."
msgstr "La valeur doit inclure $value, sinon la valeur de la factoid ne serait pas affichée."
msgstr ""
"La valeur doit inclure $value, sinon la valeur de la factoid ne serait pas "
"affichée."
#: config.py:51
#: config.py:52
msgid ""
"Determines whether the Factoids plugins will\n"
" be browsable on the HTTP server."
msgstr "Détermine si le plugin Factoids sera accessible par le serveur HTTP."
#: config.py:55
msgid ""
"Determines whether factoids can be displayed\n"
" via the web server."
msgstr "Détermine si les factoids seront affichées via le serveur web."
#: config.py:59
msgid ""
"Only allows a user with voice or above on a\n"
" channel to use the command."
msgstr ""
"Autoriser uniquement un(e) utilisateur(trice) qui a un voice ou mieux dans "
"le salon à utiliser la commande."
#: config.py:62
msgid ""
"Determines what separator must be used in the\n"
" learn command. Defaults to 'as' -- learn <key> as <value>. Users might\n"
" learn command. Defaults to 'as' -- learn <key> as <value>. Users "
"might\n"
" feel more comfortable with 'is' or something else, so it's\n"
" configurable."
msgstr "Détermine quel séparateur est utilisé par la commande 'learn'. Par défaut, il s'agit de 'est' : 'learn <clef> as <valeur>. Les utilisateurs sont susceptibles de trouver 'is' plus confortable, ou n'importe quoi, c'est configurable."
msgstr ""
"Détermine quel séparateur est utilisé par la commande 'learn'. Par défaut, "
"il s'agit de 'est' : 'learn <clef> as <valeur>. Les utilisateurs sont "
"susceptibles de trouver 'is' plus confortable, ou n'importe quoi, c'est "
"configurable."
#: config.py:56
#: config.py:67
msgid ""
"Determines whether the bot will reply with the\n"
" single matching factoid if only one factoid matches when using the search\n"
" single matching factoid if only one factoid matches when using the "
"search\n"
" command."
msgstr "Détermine si le bot répondra avec une seule factoid, même si la recherche de l'utilisateur donne plusieurs résultats."
msgstr ""
"Détermine si le bot répondra avec une seule factoid, même si la recherche de "
"l'utilisateur donne plusieurs résultats."
#: config.py:60
#: config.py:71
msgid ""
"Determines whether the bot will reply to invalid\n"
" commands by searching for a factoid; basically making the whatis\n"
" unnecessary when you want all factoids for a given key."
msgstr "Détermine si le bot répondra aux commandes invalides lors de la recherche d'une factoid ; permet simplement de rendre la commande 'whatis' inutile lorsque vous voulez toutes les factoids d'un clef donnée."
msgstr ""
"Détermine si le bot répondra aux commandes invalides lors de la recherche "
"d'une factoid ; permet simplement de rendre la commande 'whatis' inutile "
"lorsque vous voulez toutes les factoids d'un clef donnée."
#: config.py:64
#: config.py:75
msgid ""
"If you try to look up a nonexistent factoid,\n"
" this setting make the bot try to find some possible matching keys through\n"
" several approximate matching algorithms and return a list of matching keys,\n"
" this setting make the bot try to find some possible matching keys "
"through\n"
" several approximate matching algorithms and return a list of matching "
"keys,\n"
" before giving up."
msgstr "Si vous essayez de chercher une factoid inexistante, cette option permet de faire en sorte que le bot recherche les clefs de factoids dont le nom est proche, et qu'il les affiche."
msgstr ""
"Si vous essayez de chercher une factoid inexistante, cette option permet de "
"faire en sorte que le bot recherche les clefs de factoids dont le nom est "
"proche, et qu'il les affiche."
#: config.py:69
#: config.py:80
msgid "$key could be $value."
msgstr "$key semble être $value."
#: config.py:69
#: config.py:80
msgid ""
"Determines the format of\n"
" the response given when a factoid's value is requested. All the standard\n"
" substitutes apply, in addition to \"$key\" for the factoid's key and \"$value\"\n"
" the response given when a factoid's value is requested. All the "
"standard\n"
" substitutes apply, in addition to \"$key\" for the factoid's key and "
"\"$value\"\n"
" for the factoid's value."
msgstr "Détermine le format de la réponse donnée lorsqu'une valeur de factoid est demandée. Tous les substitus standards s'appliquent, en plus de \"$key\" pour la clef de la factoid et \"$value\" pour la valeur de la factoid."
msgstr ""
"Détermine le format de la réponse donnée lorsqu'une valeur de factoid est "
"demandée. Tous les substitus standards s'appliquent, en plus de \"$key\" "
"pour la clef de la factoid et \"$value\" pour la valeur de la factoid."
#: plugin.py:179
#: plugin.py:108
msgid "key"
msgstr "clé"
#: plugin.py:109
msgid "id"
msgstr "n°"
#: plugin.py:110
msgid "fact"
msgstr "factoid"
#: plugin.py:275
msgid "You have to be at least voiced to teach factoids."
msgstr "Vous devez au moins être voice pour mapprendre des factoids."
#: plugin.py:312
msgid ""
"[<channel>] <key> %s <value>\n"
"\n"
" Associates <key> with <value>. <channel> is only\n"
" necessary if the message isn't sent on the channel\n"
" itself. The word '%s' is necessary to separate the\n"
" key from the value. It can be changed to another word\n"
" itself. The word '%s' is necessary to separate "
"the\n"
" key from the value. It can be changed to another "
"word\n"
" via the learnSeparator registry value.\n"
" "
msgstr ""
"[<canal>] <clef> %s <valeur>\n"
"\n"
"Associer la <clef> avec la <valeur>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même. Le mot '%s' est nécessaire pour séparer la clef de la valeur. Il peut être modifié avec la valeur de registre learnSeparator."
"Associer la <clef> avec la <valeur>. <canal> n'est nécessaire que si le "
"message n'est pas envoyé sur le canal lui-même. Le mot '%s' est nécessaire "
"pour séparer la clef de la valeur. Il peut être modifié avec la valeur de "
"registre learnSeparator."
#: plugin.py:199
#: plugin.py:332
msgid ""
"Try to typo-match input to possible factoids.\n"
" \n"
@ -84,70 +147,81 @@ msgid ""
" First, try a simple wildcard search.\n"
" If that fails, use the Damerau-Levenshtein edit-distance metric.\n"
" "
msgstr ""
msgstr "."
#: plugin.py:257
#: plugin.py:386
#: plugin.py:390 plugin.py:520
msgid "That's not a valid number for that key."
msgstr "Ce n'est pas un nombre valide pour cette clef."
#: plugin.py:279
#: plugin.py:372
#: plugin.py:598
#: plugin.py:412 plugin.py:506 plugin.py:735
msgid "No factoid matches that key."
msgstr "Aucune factoid ne correspond à cette clef."
#: plugin.py:304
#: plugin.py:438
msgid ""
"[<channel>] [--raw] <key> [<number>]\n"
"\n"
" Looks up the value of <key> in the factoid database. If given a\n"
" number, will return only that exact factoid. If '--raw' option is\n"
" given, no variable substitution will take place on the factoid.\n"
" <channel> is only necessary if the message isn't sent in the channel\n"
" <channel> is only necessary if the message isn't sent in the "
"channel\n"
" itself.\n"
" "
msgstr ""
"[<canal>] <clef> [<nombre>]\n"
"\n"
"Regarde la valeur de la <clef> dans la base de données de factoids. Si un <nombre> est donné, retourne la factoid exacte. Si l'option --raw est donnée, aucune substitution de variable ne sera effectuée avant d'afficher la factoid.<canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Regarde la valeur de la <clef> dans la base de données de factoids. Si un "
"<nombre> est donné, retourne la factoid exacte. Si l'option --raw est "
"donnée, aucune substitution de variable ne sera effectuée avant d'afficher "
"la factoid.<canal> n'est nécessaire que si le message n'est pas envoyé sur "
"le canal lui-même."
#: plugin.py:321
#: plugin.py:523
#: plugin.py:455 plugin.py:660
msgid "key id"
msgstr "id de clef"
#: plugin.py:334
#: plugin.py:468
msgid ""
"[<channel>] <oldkey> <newkey> [<number>]\n"
"\n"
" Adds a new key <newkey> for factoid associated with <oldkey>.\n"
" <number> is only necessary if there's more than one factoid associated\n"
" <number> is only necessary if there's more than one factoid "
"associated\n"
" with <oldkey>.\n"
"\n"
" The same action can be accomplished by using the 'learn' function with\n"
" The same action can be accomplished by using the 'learn' function "
"with\n"
" a new key but an existing (verbatim) factoid content.\n"
" "
msgstr ""
"[<canal>] <ancienne clef> <nouvelle clef> [<nombre>]\n"
"\n"
"Ajoute une <nouvelle clef> à la factoid correspondant à l'<ancienne clef>. Le <nombre> n'est nécessaire que si il y a plus d'une factoid associée à l'<ancienne clef>.La même action peut être accomplie en utilisant la fonction 'learn' avec la <nouvelle clef>, sans le contenu actuel de la factoid."
"Ajoute une <nouvelle clef> à la factoid correspondant à l'<ancienne clef>. "
"Le <nombre> n'est nécessaire que si il y a plus d'une factoid associée à "
"l'<ancienne clef>.La même action peut être accomplie en utilisant la "
"fonction 'learn' avec la <nouvelle clef>, sans le contenu actuel de la "
"factoid."
#: plugin.py:381
#: plugin.py:398
#: plugin.py:515 plugin.py:532
msgid "This key-factoid relationship already exists."
msgstr "Cette relation clef-factoid existe déjà."
#: plugin.py:389
msgid "This key has more than one factoid associated with it, but you have not provided a number."
msgstr "Cette clef a plus d'une factoid associée, mais vous n'avez pas fourni un nombre."
#: plugin.py:523
msgid ""
"This key has more than one factoid associated with it, but you have not "
"provided a number."
msgstr ""
"Cette clef a plus d'une factoid associée, mais vous n'avez pas fourni un "
"nombre."
#: plugin.py:403
#: plugin.py:537
msgid ""
"[<channel>] [--plain] [--alpha] [<number>]\n"
"\n"
" Returns a list of top-ranked factoid keys, sorted by usage count\n"
" (rank). If <number> is not provided, the default number of factoid keys\n"
" (rank). If <number> is not provided, the default number of factoid "
"keys\n"
" returned is set by the rankListLength registry value.\n"
"\n"
" If --plain option is given, rank numbers and usage counts are not\n"
@ -156,50 +230,65 @@ msgid ""
" If --alpha option is given in addition to --plain, keys are sorted\n"
" alphabetically, instead of by rank.\n"
"\n"
" <channel> is only necessary if the message isn't sent in the channel\n"
" <channel> is only necessary if the message isn't sent in the "
"channel\n"
" itself.\n"
" "
msgstr ""
"[<canal>] [--plain] [--alpha] [<nombre>]\n"
"\n"
"Retourne une liste des factoids les plus utilisées. Si le <nombre> n'est pas fourni, il correspond par défaut au nombre de clefs de factoids défini dans la clef de registre rankListLength. Si --plain est donné, le numéro des rangs et le comptage des utilisations n'est pas inclu dans la sortie. Si --alpha est donné, en plus de --plain, les clefs seront triées alphabétiquement, au lieu de l'être par leur rang.<canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Retourne une liste des factoids les plus utilisées. Si le <nombre> n'est pas "
"fourni, il correspond par défaut au nombre de clefs de factoids défini dans "
"la clef de registre rankListLength. Si --plain est donné, le numéro des "
"rangs et le comptage des utilisations n'est pas inclu dans la sortie. Si --"
"alpha est donné, en plus de --plain, les clefs seront triées "
"alphabétiquement, au lieu de l'être par leur rang.<canal> n'est nécessaire "
"que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:448
#: plugin.py:582
msgid ""
"[<channel>] <key>\n"
"\n"
" Locks the factoid(s) associated with <key> so that they cannot be\n"
" removed or added to. <channel> is only necessary if the message isn't\n"
" removed or added to. <channel> is only necessary if the message "
"isn't\n"
" sent in the channel itself.\n"
" "
msgstr ""
"[<canal>] <clef>\n"
"\n"
"Verrouille la/les factoid(s) associé(e) à la <clef>, pour qu'elles ne puissent plus être supprimées ou modifiées. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Verrouille la/les factoid(s) associé(e) à la <clef>, pour qu'elles ne "
"puissent plus être supprimées ou modifiées. <canal> n'est nécessaire que si "
"le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:466
#: plugin.py:600
msgid ""
"[<channel>] <key>\n"
"\n"
" Unlocks the factoid(s) associated with <key> so that they can be\n"
" removed or added to. <channel> is only necessary if the message isn't\n"
" removed or added to. <channel> is only necessary if the message "
"isn't\n"
" sent in the channel itself.\n"
" "
msgstr ""
"[<canal>] <clef>\n"
"\n"
"Verrouille la/les factoid(s) associé(e) à la <clef>, pour qu'elles puissent être supprimées ou modifiées. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Verrouille la/les factoid(s) associé(e) à la <clef>, pour qu'elles puissent "
"être supprimées ou modifiées. <canal> n'est nécessaire que si le message "
"n'est pas envoyé sur le canal lui-même."
#: plugin.py:505
#: plugin.py:639
msgid ""
"[<channel>] <key> [<number>|*]\n"
"\n"
" Removes a key-fact relationship for key <key> from the factoids\n"
" database. If there is more than one such relationship for this key,\n"
" database. If there is more than one such relationship for this "
"key,\n"
" a number is necessary to determine which one should be removed.\n"
" A * can be used to remove all relationships for <key>.\n"
"\n"
" If as a result, the key (factoid) remains without any relationships to\n"
" If as a result, the key (factoid) remains without any relationships "
"to\n"
" a factoid (key), it shall be removed from the database.\n"
"\n"
" <channel> is only necessary if\n"
@ -208,58 +297,76 @@ msgid ""
msgstr ""
"[<canal>] <clef> [<nombre>|*]\n"
"\n"
"Enlève la factoid <clef> de la base de données. Si il y a plus d'une factoid avec cette clef, un <nombre> est requis pour déterminer laquelle sera supprimée. Un joker * peut être utilisé pour enlever toutes les factoids avec cette clef. Si, en tant que résultat, la clef (factoid) n'a plus aucune relation avec une autre factoid (clef), elle devrait être supprimée de la base de données.<canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Enlève la factoid <clef> de la base de données. Si il y a plus d'une factoid "
"avec cette clef, un <nombre> est requis pour déterminer laquelle sera "
"supprimée. Un joker * peut être utilisé pour enlever toutes les factoids "
"avec cette clef. Si, en tant que résultat, la clef (factoid) n'a plus aucune "
"relation avec une autre factoid (clef), elle devrait être supprimée de la "
"base de données.<canal> n'est nécessaire que si le message n'est pas envoyé "
"sur le canal lui-même."
#: plugin.py:537
#: plugin.py:654
msgid "You have to be at least voiced to remove factoids."
msgstr "Vous devez au moins être voice pour supprimer des factoids."
#: plugin.py:674
msgid "There is no such factoid."
msgstr "Cette factoid n'existe pas."
#: plugin.py:547
#: plugin.py:684
msgid "Invalid factoid number."
msgstr "Numéro de factoid invalide."
#: plugin.py:552
msgid "%s factoids have that key. Please specify which one to remove, or use * to designate all of them."
msgstr "%s factoids ont cette clef. Veuillez spécifier laquelle vous voulez supprimer ou utiliser * pour toutes les désigner."
#: plugin.py:689
msgid ""
"%s factoids have that key. Please specify which one to remove, or use * to "
"designate all of them."
msgstr ""
"%s factoids ont cette clef. Veuillez spécifier laquelle vous voulez "
"supprimer ou utiliser * pour toutes les désigner."
#: plugin.py:560
#: plugin.py:697
msgid ""
"[<channel>]\n"
"\n"
" Returns a random factoid from the database for <channel>. <channel>\n"
" Returns random factoids from the database for <channel>. <channel>\n"
" is only necessary if the message isn't sent in the channel itself.\n"
" "
msgstr ""
"[<canal>]\n"
"\n"
"Retourne une factoid aléatoire de la base de données pour le canal. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Retourne une factoid aléatoire de la base de données pour le canal. <canal> "
"n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:582
#: plugin.py:719
msgid "I couldn't find a factoid."
msgstr "Je ne peux trouver une factoid"
#: plugin.py:587
#: plugin.py:724
msgid ""
"[<channel>] <key>\n"
"\n"
" Gives information about the factoid(s) associated with <key>.\n"
" <channel> is only necessary if the message isn't sent in the channel\n"
" <channel> is only necessary if the message isn't sent in the "
"channel\n"
" itself.\n"
" "
msgstr ""
"[<canal>] <clef>\n"
"\n"
"Donne des informations sur la/les factoid(s) associée(s) à la <clef>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Donne des informations sur la/les factoid(s) associée(s) à la <clef>. "
"<canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-"
"même."
#: plugin.py:613
#: plugin.py:750
msgid "#%i was added by %s at %s, and has been recalled %n"
msgstr "#%i a été ajouté par %s le %s, et il y a eu %n."
#: plugin.py:616
#: plugin.py:753
msgid "time"
msgstr "rappel"
#: plugin.py:626
#: plugin.py:763
msgid ""
"[<channel>] <key> <number> <regexp>\n"
"\n"
@ -269,32 +376,38 @@ msgid ""
msgstr ""
"[<canal>] <clef> <nombre> <expression régulière>\n"
"\n"
"Change la factoid <nombre> associée à la <clef>, en accord avec l'<expression régulière>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Change la factoid <nombre> associée à la <clef>, en accord avec "
"l'<expression régulière>. <canal> n'est nécessaire que si le message n'est "
"pas envoyé sur le canal lui-même."
#: plugin.py:640
#: plugin.py:777
msgid "I couldn't find any key %q"
msgstr "Je ne peux trouver de clef %q"
#: plugin.py:655
#: plugin.py:792
msgid ""
"[<channel>] [--values] [--{regexp} <value>] [<glob> ...]\n"
"\n"
" Searches the keyspace for keys matching <glob>. If --regexp is given,\n"
" its associated value is taken as a regexp and matched against the keys.\n"
" If --values is given, search the value space instead of the keyspace.\n"
" Searches the keyspace for keys matching <glob>. If --regexp is "
"given,\n"
" its associated value is taken as a regexp and matched against the "
"keys.\n"
" If --values is given, search the value space instead of the "
"keyspace.\n"
" "
msgstr ""
"[<canal>] [--values] [--{regexp} <expression régulière>] [<glob>...]\n"
"\n"
"Recherche les clefs correspondant au <glob>. Si --regexp est donné, recherche les clefs correspondantes à l'<expression régulière>. Si --values est donné, recherche parmi les valeurs, plutôt que parmi les clefs. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Recherche les clefs correspondant au <glob>. Si --regexp est donné, "
"recherche les clefs correspondantes à l'<expression régulière>. Si --values "
"est donné, recherche parmi les valeurs, plutôt que parmi les clefs. <canal> "
"n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:692
#: plugin.py:701
#: plugin.py:829 plugin.py:838
msgid "No keys matched that query."
msgstr "Aucune clef ne correspond à cette requête."
#: plugin.py:697
#: plugin.py:706
#: plugin.py:834 plugin.py:843
msgid "More than 100 keys matched that query; please narrow your query."
msgstr "Plus de 100 clefs correspondent à votre requête ; veuillez la préciser."
msgstr ""
"Plus de 100 clefs correspondent à votre requête ; veuillez la préciser."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -39,7 +39,7 @@ msgid ""
" in a word before it will be shrunken by the shrink command/filter."
msgstr ""
#: plugin.py:50
#: plugin.py:52
#, docstring
msgid ""
"This plugin offers several commands which transform text in some way.\n"
@ -49,7 +49,7 @@ msgid ""
" Not very useful, but definitely quite fun :)"
msgstr ""
#: plugin.py:84
#: plugin.py:86
#, docstring
msgid ""
"[<channel>] [<command>]\n"
@ -60,11 +60,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:97
#: plugin.py:99
msgid "That's not a valid filter command."
msgstr ""
#: plugin.py:107
#: plugin.py:110
#, docstring
msgid ""
"<text>\n"
@ -75,7 +75,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:119
#: plugin.py:121
#, docstring
msgid ""
"<text>\n"
@ -84,7 +84,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:129
#: plugin.py:131
#, docstring
msgid ""
"<text>\n"
@ -93,7 +93,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:142
#: plugin.py:144
#, docstring
msgid ""
"<text>\n"
@ -102,7 +102,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:168
#: plugin.py:169
#, docstring
msgid ""
"<text>\n"
@ -112,7 +112,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:179
#: plugin.py:183
#, docstring
msgid ""
"<text>\n"
@ -122,7 +122,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:189
#: plugin.py:194
#, docstring
msgid ""
"<hexstring>\n"
@ -132,11 +132,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:197
#: plugin.py:203
msgid "Invalid input."
msgstr ""
#: plugin.py:202
#: plugin.py:209
#, docstring
msgid ""
"<text>\n"
@ -147,7 +147,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:213
#: plugin.py:222
#, docstring
msgid ""
"<text>\n"
@ -156,7 +156,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:244
#: plugin.py:254
#, docstring
msgid ""
"<text>\n"
@ -165,7 +165,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:264
#: plugin.py:274
#, docstring
msgid ""
"<text>\n"
@ -174,7 +174,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:280
#: plugin.py:290
#, docstring
msgid ""
"<text>\n"
@ -184,7 +184,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:345
#: plugin.py:355
#, docstring
msgid ""
"<Morse code text>\n"
@ -193,7 +193,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:362
#: plugin.py:372
#, docstring
msgid ""
"<text>\n"
@ -202,7 +202,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:374
#: plugin.py:384
#, docstring
msgid ""
"<text>\n"
@ -211,7 +211,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:391
#: plugin.py:402
#, docstring
msgid ""
"<text>\n"
@ -220,7 +220,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:401
#: plugin.py:412
#, docstring
msgid ""
"<text>\n"
@ -229,7 +229,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:412
#: plugin.py:427
#, docstring
msgid ""
"<text>\n"
@ -238,7 +238,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:421
#: plugin.py:436
#, docstring
msgid ""
"<text>\n"
@ -247,7 +247,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:448
#: plugin.py:463
#, docstring
msgid ""
"<text>\n"
@ -256,279 +256,279 @@ msgid ""
" "
msgstr ""
#: plugin.py:544
#: plugin.py:559
msgid "ay"
msgstr ""
#: plugin.py:544
#: plugin.py:559
msgid "bee"
msgstr ""
#: plugin.py:544
#: plugin.py:559
msgid "dee"
msgstr ""
#: plugin.py:544
#: plugin.py:559
msgid "see"
msgstr ""
#: plugin.py:545
#: plugin.py:560
msgid "aych"
msgstr ""
#: plugin.py:545
#: plugin.py:560
msgid "ee"
msgstr ""
#: plugin.py:545
#: plugin.py:560
msgid "eff"
msgstr ""
#: plugin.py:545
#: plugin.py:560
msgid "gee"
msgstr ""
#: plugin.py:546
#: plugin.py:561
msgid "ell"
msgstr ""
#: plugin.py:546
#: plugin.py:561
msgid "eye"
msgstr ""
#: plugin.py:546
#: plugin.py:561
msgid "jay"
msgstr ""
#: plugin.py:546
#: plugin.py:561
msgid "kay"
msgstr ""
#: plugin.py:547
#: plugin.py:562
msgid "cue"
msgstr ""
#: plugin.py:547
#: plugin.py:562
msgid "em"
msgstr ""
#: plugin.py:547
#: plugin.py:562
msgid "en"
msgstr ""
#: plugin.py:547
#: plugin.py:562
msgid "oh"
msgstr ""
#: plugin.py:547
#: plugin.py:562
msgid "pee"
msgstr ""
#: plugin.py:548
#: plugin.py:563
msgid "arr"
msgstr ""
#: plugin.py:548
#: plugin.py:563
msgid "ess"
msgstr ""
#: plugin.py:548
#: plugin.py:563
msgid "tee"
msgstr ""
#: plugin.py:548
#: plugin.py:563
msgid "you"
msgstr ""
#: plugin.py:549
#: plugin.py:564
msgid "double-you"
msgstr ""
#: plugin.py:549
#: plugin.py:564
msgid "ecks"
msgstr ""
#: plugin.py:549
#: plugin.py:564
msgid "vee"
msgstr ""
#: plugin.py:549
#: plugin.py:564
msgid "why"
msgstr ""
#: plugin.py:550
#: plugin.py:565
msgid "zee"
msgstr ""
#: plugin.py:555
#: plugin.py:570
msgid "exclamation point"
msgstr ""
#: plugin.py:556
#: plugin.py:571
msgid "quote"
msgstr ""
#: plugin.py:557
#: plugin.py:572
msgid "pound"
msgstr ""
#: plugin.py:558
#: plugin.py:573
msgid "dollar sign"
msgstr ""
#: plugin.py:559
#: plugin.py:574
msgid "percent"
msgstr ""
#: plugin.py:560
#: plugin.py:575
msgid "ampersand"
msgstr ""
#: plugin.py:561
#: plugin.py:576
msgid "single quote"
msgstr ""
#: plugin.py:562
#: plugin.py:577
msgid "left paren"
msgstr ""
#: plugin.py:563
#: plugin.py:578
msgid "right paren"
msgstr ""
#: plugin.py:564
#: plugin.py:579
msgid "asterisk"
msgstr ""
#: plugin.py:565
#: plugin.py:580
msgid "plus"
msgstr ""
#: plugin.py:566
#: plugin.py:581
msgid "comma"
msgstr ""
#: plugin.py:567
#: plugin.py:582
msgid "minus"
msgstr ""
#: plugin.py:568
#: plugin.py:583
msgid "period"
msgstr ""
#: plugin.py:569
#: plugin.py:584
msgid "slash"
msgstr ""
#: plugin.py:570
#: plugin.py:585
msgid "colon"
msgstr ""
#: plugin.py:571
#: plugin.py:586
msgid "semicolon"
msgstr ""
#: plugin.py:572
#: plugin.py:587
msgid "less than"
msgstr ""
#: plugin.py:573
#: plugin.py:588
msgid "equals"
msgstr ""
#: plugin.py:574
#: plugin.py:589
msgid "greater than"
msgstr ""
#: plugin.py:575
#: plugin.py:590
msgid "question mark"
msgstr ""
#: plugin.py:576
#: plugin.py:591
msgid "at"
msgstr ""
#: plugin.py:577
#: plugin.py:592
msgid "left bracket"
msgstr ""
#: plugin.py:578
#: plugin.py:593
msgid "backslash"
msgstr ""
#: plugin.py:579
#: plugin.py:594
msgid "right bracket"
msgstr ""
#: plugin.py:580
#: plugin.py:595
msgid "caret"
msgstr ""
#: plugin.py:581
#: plugin.py:596
msgid "underscore"
msgstr ""
#: plugin.py:582
#: plugin.py:597
msgid "backtick"
msgstr ""
#: plugin.py:583
#: plugin.py:598
msgid "left brace"
msgstr ""
#: plugin.py:584
#: plugin.py:599
msgid "pipe"
msgstr ""
#: plugin.py:585
#: plugin.py:600
msgid "right brace"
msgstr ""
#: plugin.py:586
#: plugin.py:601
msgid "tilde"
msgstr ""
#: plugin.py:589
#: plugin.py:604
msgid "one"
msgstr ""
#: plugin.py:589
#: plugin.py:604
msgid "three"
msgstr ""
#: plugin.py:589
#: plugin.py:604
msgid "two"
msgstr ""
#: plugin.py:589
#: plugin.py:604
msgid "zero"
msgstr ""
#: plugin.py:590
#: plugin.py:605
msgid "five"
msgstr ""
#: plugin.py:590
#: plugin.py:605
msgid "four"
msgstr ""
#: plugin.py:590
#: plugin.py:605
msgid "seven"
msgstr ""
#: plugin.py:590
#: plugin.py:605
msgid "six"
msgstr ""
#: plugin.py:591
#: plugin.py:606
msgid "eight"
msgstr ""
#: plugin.py:591
#: plugin.py:606
msgid "nine"
msgstr ""
#: plugin.py:595
#: plugin.py:610
#, docstring
msgid ""
"<text>\n"
@ -537,7 +537,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:625
#: plugin.py:640
#, docstring
msgid ""
"<text>\n"
@ -546,7 +546,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:634
#: plugin.py:649
#, docstring
msgid ""
"<text>\n"
@ -557,7 +557,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:653
#: plugin.py:668
#, docstring
msgid ""
"<text>\n"
@ -566,7 +566,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:702
#: plugin.py:717
#, docstring
msgid ""
"<text>\n"

View File

@ -1,17 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2011-08-10 11:27+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 13:46+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: plugin.py:43
msgid ""
@ -28,6 +27,16 @@ msgstr ""
msgid ""
"<text>\n"
"\n"
" Strips bold, underline, and colors from <text>."
msgstr ""
"<texte>\n"
"\n"
"Retire le le gras, le soulignement, et les couleurs du <texte>."
#: plugin.py:59
msgid ""
"<text>\n"
"\n"
" Returns <text> in reverse-video.\n"
" "
msgstr ""
@ -35,7 +44,7 @@ msgstr ""
"\n"
"Retourne le texte, inversé"
#: plugin.py:61
#: plugin.py:68
msgid ""
"<text>\n"
"\n"
@ -46,19 +55,21 @@ msgstr ""
"\n"
"Retourne le texte, souligné"
#: plugin.py:70
#: plugin.py:77
msgid ""
"<foreground> [<background>] <text>\n"
"\n"
" Returns <text> with foreground color <foreground> and background color\n"
" Returns <text> with foreground color <foreground> and background "
"color\n"
" <background> (if given)\n"
" "
msgstr ""
"<premier plan> [<arrière plan>] <texte>\n"
"\n"
"Retourne le <texte> avec les couleurs de <premier plan> et de l'<arrière plan> (si donné)."
"Retourne le <texte> avec les couleurs de <premier plan> et de l'<arrière "
"plan> (si donné)."
#: plugin.py:80
#: plugin.py:87
msgid ""
"<separator> <string 1> [<string> ...]\n"
"\n"
@ -69,36 +80,45 @@ msgstr ""
"\n"
"Joint tous les arguments en utilisant le <séparateur>."
#: plugin.py:89
#: plugin.py:96
msgid ""
"<chars to translate> <chars to replace those with> <text>\n"
"\n"
" Replaces <chars to translate> with <chars to replace those with> in\n"
" <text>. The first and second arguments must necessarily be the same\n"
" <text>. The first and second arguments must necessarily be the "
"same\n"
" length.\n"
" "
msgstr ""
"<caractères à remplacer> <caractères de remplacement> <texte>\n"
"\n"
"Remplacer des caractères par d'autres. Le premier et le second argument doivent obligatoirement être de la même taille."
#: plugin.py:96
msgid "<chars to translate> must be the same length as <chars to replace those with>."
msgstr "<caractères à remplacer> doit être de la même taille que <caractères de remplacement>"
"Remplacer des caractères par d'autres. Le premier et le second argument "
"doivent obligatoirement être de la même taille."
#: plugin.py:103
msgid ""
"<chars to translate> must be the same length as <chars to replace those "
"with>."
msgstr ""
"<caractères à remplacer> doit être de la même taille que <caractères de "
"remplacement>"
#: plugin.py:110
msgid ""
"<substring to translate> <substring to replace it with> <text>\n"
"\n"
" Replaces all non-overlapping occurrences of <substring to translate>\n"
" Replaces all non-overlapping occurrences of <substring to "
"translate>\n"
" with <substring to replace it with> in <text>.\n"
" "
msgstr ""
"<sous-chaîne à remplacer> <sous-chaîne de remplacement> <texte>\n"
"\n"
"Replace toutes les occurences de <sous-chaîne à remplacer> (à condition qu'elles n'entrent pas en conflit) par les <sous-chaîne de remplacement> dans le <texte>."
"Replace toutes les occurences de <sous-chaîne à remplacer> (à condition "
"qu'elles n'entrent pas en conflit) par les <sous-chaîne de remplacement> "
"dans le <texte>."
#: plugin.py:112
#: plugin.py:119
msgid ""
"<text>\n"
"\n"
@ -109,7 +129,7 @@ msgstr ""
"\n"
"Retourne le texte, en majuscules"
#: plugin.py:121
#: plugin.py:128
msgid ""
"<text>\n"
"\n"
@ -120,7 +140,7 @@ msgstr ""
"\n"
"Retourne le texte, en minuscules"
#: plugin.py:130
#: plugin.py:137
msgid ""
"<text>\n"
"\n"
@ -131,7 +151,7 @@ msgstr ""
"\n"
"Retourne le texte, capitalisé"
#: plugin.py:139
#: plugin.py:146
msgid ""
"<text>\n"
"\n"
@ -142,8 +162,7 @@ msgstr ""
"\n"
"Retourne le texte, mis en majuscules de titre."
#: plugin.py:148
#, fuzzy
#: plugin.py:155
msgid ""
"<text>\n"
"\n"
@ -152,58 +171,75 @@ msgid ""
msgstr ""
"<texte>\n"
"\n"
"Retourne le texte, entouré de doubles guillemets."
"Retourne le texte, entouré de guillemets doubles."
#: plugin.py:157
#: plugin.py:164
msgid ""
"<string 1> <string 2>\n"
"\n"
" Concatenates two strings. Do keep in mind that this is *not* the same\n"
" thing as join \"\", since if <string 2> contains spaces, they won't be\n"
" Concatenates two strings. Do keep in mind that this is *not* the "
"same\n"
" thing as join \"\", since if <string 2> contains spaces, they won't "
"be\n"
" removed by concat.\n"
" "
msgstr ""
"<chaîne 1> <chaîne 2>\n"
"\n"
"Concatène les deux chaînes. Notez que ce n'est pas la même chose que de les joindre avec \"\", car, si <chaîne 2> contient des espaces, ils ne seront pas supprimés par la concaténation."
"Concatène les deux chaînes. Notez que ce n'est pas la même chose que de les "
"joindre avec \"\", car, si <chaîne 2> contient des espaces, ils ne seront "
"pas supprimés par la concaténation."
#: plugin.py:168
#: plugin.py:175
msgid ""
"<size> <text>\n"
"\n"
" Cuts <text> down to <size> by chopping off the rightmost characters in\n"
" excess of <size>. If <size> is a negative number, it chops that many\n"
" Cuts <text> down to <size> by chopping off the rightmost characters "
"in\n"
" excess of <size>. If <size> is a negative number, it chops that "
"many\n"
" characters off the end of <text>.\n"
" "
msgstr ""
"<taille> <texte>\n"
"\n"
"Coup le <texte> en morceaux de <taille>, en découpant les caractères dépassant la <taille>. Si la <taille> est un nombre négatif, il coupe en comptant à partir de la fin du texte."
"Coup le <texte> en morceaux de <taille>, en découpant les caractères "
"dépassant la <taille>. Si la <taille> est un nombre négatif, il coupe en "
"comptant à partir de la fin du texte."
#: plugin.py:179
#: plugin.py:186
msgid ""
"<number> <text>\n"
"\n"
" Returns the <number>th space-separated field of <text>. I.e., if text\n"
" Returns the <number>th space-separated field of <text>. I.e., if "
"text\n"
" is \"foo bar baz\" and <number> is 2, \"bar\" is returned.\n"
" "
msgstr ""
"<nombre> <texte>\n"
"\n"
"Retourne le <nombre>-ième élément (séparé par des espaces) du <texte>. C'est à dire que si le texte est \"foo bar baz\" et que <nombre> est 2, \"bar\" sera retourné."
"Retourne le <nombre>-ième élément (séparé par des espaces) du <texte>. C'est "
"à dire que si le texte est \"foo bar baz\" et que <nombre> est 2, \"bar\" "
"sera retourné."
#: plugin.py:192
#: plugin.py:199
msgid ""
"<format string> [<arg> ...]\n"
"\n"
" Expands a Python-style format string using the remaining args. Just be\n"
" sure always to use %s, not %d or %f or whatever, because all the args\n"
" Expands a Python-style format string using the remaining args. Just "
"be\n"
" sure always to use %s, not %d or %f or whatever, because all the "
"args\n"
" are strings.\n"
" "
msgstr ""
"<chaîne de formattage> [<arg> ...]\n"
"\n"
"Étant une chaine de formattage dans le style de Python avec les arguments "
"restants.Assurez-vous seulement de toujours utiliser %s, et pas %d, %f, ou "
"quoi que ce soit dautre, puisque tous les arguments sont des chaines de "
"caractères."
#: plugin.py:206
#: plugin.py:213
msgid "Not enough arguments for the format string."
msgstr "Pas assez d'arguments pour formatter la chaîne."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:46
#: plugin.py:47
#, docstring
msgid ""
"takes no arguments\n"
@ -24,15 +24,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:51
#: plugin.py:52
msgid "heads"
msgstr ""
#: plugin.py:53
#: plugin.py:54
msgid "tails"
msgstr ""
#: plugin.py:58
#: plugin.py:59
#, docstring
msgid ""
"<dice>d<sides>\n"
@ -43,35 +43,35 @@ msgid ""
" "
msgstr ""
#: plugin.py:66
#: plugin.py:67
msgid "You can't roll more than 1000 dice."
msgstr ""
#: plugin.py:68
#: plugin.py:69
msgid "Dice can't have more than 100 sides."
msgstr ""
#: plugin.py:70
#: plugin.py:71
msgid "Dice can't have fewer than 3 sides."
msgstr ""
#: plugin.py:78
#: plugin.py:79
msgid "Dice must be of the form <dice>d<sides>"
msgstr ""
#: plugin.py:82
#: plugin.py:83
msgid "It is possible.|Yes!|Of course.|Naturally.|Obviously.|It shall be.|The outlook is good.|It is so.|One would be wise to think so.|The answer is certainly yes."
msgstr ""
#: plugin.py:86
#: plugin.py:87
msgid "In your dreams.|I doubt it very much.|No chance.|The outlook is poor.|Unlikely.|About as likely as pigs flying.|You're kidding, right?|NO!|NO.|No.|The answer is a resounding no."
msgstr ""
#: plugin.py:90
#: plugin.py:91
msgid "Maybe...|No clue.|_I_ don't know.|The outlook is hazy, please ask again later.|What are you asking me for?|Come again?|You know the answer better than I.|The answer is def-- oooh! shiny thing!"
msgstr ""
#: plugin.py:107
#: plugin.py:108
#, docstring
msgid ""
"[<question>]\n"
@ -80,7 +80,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:121
#: plugin.py:122
#, docstring
msgid ""
"[spin]\n"
@ -90,23 +90,23 @@ msgid ""
" "
msgstr ""
#: plugin.py:128
#: plugin.py:129
msgid "*SPIN* Are you feeling lucky?"
msgstr ""
#: plugin.py:137
#: plugin.py:139
msgid "*BANG* Hey, who put a blank in here?!"
msgstr ""
#: plugin.py:139
#: plugin.py:141
msgid "reloads and spins the chambers."
msgstr ""
#: plugin.py:141
#: plugin.py:143
msgid "*click*"
msgstr ""
#: plugin.py:148
#: plugin.py:150
#, docstring
msgid ""
"[<channel>]\n"
@ -118,11 +118,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:167
#: plugin.py:169
msgid "Your current monologue is at least %n long."
msgstr ""
#: plugin.py:168
#: plugin.py:170
msgid "line"
msgstr ""

View File

@ -1,15 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2013-03-03 19:38+CET\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 22:36+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:39
msgid ""
@ -44,6 +45,12 @@ msgstr ""
#: config.py:105
msgid ""
"Determines the base URL used for\n"
" requests."
msgstr "Détermine lURL de base utilisée pour les requêtes."
#: config.py:108
msgid ""
"Determines whether the search snarfer is\n"
" enabled. If so, messages (even unaddressed ones) beginning with the "
"word\n"
@ -54,7 +61,7 @@ msgstr ""
"messages (même non adressés) commençant par 'google' seront répondus par la "
"première URL que Google donne pour cette recherche."
#: config.py:110
#: config.py:113
msgid ""
"Determines whether the word 'google' in the\n"
" bot's output will be made colorful (like Google's logo)."
@ -62,24 +69,26 @@ msgstr ""
"Détermine si le mot 'google' dans la sortie du bot sera coloré (comme le "
"logo de Google)"
#: config.py:113
#: config.py:116
msgid "Determines whether results are bolded."
msgstr "Détermine si les résultats sont mis en gras."
#: config.py:115
#: config.py:118
msgid ""
"Determines whether results are sent in\n"
" different lines or all in the same one."
msgstr ""
"Détermine si les résultats sont envoyés sur différentes lignes, ou tous sur "
"la même."
#: config.py:118
#: config.py:121
msgid ""
"Determines the maximum number of results returned\n"
" from the google command."
msgstr ""
"Détermine le nombre maximum de résultats retournés par la commande google."
#: config.py:121
#: config.py:124
msgid ""
"Determines what default language is used in\n"
" searches. If left empty, no specific language will be requested."
@ -87,11 +96,11 @@ msgstr ""
"Détermine quand langue par défaut est utilisée dans les recherches. Si "
"laissé vide, aucune langue spécifique ne sera demandée."
#: config.py:121
#: config.py:124
msgid "en"
msgstr "fr"
#: config.py:124
#: config.py:127
msgid ""
"Determines what level of search filtering to use\n"
" by default. 'active' - most filtering, 'moderate' - default filtering,\n"
@ -100,7 +109,7 @@ msgstr ""
"Détermine le niveau de filtrage à utiliser par défaut. 'active' filtre tout, "
"'moderate' est le filtre par défaut, et 'off' désactive le filtrage."
#: plugin.py:83
#: plugin.py:84
msgid ""
"Perform a search using Google's AJAX API.\n"
" search(\"search phrase\", options={})\n"
@ -122,15 +131,15 @@ msgstr ""
" (Default: \"lang_en\")\n"
" "
#: plugin.py:122 plugin.py:185
#: plugin.py:123 plugin.py:189
msgid "We broke The Google!"
msgstr "Google est toukassay !"
#: plugin.py:144
#: plugin.py:148
msgid "No matches found."
msgstr "Aucune correspondance."
#: plugin.py:152
#: plugin.py:156
msgid ""
"[--snippet] <search>\n"
"\n"
@ -143,11 +152,11 @@ msgstr ""
"Effectue une recherche google, mais ne retourne que le premier résultat. Si "
"l'option --snippet est donnée, retournera également un fragment de la page."
#: plugin.py:169
#: plugin.py:173
msgid "Google found nothing."
msgstr "Google n'a rien trouvé."
#: plugin.py:174
#: plugin.py:178
msgid ""
"<search> [--{filter,language} <value>]\n"
"\n"
@ -163,7 +172,7 @@ msgstr ""
"sont donnés. --language accepte une abbréviation de langue ; --filter "
"accepte un niveau de filtrage ('active', 'moderate', 'off')."
#: plugin.py:202
#: plugin.py:206
msgid ""
"<url>\n"
"\n"
@ -174,11 +183,11 @@ msgstr ""
"\n"
"Retourne un lien vers la version en cache de l'<url>, si elle est disponible."
#: plugin.py:213
#: plugin.py:217
msgid "Google seems to have no cache for that site."
msgstr "Google semble ne pas avoir de cache pour ce site."
#: plugin.py:218
#: plugin.py:222
msgid ""
"<search string> <search string> [<search string> ...]\n"
"\n"
@ -191,7 +200,7 @@ msgstr ""
"Retourne les résultats de chaque recherche, dans l'ordre, par ordre "
"croissant du nombre de résultats."
#: plugin.py:241
#: plugin.py:245
msgid ""
"<source language> [to] <target language> <text>\n"
"\n"
@ -204,11 +213,11 @@ msgstr ""
"Retourne le <texte>, traduire de la <langue de départ> vers la <langue "
"finale>."
#: plugin.py:277
#: plugin.py:283
msgid "^google\\s+(.*)$"
msgstr "^google\\s+(.*)$"
#: plugin.py:306
#: plugin.py:310
msgid ""
"<expression>\n"
"\n"
@ -219,11 +228,7 @@ msgstr ""
"\n"
"Utilise la calculatrice Google pour calculer la valeur de l'<expression>."
#: plugin.py:339
msgid "Google says: Error: %s."
msgstr "Google dit : Erreur : %s."
#: plugin.py:346
#: plugin.py:345
msgid ""
"<phone number>\n"
"\n"
@ -234,10 +239,13 @@ msgstr ""
"\n"
"Recherche le <numéro de téléphone> sur Google."
#: plugin.py:360
#: plugin.py:362
msgid "Google's phonebook didn't come up with anything."
msgstr "L'annuaire téléphonique de Google ne donne aucun résultat."
#~ msgid "Google says: Error: %s."
#~ msgstr "Google dit : Erreur : %s."
#~ msgid "from language"
#~ msgstr "de la langue"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -93,7 +93,7 @@ msgid ""
" 'off' - no filtering"
msgstr ""
#: plugin.py:83
#: plugin.py:84
#, docstring
msgid ""
"Perform a search using Google's AJAX API.\n"
@ -107,15 +107,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:122 plugin.py:188
#: plugin.py:123 plugin.py:189
msgid "We broke The Google!"
msgstr ""
#: plugin.py:147
#: plugin.py:148
msgid "No matches found."
msgstr ""
#: plugin.py:155
#: plugin.py:156
#, docstring
msgid ""
"[--snippet] <search>\n"
@ -125,11 +125,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:172
#: plugin.py:173
msgid "Google found nothing."
msgstr ""
#: plugin.py:177
#: plugin.py:178
#, docstring
msgid ""
"<search> [--{filter,language} <value>]\n"
@ -140,7 +140,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:205
#: plugin.py:206
#, docstring
msgid ""
"<url>\n"
@ -149,11 +149,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:216
#: plugin.py:217
msgid "Google seems to have no cache for that site."
msgstr ""
#: plugin.py:221
#: plugin.py:222
#, docstring
msgid ""
"<search string> <search string> [<search string> ...]\n"
@ -163,7 +163,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:244
#: plugin.py:245
#, docstring
msgid ""
"<source language> [to] <target language> <text>\n"
@ -173,12 +173,12 @@ msgid ""
" "
msgstr ""
#: plugin.py:280
#: plugin.py:283
#, docstring
msgid "^google\\s+(.*)$"
msgstr ""
#: plugin.py:311
#: plugin.py:310
#, docstring
msgid ""
"<expression>\n"
@ -187,11 +187,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:347
msgid "Google says: Error: %s."
msgstr ""
#: plugin.py:354
#: plugin.py:345
#, docstring
msgid ""
"<phone number>\n"
@ -200,7 +196,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:371
#: plugin.py:362
msgid "Google's phonebook didn't come up with anything."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 15:21+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 15:20+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,12 +15,12 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:42
#: plugin.py:43
#, docstring
msgid "Add the help for \"@help Internet\" here."
msgstr ""
#: plugin.py:46
#: plugin.py:47
#, docstring
msgid ""
"<host|ip>\n"
@ -29,11 +29,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:53 plugin.py:60 plugin.py:64
#: plugin.py:54 plugin.py:62
msgid "Host not found."
msgstr ""
#: plugin.py:76
#: plugin.py:74
#, docstring
msgid ""
"<domain>\n"
@ -42,39 +42,39 @@ msgid ""
" "
msgstr ""
#: plugin.py:82
#: plugin.py:80
msgid "domain"
msgstr ""
#: plugin.py:111
#: plugin.py:120
msgid "updated %s"
msgstr ""
#: plugin.py:114
#: plugin.py:123
msgid "registered %s"
msgstr ""
#: plugin.py:117
#: plugin.py:126
msgid "expires %s"
msgstr ""
#: plugin.py:137
#: plugin.py:146
msgid " <registered at %s>"
msgstr ""
#: plugin.py:139
#: plugin.py:148
msgid " <registered by %s>"
msgstr ""
#: plugin.py:144
#: plugin.py:153
msgid "%s%s is %L."
msgstr ""
#: plugin.py:147
#: plugin.py:156
msgid "I couldn't find such a domain."
msgstr ""
#: plugin.py:152
#: plugin.py:161
#, docstring
msgid ""
"<ip>\n"

View File

@ -1,42 +1,48 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2011-08-10 11:27+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 13:46+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:46
msgid ""
"Determines whether the bot will output shorter\n"
" versions of the karma output when requesting a single thing's karma."
msgstr "Détermine si le bot donnera comme sortie une version plus courte du karma lorsqu'on lui demandera un seul karma."
msgstr ""
"Détermine si le bot donnera comme sortie une version plus courte du karma "
"lorsqu'on lui demandera un seul karma."
#: config.py:49
msgid ""
"Determines whether the bot will reply with a\n"
" success message when something's karma is increased or decreased."
msgstr "Détermine si le bot répondra avec un message de succès si un karma est augmenté ou diminué."
msgstr ""
"Détermine si le bot répondra avec un message de succès si un karma est "
"augmenté ou diminué."
#: config.py:52
msgid ""
"Determines how many highest/lowest karma things\n"
" are shown when karma is called with no arguments."
msgstr "Détermine combien de plus haut/bas karmas sont affichés lorsque karma est appelé sans argument."
msgstr ""
"Détermine combien de plus haut/bas karmas sont affichés lorsque karma est "
"appelé sans argument."
#: config.py:55
#, fuzzy
msgid ""
"Determines how many karma things are shown when\n"
" the most command is called."
msgstr "Détermine combien de karmas sont affichés lorsque la commande most est appelée."
msgstr ""
"Détermine combien de karmas sont affichés lorsque la commande « most » est "
"appelée."
#: config.py:58
msgid ""
@ -48,9 +54,15 @@ msgstr "Détermine si les utilisateurs peuvent ajuster le karma de leur nick."
msgid ""
"Determines whether the bot will\n"
" increase/decrease karma without being addressed."
msgstr "Détermine si le bot augmentera/diminuera le karma sans que l'on s'adresse à lui."
msgstr ""
"Détermine si le bot augmentera/diminuera le karma sans que l'on s'adresse à "
"lui."
#: plugin.py:247 plugin.py:255
#: plugin.py:234
msgid "%(thing)s's karma is now %(karma)i"
msgstr "Le karma de %(thing)s est maintenant %(karma)i"
#: plugin.py:245 plugin.py:254
msgid "You're not allowed to adjust your own karma."
msgstr "Vous n'êtes pas autorisé à modifier votre propre karma."
@ -58,25 +70,35 @@ msgstr "Vous n'êtes pas autorisé à modifier votre propre karma."
msgid ""
"[<channel>] [<thing> ...]\n"
"\n"
" Returns the karma of <thing>. If <thing> is not given, returns the top\n"
" Returns the karma of <thing>. If <thing> is not given, returns the "
"top\n"
" N karmas, where N is determined by the config variable\n"
" supybot.plugins.Karma.rankingDisplay. If one <thing> is given, returns\n"
" the details of its karma; if more than one <thing> is given, returns\n"
" supybot.plugins.Karma.rankingDisplay. If one <thing> is given, "
"returns\n"
" the details of its karma; if more than one <thing> is given, "
"returns\n"
" the total karma of each of the things. <channel> is only necessary\n"
" if the message isn't sent on the channel itself.\n"
" "
msgstr ""
"[<canal>] [<objet> ...]\n"
"\n"
"Retourne le karma de l'<objet>. Si l'<objet> n'est pas donné, retourne les trois premiers et derniers karmas. Si une <chose> est donnée, retourne les détails de son karma ; si plus d'une <chose> est donnée, retourne le karma total de chacune de ces choses. Le <canal> n'est nécessaire que si la commande n'est pas envoyée sur le canal lui-même."
"Retourne le karma de l'<objet>. Si l'<objet> n'est pas donné, retourne les "
"trois premiers et derniers karmas. Si une <chose> est donnée, retourne les "
"détails de son karma ; si plus d'une <chose> est donnée, retourne le karma "
"total de chacune de ces choses. Le <canal> n'est nécessaire que si la "
"commande n'est pas envoyée sur le canal lui-même."
#: plugin.py:297
msgid "%s has neutral karma."
msgstr "%s a un karma neutre."
#: plugin.py:304
msgid "Karma for %q has been increased %n and decreased %n for a total karma of %s."
msgstr "Le karma de %q a été augmenté %n fois et diminué %n fois, pour un karma total de %s."
msgid ""
"Karma for %q has been increased %n and decreased %n for a total karma of %s."
msgstr ""
"Le karma de %q a été augmenté %n fois et diminué %n fois, pour un karma "
"total de %s."
#: plugin.py:306 plugin.py:307
msgid "time"
@ -103,13 +125,16 @@ msgid ""
"[<channel>] {increased,decreased,active}\n"
"\n"
" Returns the most increased, the most decreased, or the most active\n"
" (the sum of increased and decreased) karma things. <channel> is only\n"
" (the sum of increased and decreased) karma things. <channel> is "
"only\n"
" necessary if the message isn't sent in the channel itself.\n"
" "
msgstr ""
"[<canal>] {increased,decreased,active}\n"
"\n"
"Retourne le plus augmenté (increased), le plus descendu (decreased), ou le plus actif (la somme des montées et descentes) des karmas. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Retourne le plus augmenté (increased), le plus descendu (decreased), ou le "
"plus actif (la somme des montées et descentes) des karmas. <canal> n'est "
"nécessaire que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:365
msgid ""
@ -127,23 +152,29 @@ msgid ""
"[<channel>] <filename>\n"
"\n"
" Dumps the Karma database for <channel> to <filename> in the bot's\n"
" data directory. <channel> is only necessary if the message isn't sent\n"
" data directory. <channel> is only necessary if the message isn't "
"sent\n"
" in the channel itself.\n"
" "
msgstr ""
"[<canal>] <nom de fichier>\n"
"\n"
"Exporte la base de données des Karma du <canal> dans le <nom de fichier> dans le répertoire de données du bot. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Exporte la base de données des Karma du <canal> dans le <nom de fichier> "
"dans le répertoire de données du bot. <canal> n'est nécessaire que si le "
"message n'est pas envoyé sur le canal lui-même."
#: plugin.py:387
msgid ""
"[<channel>] <filename>\n"
"\n"
" Loads the Karma database for <channel> from <filename> in the bot's\n"
" data directory. <channel> is only necessary if the message isn't sent\n"
" data directory. <channel> is only necessary if the message isn't "
"sent\n"
" in the channel itself.\n"
" "
msgstr ""
"[<canal>] <nom de fichier>\n"
"\n"
"Charge la base de données des Karma du <canal> du <nom de fichier> dans le répertoire de données du bot. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Charge la base de données des Karma du <canal> du <nom de fichier> dans le "
"répertoire de données du bot. <canal> n'est nécessaire que si le message "
"n'est pas envoyé sur le canal lui-même."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 15:21+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,55 +1,66 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2011-08-10 11:28+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 13:38+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:45
msgid ""
"Determines the maximum number of\n"
" messages to be queued for a user. If this value is 0, there is no maximum.\n"
" messages to be queued for a user. If this value is 0, there is no "
"maximum.\n"
" "
msgstr "Détermine le nombre maximum de messages en attente d'un utilisateur. Si la valeur est 0, il n'y a pas de maximum"
msgstr ""
"Détermine le nombre maximum de messages en attente d'un utilisateur. Si la "
"valeur est 0, il n'y a pas de maximum"
#: config.py:49
msgid ""
"Determines whether users will be notified in\n"
" the first place in which they're seen, or in private."
msgstr "Détermine si les utilisateurs seront notifiés au premier endroit où ils sont vus, ou en privé."
msgstr ""
"Détermine si les utilisateurs seront notifiés au premier endroit où ils sont "
"vus, ou en privé."
#: config.py:52
msgid ""
"Determines whether users will be notified upon\n"
" joining any channel the bot is in, or only upon sending a message."
msgstr "Détermine si les utilisateurs seront notifiés au premier endroit où ils sont vus, ou seulement lorsqu'ils envoient un message."
msgstr ""
"Détermine si les utilisateurs seront notifiés au premier endroit où ils sont "
"vus, ou seulement lorsqu'ils envoient un message."
#: config.py:55
msgid ""
"Determines the maximum number of\n"
" days that a message will remain queued for a user. After this time elapses,\n"
" days that a message will remain queued for a user. After this time "
"elapses,\n"
" the message will be deleted. If this value is 0, there is no maximum."
msgstr "Détermine le nombre maximum de messages en attente d'un utilisateur. Après que ce temps se soit écoulé, le message sera supprimé. Si la valeur est 0, il n'y a pas de maximum."
msgstr ""
"Détermine le nombre maximum de messages en attente d'un utilisateur. Après "
"que ce temps se soit écoulé, le message sera supprimé. Si la valeur est 0, "
"il n'y a pas de maximum."
#: plugin.py:46
msgid ""
"Used to do things later; currently, it only allows the sending of\n"
" nick-based notes. Do note (haha!) that these notes are *not* private\n"
" and don't even pretend to be; if you want such features, consider using the\n"
" and don't even pretend to be; if you want such features, consider using "
"the\n"
" Note plugin."
msgstr "Utilisé pour faire des choses plus tard ; actuellement, il n'autorise que les notes basées sur des nicks. Notez (haha !) que ces notes ne sont *pas* privées, et qu'elle ne sont pas conçues pour l'être ; si vous voulez une telle fonctionnalité, utilisez le plugin Note."
#: plugin.py:84
msgid "%s ago"
msgstr "il y a %s"
msgstr ""
"Utilisé pour faire des choses plus tard ; actuellement, il n'autorise que "
"les notes basées sur des nicks. Notez (haha !) que ces notes ne sont *pas* "
"privées, et qu'elle ne sont pas conçues pour l'être ; si vous voulez une "
"telle fonctionnalité, utilisez le plugin Note."
#: plugin.py:86
msgid "just now"
@ -61,27 +72,29 @@ msgid ""
"\n"
" Reference: http://tools.ietf.org/rfcmarkup?doc=2812#section-2.3.1\n"
"\n"
" Some irc clients' tab-completion feature appends 'address' characters\n"
" Some irc clients' tab-completion feature appends 'address' "
"characters\n"
" to nick, such as ':' or ','. We try correcting for that by trimming\n"
" a char off the end.\n"
"\n"
" If nick incorrigibly invalid, return False, otherwise,\n"
" return (possibly trimmed) nick.\n"
" "
msgstr ""
msgstr "."
#: plugin.py:151
msgid ""
"<nick> <text>\n"
"\n"
" Tells <nick> <text> the next time <nick> is in seen. <nick> can\n"
" Tells <nick> <text> the next time <nick> is seen. <nick> can\n"
" contain wildcard characters, and the first matching nick will be\n"
" given the note.\n"
" "
msgstr ""
"<nick> <texte>\n"
"\n"
"Dit le <texte> à <nick> la prochaine fois qu'il est vu. <nick> peut contenir des jokers, et le premier nick correspondant recevra la note."
"Dit le <texte> à <nick> la prochaine fois qu'il est vu. <nick> peut contenir "
"des jokers, et le premier nick correspondant recevra la note."
#: plugin.py:159
msgid "I can't send notes to myself."
@ -101,7 +114,8 @@ msgid ""
msgstr ""
"[<nick>]\n"
"\n"
"Si le <nick> est donné, répond avec les notes en attente pour <nick> ; sinon, répond avec les nicks ayant des notes en attente."
"Si le <nick> est donné, répond avec les notes en attente pour <nick> ; "
"sinon, répond avec les nicks ayant des notes en attente."
#: plugin.py:185
msgid "I have no notes for that nick."
@ -153,3 +167,5 @@ msgstr "Il n'y a pas de note de vous en attente pour %s."
msgid "Sent %s: <%s> %s"
msgstr "Envoyé %s : <%s> %s"
#~ msgid "%s ago"
#~ msgstr "il y a %s"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -50,10 +50,6 @@ msgid ""
" Note plugin."
msgstr ""
#: plugin.py:84
msgid "%s ago"
msgstr ""
#: plugin.py:86
msgid "just now"
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 15:35+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,19 +1,18 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2010-10-17 15:35+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 19:30+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: plugin.py:52
#: plugin.py:55
msgid ""
"<fromBase> [<toBase>] <number>\n"
"\n"
@ -23,63 +22,80 @@ msgid ""
msgstr ""
"<base 1> [<base 2>] <nombre>\n"
"\n"
"Converti le nombre d'une base à l'autre. La seconde base est la décimale par défaut."
"Converti le nombre d'une base à l'autre. La seconde base est la décimale par "
"défaut."
#: plugin.py:63
#: plugin.py:66
msgid "Invalid <number> for base %s: %s"
msgstr "Nombre invalide pour la base %s : %s"
#: plugin.py:69
#: plugin.py:72
msgid "Convert a decimal number to another base; returns a string."
msgstr "Converti un nombre décimal dans une autre base, retourne une chaîne."
#: plugin.py:90
#: plugin.py:93
msgid ""
"Convert a number from any base, 2 through 36, to any other\n"
" base, 2 through 36. Returns a string."
msgstr "Convertir un nombre de n'importe quelle base, de 2 à 36, à n'importe quelle base, de 2 à 36."
msgstr ""
"Convertir un nombre de n'importe quelle base, de 2 à 36, à n'importe quelle "
"base, de 2 à 36."
#: plugin.py:157
#: plugin.py:167
msgid ""
"<math expression>\n"
"\n"
" Returns the value of the evaluated <math expression>. The syntax is\n"
" Returns the value of the evaluated <math expression>. The syntax "
"is\n"
" Python syntax; the type of arithmetic is floating point. Floating\n"
" point arithmetic is used in order to prevent a user from being able to\n"
" crash to the bot with something like '10**10**10**10'. One consequence\n"
" point arithmetic is used in order to prevent a user from being able "
"to\n"
" crash to the bot with something like '10**10**10**10'. One "
"consequence\n"
" is that large values such as '10**24' might not be exact.\n"
" "
msgstr ""
"<expression mathématique>\n"
"\n"
"Retourne la valeur de l'<expression mathématique> évaluée. La syntaxe est celle de Python ; le calcul est à virgule flottante. Les calculs à virgule flottante sont utilisés pour enmpêcher l'utilisateur de faire crasher le bot avec quelque chose du genre '10**10**10**10'. L'une des conséquences est que les grandes valeurs commandes '10**24' peuvent ne pas être exactes."
"Retourne la valeur de l'<expression mathématique> évaluée. La syntaxe est "
"celle de Python ; le calcul est à virgule flottante. Les calculs à virgule "
"flottante sont utilisés pour enmpêcher l'utilisateur de faire crasher le bot "
"avec quelque chose du genre '10**10**10**10'. L'une des conséquences est que "
"les grandes valeurs commandes '10**24' peuvent ne pas être exactes."
#: plugin.py:166
#: plugin.py:220
msgid "There's really no reason why you should have underscores or brackets in your mathematical expression. Please remove them."
msgstr "Il n'y a aucune réelle raison que vous mettiez des underscores ou des crochets dans vos expressions mathématiques. Merci de les retirer."
#: plugin.py:178
msgid ""
"There's no reason you should have fancy non-ASCII characters in your "
"mathematical expression. Please remove them."
msgstr ""
"Il n'y a aucune réelle raison que vous mettiez des caractères non-ASCII dans "
"vos expressions mathématiques. Merci de les retirer."
#: plugin.py:172
#: plugin.py:228
#: plugin.py:183 plugin.py:237
msgid ""
"There's really no reason why you should have underscores or brackets in your "
"mathematical expression. Please remove them."
msgstr ""
"Il n'y a aucune réelle raison que vous mettiez des underscores ou des "
"crochets dans vos expressions mathématiques. Merci de les retirer."
#: plugin.py:189 plugin.py:245
msgid "You can't use lambda in this command."
msgstr "Vous ne pouvez utiliser lambda dans cette commande."
#: plugin.py:202
#: plugin.py:236
#: plugin.py:219 plugin.py:253
msgid "The answer exceeded %s or so."
msgstr "La réponse dépasse %s."
#: plugin.py:204
#: plugin.py:238
#: plugin.py:221 plugin.py:255
msgid "Something in there wasn't a valid number."
msgstr "Quelque chose là-dedans n'est pas un nombre valide"
#: plugin.py:206
#: plugin.py:240
#: plugin.py:223 plugin.py:257
msgid "%s is not a defined function."
msgstr "%s n'est pas une fonction définie"
#: plugin.py:213
#: plugin.py:230
msgid ""
"<math expression>\n"
"\n"
@ -90,9 +106,11 @@ msgid ""
msgstr ""
"<expression mathématique>\n"
"\n"
"Cette commande est la même que la commande 'calc', excepté qu'elle utilise des mathématiques entières, ce qui peut causer une surconsommation de CPU de la part du bot. C'est pourquoi elle requiert la capacité 'trusted'."
"Cette commande est la même que la commande 'calc', excepté qu'elle utilise "
"des mathématiques entières, ce qui peut causer une surconsommation de CPU de "
"la part du bot. C'est pourquoi elle requiert la capacité 'trusted'."
#: plugin.py:250
#: plugin.py:267
msgid ""
"<rpn math expression>\n"
"\n"
@ -103,19 +121,19 @@ msgstr ""
"\n"
"Retourne la valeur de l'expression mathématique NPI."
#: plugin.py:275
#: plugin.py:292
msgid "Not enough arguments for %s"
msgstr "Pas assez d'arguments pour %s."
#: plugin.py:288
#: plugin.py:305
msgid "%q is not a defined function."
msgstr "%q n'est pas une fonction définie."
#: plugin.py:295
#: plugin.py:312
msgid "Stack: [%s]"
msgstr "Pile : [%s]"
#: plugin.py:299
#: plugin.py:316
msgid ""
"[<number>] <unit> to <other unit>\n"
"\n"
@ -125,18 +143,23 @@ msgid ""
msgstr ""
"[<nombre>] <unité> to <autre unité>\n"
"\n"
"Convertit de l'<unité> à l'<autre unité>. Si le nombre n'est pas donné, il vaut 1 par défaut. Pour plus d'informations sur les unités, utilisez la commande 'units'."
"Convertit de l'<unité> à l'<autre unité>. Si le nombre n'est pas donné, il "
"vaut 1 par défaut. Pour plus d'informations sur les unités, utilisez la "
"commande 'units'."
#: plugin.py:314
#: plugin.py:346
msgid ""
" [<type>]\n"
"\n"
" With no arguments, returns a list of measurement types, which can be\n"
" passed as arguments. When called with a type as an argument, returns\n"
" With no arguments, returns a list of measurement types, which can "
"be\n"
" passed as arguments. When called with a type as an argument, "
"returns\n"
" the units of that type.\n"
" "
msgstr ""
"[<type>]\n"
"\n"
"Sans argument, retourne la liste des types de mesures, qui peuvent être passés en argument. Lors de l'appel avec un argument, retourne les unités de chaque type."
"Sans argument, retourne la liste des types de mesures, qui peuvent être "
"passés en argument. Lors de l'appel avec un argument, retourne les unités de "
"chaque type."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:52
#: plugin.py:55
#, docstring
msgid ""
"<fromBase> [<toBase>] <number>\n"
@ -25,23 +25,23 @@ msgid ""
" "
msgstr ""
#: plugin.py:63
#: plugin.py:66
msgid "Invalid <number> for base %s: %s"
msgstr ""
#: plugin.py:69
#: plugin.py:72
#, docstring
msgid "Convert a decimal number to another base; returns a string."
msgstr ""
#: plugin.py:90
#: plugin.py:93
#, docstring
msgid ""
"Convert a number from any base, 2 through 36, to any other\n"
" base, 2 through 36. Returns a string."
msgstr ""
#: plugin.py:157
#: plugin.py:167
#, docstring
msgid ""
"<math expression>\n"
@ -54,27 +54,31 @@ msgid ""
" "
msgstr ""
#: plugin.py:166 plugin.py:220
#: plugin.py:178
msgid "There's no reason you should have fancy non-ASCII characters in your mathematical expression. Please remove them."
msgstr ""
#: plugin.py:183 plugin.py:237
msgid "There's really no reason why you should have underscores or brackets in your mathematical expression. Please remove them."
msgstr ""
#: plugin.py:172 plugin.py:228
#: plugin.py:189 plugin.py:245
msgid "You can't use lambda in this command."
msgstr ""
#: plugin.py:202 plugin.py:236
#: plugin.py:219 plugin.py:253
msgid "The answer exceeded %s or so."
msgstr ""
#: plugin.py:204 plugin.py:238
#: plugin.py:221 plugin.py:255
msgid "Something in there wasn't a valid number."
msgstr ""
#: plugin.py:206 plugin.py:240
#: plugin.py:223 plugin.py:257
msgid "%s is not a defined function."
msgstr ""
#: plugin.py:213
#: plugin.py:230
#, docstring
msgid ""
"<math expression>\n"
@ -85,7 +89,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:250
#: plugin.py:267
#, docstring
msgid ""
"<rpn math expression>\n"
@ -94,19 +98,19 @@ msgid ""
" "
msgstr ""
#: plugin.py:275
#: plugin.py:292
msgid "Not enough arguments for %s"
msgstr ""
#: plugin.py:288
#: plugin.py:305
msgid "%q is not a defined function."
msgstr ""
#: plugin.py:295
#: plugin.py:312
msgid "Stack: [%s]"
msgstr ""
#: plugin.py:299
#: plugin.py:316
#, docstring
msgid ""
"[<number>] <unit> to <other unit>\n"
@ -116,7 +120,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:314
#: plugin.py:346
#, docstring
msgid ""
" [<type>]\n"

View File

@ -1,15 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Gribble\n"
"POT-Creation-Date: 2013-03-02 19:04+CET\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 16:39+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: Gribble\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:57
msgid ""
@ -23,13 +24,19 @@ msgstr ""
#: config.py:61
msgid ""
"Determines whether the message parser\n"
" is enabled for NOTICE messages too."
msgstr "Détermine si le parseur de messages est aussi activé pour les NOTICEs."
#: config.py:64
msgid ""
"Determines whether we keep updating the usage\n"
" count for each regexp, for popularity ranking."
msgstr ""
"Détermine si on met à jour le compteur d'utilisation de chaque expression "
"régulière, pour un classement de popularité"
#: config.py:64
#: config.py:67
msgid ""
"Determines the number of regexps returned\n"
" by the triggerrank command."
@ -37,7 +44,7 @@ msgstr ""
"Détermine le nombre d'expressions régulières retournées par la commande "
"triggerrank"
#: config.py:67
#: config.py:70
msgid ""
"Determines the capability required (if any) to\n"
" vacuum the database."
@ -45,7 +52,7 @@ msgstr ""
"Détermine la capacité requise (s'il y en a une) pour faire un vacuum de la "
"base de données."
#: config.py:70
#: config.py:73
msgid ""
"Determines the\n"
" capabilities required (if any) to manage the regexp database,\n"
@ -60,7 +67,7 @@ msgstr ""
"par canal. Notez que l'absence de toute anti-capacité explicite signifit que "
"l'utilisateur peut le faire."
#: config.py:77
#: config.py:80
msgid ""
"Determines the separator used between regexps when\n"
" shown by the list command."
@ -68,13 +75,13 @@ msgstr ""
"Détermine le séparateur utilisé entre les expressions régulières affichées "
"par la commande list."
#: config.py:80
#: config.py:83
msgid ""
"Determines the maximum number of triggers in\n"
" one message. Set this to 0 to allow an infinite number of triggers."
msgstr ""
msgstr "."
#: plugin.py:75
#: plugin.py:72
msgid ""
"This plugin can set regexp triggers to activate the bot.\n"
" Use 'add' command to add regexp trigger, 'remove' to remove."
@ -82,25 +89,25 @@ msgstr ""
"Ce plugin peut définir les triggers pour activer le bot. Utilisez la "
"commande 'add' pour ajouter un trigger et 'remove' pour en retirer un."
#: plugin.py:83
#: plugin.py:80
msgid "Create the database and connect to it."
msgstr ""
msgstr "."
#: plugin.py:106
#: plugin.py:103
msgid "Use this to get a database for a specific channel."
msgstr ""
msgstr "."
#: plugin.py:130
#: plugin.py:127
msgid "Run a command from message, as if command was sent over IRC."
msgstr ""
msgstr "."
#: plugin.py:138
#: plugin.py:135
msgid ""
"Check if the user has any of the required capabilities to manage\n"
" the regexp database."
msgstr ""
msgstr "."
#: plugin.py:190
#: plugin.py:195
msgid ""
"[<channel>|global] <regexp> <action>\n"
"\n"
@ -117,15 +124,15 @@ msgstr ""
"régulière>.<canal> n'est nécessaire que si le message n'est pas envoyé sur "
"le canal lui-même."
#: plugin.py:212
#: plugin.py:217
msgid "Invalid python regexp: %s"
msgstr "Expression régulière Python invalide : %s"
#: plugin.py:224
#: plugin.py:229
msgid "That trigger is locked."
msgstr "Ce trigger est bloqué."
#: plugin.py:230
#: plugin.py:235
msgid ""
"[<channel>|global] [--id] <regexp>]\n"
"\n"
@ -141,15 +148,15 @@ msgstr ""
"des déclencheurs. Si l'option --id est spécifiée, l'id de l'<expression "
"régulière> sera récupéré, et non le contenu."
#: plugin.py:252 plugin.py:282 plugin.py:305 plugin.py:333 plugin.py:363
#: plugin.py:257 plugin.py:287 plugin.py:310 plugin.py:338 plugin.py:368
msgid "There is no such regexp trigger."
msgstr "Cette expression régulière n'existe pas."
#: plugin.py:256
#: plugin.py:261
msgid "This regexp trigger is locked."
msgstr "Cette expression régulière est verrouillée"
#: plugin.py:268
#: plugin.py:273
msgid ""
"[<channel>|global] <regexp>\n"
"\n"
@ -165,7 +172,7 @@ msgstr ""
"supprimer ou la modifier. <canal> n'est nécessaire que si le message n'est "
"pas envoyé sur le canal lui-même."
#: plugin.py:291
#: plugin.py:296
msgid ""
"[<channel>|global] <regexp>\n"
"\n"
@ -181,7 +188,7 @@ msgstr ""
"la supprimer ou la modifier. <canal> n'est nécessaire que si le message "
"n'est pas envoyé sur le canal lui-même."
#: plugin.py:314
#: plugin.py:319
msgid ""
"[<channel>|global] [--id] <regexp>\n"
"\n"
@ -198,7 +205,7 @@ msgstr ""
"déclencheurs. Si l'option --id est spécifiée, l'id de l'<expression "
"régulière> sera récupéré, et non le contenu."
#: plugin.py:343
#: plugin.py:348
msgid ""
"[<channel>|global] [--id] <regexp>\n"
"\n"
@ -215,7 +222,7 @@ msgstr ""
"données des déclencheurs. Si l'option --id est spécifiée, l'id de "
"l'<expression régulière> sera récupéré, et non le contenu."
#: plugin.py:366
#: plugin.py:371
msgid ""
"The regexp id is %d, regexp is \"%s\", and action is \"%s\". It was added by "
"user %s on %s, has been triggered %d times, and is %s."
@ -224,15 +231,15 @@ msgstr ""
"l'action est \"%s\". Elle a été ajoutée par l'utilisateur %s le %s, et a été "
"utilisée %d fois, et est %s"
#: plugin.py:375
#: plugin.py:380
msgid "locked"
msgstr "verouillée"
#: plugin.py:375
#: plugin.py:380
msgid "not locked"
msgstr "non verrouillée"
#: plugin.py:382
#: plugin.py:387
msgid ""
"[<channel>|global]\n"
"\n"
@ -247,11 +254,11 @@ msgstr ""
"Liste les expressions régulières présentes dans la base de données. <canal> "
"n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:395 plugin.py:421
#: plugin.py:400 plugin.py:426
msgid "There are no regexp triggers in the database."
msgstr "Il n'y a pas d'expression régulière dans ma base de données."
#: plugin.py:405
#: plugin.py:410
msgid ""
"[<channel>|global]\n"
"\n"
@ -268,7 +275,7 @@ msgstr ""
"plugins.MessageParser.rankListLength. <canal> n'est nécessaire que si le "
"message n'est pas envoyé sur le canal lui-même."
#: plugin.py:429
#: plugin.py:434
msgid ""
"[<channel>|global]\n"
"\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,70 +1,102 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2012-07-30 11:30+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 16:39+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
#: config.py:45
msgid ""
"Determines how many messages the bot\n"
" will issue when using the 'more' command."
msgstr ""
"Détermine combien de message le bot enverra lorsque lon utilise la commande "
 more »."
#: config.py:48
msgid ""
"Determines whether the bot will list private\n"
" plugins with the list command if given the --private switch. If this is\n"
" plugins with the list command if given the --private switch. If this "
"is\n"
" disabled, non-owner users should be unable to see what private plugins\n"
" are loaded."
msgstr "Détermine si le bot listera les plugins privés dans la commande 'list', si l'option --private est donné. Si cette variable est désactivée, les utilisateurs non-owner ne pourront pas voir quels plugins privés sont chargés."
msgstr ""
"Détermine si le bot listera les plugins privés dans la commande 'list', si "
"l'option --private est donné. Si cette variable est désactivée, les "
"utilisateurs non-owner ne pourront pas voir quels plugins privés sont "
"chargés."
#: config.py:50
#: config.py:53
msgid ""
"Determines whether the bot will list unloaded\n"
" plugins with the list command if given the --unloaded switch. If this is\n"
" plugins with the list command if given the --unloaded switch. If this "
"is\n"
" disabled, non-owner users should be unable to see what unloaded plugins\n"
" are available."
msgstr "Détermine si le bot listera les plugins déchargés dans la commande 'list', si l'option --unloaded est donné. Si cette variable est désactivée, les utilisateurs non-owner ne pourront pas voir quels plugins déchargés sont présents."
msgstr ""
"Détermine si le bot listera les plugins déchargés dans la commande 'list', "
"si l'option --unloaded est donné. Si cette variable est désactivée, les "
"utilisateurs non-owner ne pourront pas voir quels plugins déchargés sont "
"présents."
#: config.py:55
#: config.py:58
msgid ""
"Determines the format string for\n"
" timestamps in the Misc.last command. Refer to the Python documentation\n"
" for the time module to see what formats are accepted. If you set this\n"
" variable to the empty string, the timestamp will not be shown."
msgstr "Détermine la chaîne de formattage pour les timestamps de la commande Misc.last. Référez-vous à la documentation de Python sur le module 'time' pour voir quels formats sont acceptés. Si vous définissez cette variable pour être une chaîne vide, le timestamp ne sera pas affiché."
msgstr ""
"Détermine la chaîne de formattage pour les timestamps de la commande Misc."
"last. Référez-vous à la documentation de Python sur le module 'time' pour "
"voir quels formats sont acceptés. Si vous définissez cette variable pour "
"être une chaîne vide, le timestamp ne sera pas affiché."
#: config.py:62
#: config.py:65
msgid ""
"Determines whether or not\n"
" the timestamp will be included in the output of last when it is part of a\n"
" the timestamp will be included in the output of last when it is part of "
"a\n"
" nested command"
msgstr "Détermine si le timestamp sera inclu dans la sortie de 'last' lorsqu'il est dans une commande imbriquée."
msgstr ""
"Détermine si le timestamp sera inclu dans la sortie de 'last' lorsqu'il est "
"dans une commande imbriquée."
#: config.py:66
#: config.py:69
msgid ""
"Determines whether or not the\n"
" nick will be included in the output of last when it is part of a nested\n"
" command"
msgstr "Détermine si le nick est inclu dans la sortie de 'last' lorsqu'il est dans une commande imbriquée."
msgstr ""
"Détermine si le nick est inclu dans la sortie de 'last' lorsqu'il est dans "
"une commande imbriquée."
#: plugin.py:105
msgid "You've given me %s invalid commands within the last minute; I'm now ignoring you for %s."
msgstr "Vous m'avez donné %s commandes invalides dans la dernière minute, je vous ignore maitenant pendant %s."
#: plugin.py:112
msgid ""
"You've given me %s invalid commands within the last %i seconds; I'm now "
"ignoring you for %s."
msgstr ""
"Vous m'avez donné %s commandes invalides durant les %i dernières secondes, "
"je vous ignore maintenant pendant %s."
#: plugin.py:144
msgid "The %q plugin is loaded, but there is no command named %q in it. Try \"list %s\" to see the commands in the %q plugin."
msgstr "Le plugin %q est chargé, mais il n'a pas de commande appelée %q. Essayez \"list %s\" pour voir les commandes dans le plugin %q."
#: plugin.py:154
msgid ""
"The %q plugin is loaded, but there is no command named %q in it. Try \"list "
"%s\" to see the commands in the %q plugin."
msgstr ""
"Le plugin %q est chargé, mais il n'a pas de commande appelée %q. Essayez "
"\"list %s\" pour voir les commandes dans le plugin %q."
#: plugin.py:150
#: plugin.py:153
#: plugin.py:160 plugin.py:163
msgid "command"
msgstr "commande"
#: plugin.py:170
#: plugin.py:180
msgid ""
"[--private] [--unloaded] [<plugin>]\n"
"\n"
@ -76,25 +108,36 @@ msgid ""
msgstr ""
"[--private] [--unloaded] [<plugin>]\n"
"\n"
"Liste les commandes disponibles dans le plugin donné. Si aucun plugin n'est donné, liste les plugins publics. Si --private est donné, il liste les plugins privés. Si --unloaded est donné, il liste les plugins disponibles qui ne sont pas chargés."
"Liste les commandes disponibles dans le plugin donné. Si aucun plugin n'est "
"donné, liste les plugins publics. Si --private est donné, il liste les "
"plugins privés. Si --unloaded est donné, il liste les plugins disponibles "
"qui ne sont pas chargés."
#: plugin.py:191
#: plugin.py:201
msgid "--private and --unloaded are uncompatible options."
msgstr "--private et --unloaded ne sont pas des options compatibles."
#: plugin.py:222
#: plugin.py:232
msgid "There are no private plugins."
msgstr "Il n'y a pas de plugin privé."
#: plugin.py:224
#: plugin.py:234
msgid "There are no public plugins."
msgstr "Il n'y a pas de plugin privé."
#: plugin.py:231
msgid "That plugin exists, but has no commands. This probably means that it has some configuration variables that can be changed in order to modify its behavior. Try \"config list supybot.plugins.%s\" to see what configuration variables it has."
msgstr "Ce plugin existe, mais n'a pas de commande. Cela signifie probablement qu'il a des variables de configuration qui peuvent être changés pour modifier son comportement. Essayez \"config list supybot.plugins.%s\" pour voir quelles variables de configuration il a."
#: plugin.py:241
msgid ""
"That plugin exists, but has no commands. This probably means that it has "
"some configuration variables that can be changed in order to modify its "
"behavior. Try \"config list supybot.plugins.%s\" to see what configuration "
"variables it has."
msgstr ""
"Ce plugin existe, mais n'a pas de commande. Cela signifie probablement qu'il "
"a des variables de configuration qui peuvent être changés pour modifier son "
"comportement. Essayez \"config list supybot.plugins.%s\" pour voir quelles "
"variables de configuration il a."
#: plugin.py:243
#: plugin.py:253
msgid ""
"<string>\n"
"\n"
@ -104,33 +147,45 @@ msgid ""
msgstr ""
"<chaîne>\n"
"\n"
"Recherche la <chaîne> dans les commandes actuellement fournies par le bot et retourne une list des commandes contenant cette chaîne."
"Recherche la <chaîne> dans les commandes actuellement fournies par le bot et "
"retourne une list des commandes contenant cette chaîne."
#: plugin.py:262
#: plugin.py:272
msgid "No appropriate commands were found."
msgstr "Aucune commande appropriée n'a été trouvée."
#: plugin.py:267
#: plugin.py:277
msgid ""
"[<plugin>] [<command>]\n"
"\n"
" This command gives a useful description of what <command> does.\n"
" <plugin> is only necessary if the command is in more than one plugin.\n"
" <plugin> is only necessary if the command is in more than one "
"plugin.\n"
"\n"
" You may also want to use the 'list' command to list all available\n"
" plugins and commands.\n"
" "
msgstr ""
"[<plugin>] [<commande>]\n"
"\n"
"Cette commande donne une description utile de ce que fait la <commande>. <plugin> n'est nécessaire que si la commande est présente dans plus d'un plugin."
"Cette commande donne une description utile de ce que fait la <commande>. "
"<plugin> n'est nécessaire que si la commande est présente dans plus d'un "
"plugin.Il se peut que vous vouliez utiliser la commande « list » pour lister "
"tous les plugins et commandes disponibles."
#: plugin.py:277
msgid "That command exists in the %L plugins. Please specify exactly which plugin command you want help with."
msgstr "Cette commande existe dans les plugins %L. Veuillez spécifier dans quel plugin se trouve la commande pour laquelle vous cherchez de l'aide."
#: plugin.py:290
msgid ""
"That command exists in the %L plugins. Please specify exactly which plugin "
"command you want help with."
msgstr ""
"Cette commande existe dans les plugins %L. Veuillez spécifier dans quel "
"plugin se trouve la commande pour laquelle vous cherchez de l'aide."
#: plugin.py:284
#: plugin.py:297
msgid "There is no command %q."
msgstr "Il n'y a pas de commande %q."
#: plugin.py:290
#: plugin.py:303
msgid ""
"takes no arguments\n"
"\n"
@ -141,23 +196,26 @@ msgstr ""
"\n"
"Retourne la version actuelle du bot"
#: plugin.py:306
#: plugin.py:320
msgid "The newest versions available online are %s."
msgstr "Les dernières versions disponibles en ligne sont %s."
#: plugin.py:307
#: plugin.py:321
msgid "%s (in %s)"
msgstr "%s (dans %s)"
#: plugin.py:311
#: plugin.py:325
msgid "I couldn't fetch the newest version from the Limnoria repository."
msgstr "Je ne peux récupérer la dernière version sur le dépôt de Limnoria."
#: plugin.py:313
msgid "The current (running) version of this Supybot is %s. %s"
msgstr "La version de ce Supybot est %s. %s"
#: plugin.py:327
msgid ""
"The current (running) version of this Supybot is %s, running on Python %s. "
"%s"
msgstr ""
"La version actuelle de ce Supybot est %s, fonctionnant sur Python %s. %s"
#: plugin.py:320
#: plugin.py:335
msgid ""
"takes no arguments\n"
"\n"
@ -168,74 +226,116 @@ msgstr ""
"\n"
"Retourne une URL disant où trouver Limnoria."
#: plugin.py:324
#: plugin.py:339
msgid "My source is at https://github.com/ProgVal/Limnoria"
msgstr "Ma source est disponible sur https://github.com/ProgVal/Limnoria"
#: plugin.py:329
#: plugin.py:344
msgid ""
"[<nick>]\n"
"\n"
" If the last command was truncated due to IRC message length\n"
" limitations, returns the next chunk of the result of the last command.\n"
" If <nick> is given, it takes the continuation of the last command from\n"
" limitations, returns the next chunk of the result of the last "
"command.\n"
" If <nick> is given, it takes the continuation of the last command "
"from\n"
" <nick> instead of the person sending this message.\n"
" "
msgstr ""
"[<nick>]\n"
"\n"
"Si la dernière commande était tronquée par les limitations de taille des messages sur IRC, retourne le morceau suivant résultant de la dernière commande. Si le <nick> est donné, continue la dernière commande du <nick> plutôt que de la personne envoyant ce message."
"Si la dernière commande était tronquée par les limitations de taille des "
"messages sur IRC, retourne le morceau suivant résultant de la dernière "
"commande. Si le <nick> est donné, continue la dernière commande du <nick> "
"plutôt que de la personne envoyant ce message."
#: plugin.py:343
#: plugin.py:358
msgid "%s has no public mores."
msgstr "%s n'a pas de 'more' public."
#: plugin.py:346
#: plugin.py:361
msgid "Sorry, I can't find any mores for %s"
msgstr "Désolé, je ne peux trouver de 'more' pour %s"
#: plugin.py:353
#: plugin.py:369
msgid "1 more message"
msgstr "1 autre message"
#: plugin.py:355
#: plugin.py:371
msgid "%i more messages"
msgstr "%i autres messages"
#: plugin.py:359
msgid "You haven't asked me a command; perhaps you want to see someone else's more. To do so, call this command with that person's nick."
msgstr "Vous ne m'avez donné aucune commande. Peut-être que vous voulez voir celle de quelqu'un d'autre. Pour cela, appelez cette commande en ajoutant le nick de cette personne."
#: plugin.py:375
msgid ""
"You haven't asked me a command; perhaps you want to see someone else's "
"more. To do so, call this command with that person's nick."
msgstr ""
"Vous ne m'avez donné aucune commande. Peut-être que vous voulez voir celle "
"de quelqu'un d'autre. Pour cela, appelez cette commande en ajoutant le nick "
"de cette personne."
#: plugin.py:363
#: plugin.py:379
msgid "That's all, there is no more."
msgstr "C'est tout, il n'y a plus de 'more'"
#: plugin.py:373
#: plugin.py:389
msgid ""
"[--{from,in,on,with,without,regexp} <value>] [--nolimit]\n"
"\n"
" Returns the last message matching the given criteria. --from requires\n"
" a nick from whom the message came; --in requires a channel the message\n"
" was sent to; --on requires a network the message was sent on; --with\n"
" requires some string that had to be in the message; --regexp requires\n"
" Returns the last message matching the given criteria. --from "
"requires\n"
" a nick from whom the message came; --in requires a channel the "
"message\n"
" was sent to; --on requires a network the message was sent on; --"
"with\n"
" requires some string that had to be in the message; --regexp "
"requires\n"
" a regular expression the message must match; --nolimit returns all\n"
" the messages that can be found. By default, the channel this command is\n"
" the messages that can be found. By default, the channel this "
"command is\n"
" given in is searched.\n"
" "
msgstr ""
"[--{from,in,on,with,without,regexp} <valeur>] [--nolimit]\n"
"\n"
"Retourne le dernier message correspondant aux critères donnés. --from requiert le nick de la personne qui a envoyé le message ; --in requiert le canal sur lequel a été envoyé le message ; --with requiert une chaîne qui doit être dans le message --regexp requiert une expression régulière à laquelle le message doit correspondre ; --nolimit retourne tous les messages qui peuvent être trouvés. Par défaut, recherche dans les logs du canal sur lequel est envoyée cette commande."
"Retourne le dernier message correspondant aux critères donnés. --from "
"requiert le nick de la personne qui a envoyé le message ; --in requiert le "
"canal sur lequel a été envoyé le message ; --with requiert une chaîne qui "
"doit être dans le message --regexp requiert une expression régulière à "
"laquelle le message doit correspondre ; --nolimit retourne tous les messages "
"qui peuvent être trouvés. Par défaut, recherche dans les logs du canal sur "
"lequel est envoyée cette commande."
#: plugin.py:475
#: plugin.py:484
msgid "The regular expression timed out."
msgstr "L'expression régulière a pris trop de temps à être évaluée."
#: plugin.py:488
msgid "I couldn't find a message matching that criteria in my history of %s messages."
msgstr "Je ne peux trouver de message correspondant à ce critère dans mon historique de %s messages."
#: plugin.py:497
msgid ""
"I couldn't find a message matching that criteria in my history of %s "
"messages."
msgstr ""
"Je ne peux trouver de message correspondant à ce critère dans mon historique "
"de %s messages."
#: plugin.py:503
#: plugin.py:516
msgid "Hey, just give the command. No need for the tell."
msgstr ""
"Oh, contentes-toi de me donner la commande. Pas besoin d'utiliser 'tell'."
#: plugin.py:521
msgid "You just told me, why should I tell myself?"
msgstr "Vous venez de me le dire, pourquoi devrais-je me le dire moi-même ?"
#: plugin.py:526
msgid "I haven't seen %s, I'll let you do the telling."
msgstr "Je n'ai pas vu %s, je vous laisse lui dire."
#: plugin.py:531
msgid "%s wants me to tell you: %s"
msgstr "%s veut que je vous dise : %s"
#: plugin.py:537
msgid ""
"<nick> <text>\n"
"\n"
@ -247,23 +347,20 @@ msgstr ""
"\n"
"Dit le <texte> au <nick>. Utile si vous utilisez des commandes imbriquées."
#: plugin.py:513
msgid "Hey, just give the command. No need for the tell."
msgstr "Oh, contentes-toi de me donner la commande. Pas besoin d'utiliser 'tell'."
#: plugin.py:547
msgid ""
"<nick> <text>\n"
"\n"
" Tells the <nick> whatever <text> is, in a notice. Use nested\n"
" commands to your benefit here.\n"
" "
msgstr ""
"<nick> <texte>\n"
"\n"
"Dit le <texte> à <nick>, dans une notice. Utile si vous utilisez des "
"commandes imbriquées."
#: plugin.py:518
msgid "You just told me, why should I tell myself?"
msgstr "Vous venez de me le dire, pourquoi devrais-je me le dire moi-même ?"
#: plugin.py:523
msgid "I haven't seen %s, I'll let you do the telling."
msgstr "Je n'ai pas vu %s, je vous laisse lui dire."
#: plugin.py:528
msgid "%s wants me to tell you: %s"
msgstr "%s veut que je vous dise : %s"
#: plugin.py:535
#: plugin.py:557
msgid ""
"takes no arguments\n"
"\n"
@ -274,26 +371,27 @@ msgstr ""
"\n"
"Vérifie si le bot est encore en vie."
#: plugin.py:539
#: plugin.py:561
msgid "pong"
msgstr "pong"
#: plugin.py:543
#: plugin.py:565
msgid ""
"[<channel>] <beginning> [--match-case]\n"
"\n"
" Returns the nick of someone on the channel whose nick begins with the\n"
" Returns the nick of someone on the channel whose nick begins with "
"the\n"
" given <beginning>.\n"
" <channel> defaults to the current channel."
msgstr ""
"[<canal>] <lettres> [--match-case]\n"
"Retourne le nick de quelqu'un dans le salon dont le nick commence par les <lettres> indiquées. <channel> correspond par défaut au salon actuel."
"Retourne le nick de quelqu'un dans le salon dont le nick commence par les "
"<lettres> indiquées. <channel> correspond par défaut au salon actuel."
#: plugin.py:549
#: plugin.py:571
msgid "I'm not even in %s."
msgstr "Je ne suis pas dans %s."
#: plugin.py:561
#: plugin.py:583
msgid "No such nick."
msgstr "Ce nick n'existe pas."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -143,23 +143,23 @@ msgid ""
" "
msgstr ""
#: plugin.py:318
#: plugin.py:320
msgid "The newest versions available online are %s."
msgstr ""
#: plugin.py:319
#: plugin.py:321
msgid "%s (in %s)"
msgstr ""
#: plugin.py:323
#: plugin.py:325
msgid "I couldn't fetch the newest version from the Limnoria repository."
msgstr ""
#: plugin.py:325
#: plugin.py:327
msgid "The current (running) version of this Supybot is %s, running on Python %s. %s"
msgstr ""
#: plugin.py:333
#: plugin.py:335
#, docstring
msgid ""
"takes no arguments\n"
@ -168,11 +168,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:337
#: plugin.py:339
msgid "My source is at https://github.com/ProgVal/Limnoria"
msgstr ""
#: plugin.py:342
#: plugin.py:344
#, docstring
msgid ""
"[<nick>]\n"
@ -184,31 +184,31 @@ msgid ""
" "
msgstr ""
#: plugin.py:356
#: plugin.py:358
msgid "%s has no public mores."
msgstr ""
#: plugin.py:359
#: plugin.py:361
msgid "Sorry, I can't find any mores for %s"
msgstr ""
#: plugin.py:367
#: plugin.py:369
msgid "1 more message"
msgstr ""
#: plugin.py:369
#: plugin.py:371
msgid "%i more messages"
msgstr ""
#: plugin.py:373
#: plugin.py:375
msgid "You haven't asked me a command; perhaps you want to see someone else's more. To do so, call this command with that person's nick."
msgstr ""
#: plugin.py:377
#: plugin.py:379
msgid "That's all, there is no more."
msgstr ""
#: plugin.py:387
#: plugin.py:389
#, docstring
msgid ""
"[--{from,in,on,with,without,regexp} <value>] [--nolimit]\n"
@ -223,15 +223,31 @@ msgid ""
" "
msgstr ""
#: plugin.py:482
#: plugin.py:484
msgid "The regular expression timed out."
msgstr ""
#: plugin.py:495
#: plugin.py:497
msgid "I couldn't find a message matching that criteria in my history of %s messages."
msgstr ""
#: plugin.py:510
#: plugin.py:516
msgid "Hey, just give the command. No need for the tell."
msgstr ""
#: plugin.py:521
msgid "You just told me, why should I tell myself?"
msgstr ""
#: plugin.py:526
msgid "I haven't seen %s, I'll let you do the telling."
msgstr ""
#: plugin.py:531
msgid "%s wants me to tell you: %s"
msgstr ""
#: plugin.py:537
#, docstring
msgid ""
"<nick> <text>\n"
@ -241,23 +257,17 @@ msgid ""
" "
msgstr ""
#: plugin.py:520
msgid "Hey, just give the command. No need for the tell."
#: plugin.py:547
#, docstring
msgid ""
"<nick> <text>\n"
"\n"
" Tells the <nick> whatever <text> is, in a notice. Use nested\n"
" commands to your benefit here.\n"
" "
msgstr ""
#: plugin.py:525
msgid "You just told me, why should I tell myself?"
msgstr ""
#: plugin.py:530
msgid "I haven't seen %s, I'll let you do the telling."
msgstr ""
#: plugin.py:535
msgid "%s wants me to tell you: %s"
msgstr ""
#: plugin.py:542
#: plugin.py:557
#, docstring
msgid ""
"takes no arguments\n"
@ -266,11 +276,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:546
#: plugin.py:561
msgid "pong"
msgstr ""
#: plugin.py:550
#: plugin.py:565
#, docstring
msgid ""
"[<channel>] <beginning> [--match-case]\n"
@ -280,11 +290,11 @@ msgid ""
" <channel> defaults to the current channel."
msgstr ""
#: plugin.py:556
#: plugin.py:571
msgid "I'm not even in %s."
msgstr ""
#: plugin.py:568
#: plugin.py:583
msgid "No such nick."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-03-02 19:04+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -28,38 +28,38 @@ msgid ""
" when the 'most' command is called."
msgstr ""
#: plugin.py:289
#: plugin.py:285
#, docstring
msgid ""
"Add the help for \"@help MoobotFactoids\" here (assuming you don't implement a MoobotFactoids\n"
" command). This should describe *how* to use this plugin."
msgstr ""
#: plugin.py:346
#: plugin.py:342
msgid "%s is %s"
msgstr ""
#: plugin.py:365
#: plugin.py:361
msgid "Factoid %q is locked."
msgstr ""
#: plugin.py:372
#: plugin.py:368
msgid "Factoid %q not found."
msgstr ""
#: plugin.py:382
#: plugin.py:378
msgid "Missing an 'is' or '_is_'."
msgstr ""
#: plugin.py:398
#: plugin.py:394
msgid "Factoid %q already exists."
msgstr ""
#: plugin.py:432
#: plugin.py:428
msgid "%s, or %s"
msgstr ""
#: plugin.py:453
#: plugin.py:449
#, docstring
msgid ""
"[<channel>] <factoid key>\n"
@ -70,7 +70,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:466
#: plugin.py:462
#, docstring
msgid ""
"[<channel>] <factoid key>\n"
@ -81,39 +81,39 @@ msgid ""
" "
msgstr ""
#: plugin.py:477 plugin.py:517
#: plugin.py:473 plugin.py:513
msgid "No such factoid: %q"
msgstr ""
#: plugin.py:486
#: plugin.py:482
msgid "Created by %s on %s."
msgstr ""
#: plugin.py:492
#: plugin.py:488
msgid " Last modified by %s on %s."
msgstr ""
#: plugin.py:500
#: plugin.py:496
msgid " Last requested by %s on %s, requested %n."
msgstr ""
#: plugin.py:507
#: plugin.py:503
msgid " Locked by %s on %s."
msgstr ""
#: plugin.py:522
#: plugin.py:518
msgid "Factoid %q is already locked."
msgstr ""
#: plugin.py:525
#: plugin.py:521
msgid "Factoid %q is not locked."
msgstr ""
#: plugin.py:535
#: plugin.py:531
msgid "Cannot %s someone else's factoid unless you are an admin."
msgstr ""
#: plugin.py:547
#: plugin.py:543
#, docstring
msgid ""
"[<channel>] <factoid key>\n"
@ -124,7 +124,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:558
#: plugin.py:554
#, docstring
msgid ""
"[<channel>] <factoid key>\n"
@ -135,7 +135,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:569
#: plugin.py:565
#, docstring
msgid ""
"[<channel>] {popular|authored|recent}\n"
@ -148,51 +148,51 @@ msgid ""
" "
msgstr ""
#: plugin.py:591
#: plugin.py:587
msgid "author"
msgstr ""
#: plugin.py:593
#: plugin.py:589
msgid "authors"
msgstr ""
#: plugin.py:594
#: plugin.py:590
msgid "Most prolific %s: %L"
msgstr ""
#: plugin.py:596 plugin.py:608
#: plugin.py:592 plugin.py:604
msgid "There are no factoids in my database."
msgstr ""
#: plugin.py:603
#: plugin.py:599
msgid "latest factoid"
msgstr ""
#: plugin.py:605
#: plugin.py:601
msgid "latest factoids"
msgstr ""
#: plugin.py:606
msgid "%s: %L"
#: plugin.py:602
msgid "%i %s: %L"
msgstr ""
#: plugin.py:615
#: plugin.py:611
msgid "requested factoid"
msgstr ""
#: plugin.py:617
#: plugin.py:613
msgid "requested factoids"
msgstr ""
#: plugin.py:618
msgid "Top %s: %L"
#: plugin.py:614
msgid "Top %i %s: %L"
msgstr ""
#: plugin.py:620
#: plugin.py:616
msgid "No factoids have been requested from my database."
msgstr ""
#: plugin.py:624
#: plugin.py:620
#, docstring
msgid ""
"[<channel>] <author name>\n"
@ -204,15 +204,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:637
#: plugin.py:633
msgid "No factoids by %q found."
msgstr ""
#: plugin.py:640
#: plugin.py:636
msgid "Author search for %q (%i found): %L"
msgstr ""
#: plugin.py:647
#: plugin.py:643
#, docstring
msgid ""
"[<channel>] <text>\n"
@ -223,15 +223,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:655
#: plugin.py:651
msgid "No keys matching %q found."
msgstr ""
#: plugin.py:662
#: plugin.py:658
msgid "Key search for %q (%i found): %L"
msgstr ""
#: plugin.py:669
#: plugin.py:665
#, docstring
msgid ""
"[<channel>] <text>\n"
@ -242,15 +242,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:677
#: plugin.py:673
msgid "No values matching %q found."
msgstr ""
#: plugin.py:680
#: plugin.py:676
msgid "Value search for %q (%i found): %L"
msgstr ""
#: plugin.py:687
#: plugin.py:683
#, docstring
msgid ""
"[<channel>] <factoid key>\n"
@ -260,7 +260,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:700
#: plugin.py:696
#, docstring
msgid ""
"[<channel>]\n"
@ -271,7 +271,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:708
#: plugin.py:704
msgid "No factoids in the database."
msgstr ""

View File

@ -1,46 +1,49 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2012-07-04 19:47+CEST\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 22:36+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: plugin.py:57
#: plugin.py:58
msgid ""
"[--ssl] <network> [<host[:port]>] [<password>]\n"
"\n"
" Connects to another network (which will be represented by the name\n"
" provided in <network>) at <host:port>. If port is not provided, it\n"
" defaults to 6667, the default port for IRC. If password is\n"
" provided, it will be sent to the server in a PASS command. If --ssl is\n"
" provided, it will be sent to the server in a PASS command. If --ssl "
"is\n"
" provided, an SSL connection will be attempted.\n"
" "
msgstr ""
"[--ssl] <nom> [<hôte[:port]>] [<mot de passe>]\n"
"\n"
"Se connecter à un autre réseau (représenté par le <nom>) au <hôte:port>. Si le port n'est pas fourni, il s'agit du 6667, celui par défaut pour IRC. Si le <mot de passe> est fourni, l'envoie au serveur par la commande PASS. Si --ssl est fourni, une connexion SSL sera requise."
"Se connecter à un autre réseau (représenté par le <nom>) au <hôte:port>. Si "
"le port n'est pas fourni, il s'agit du 6667, celui par défaut pour IRC. Si "
"le <mot de passe> est fourni, l'envoie au serveur par la commande PASS. Si --"
"ssl est fourni, une connexion SSL sera requise."
#: plugin.py:67
#: plugin.py:68
msgid "I'm already connected to %s."
msgstr "Je suis déjà connecté à %s."
#: plugin.py:87
#: plugin.py:88
msgid "A server must be provided if the network is not already registered."
msgstr "Un serveur doit être fourni si le réseau n'est pas déjà enregistré."
#: plugin.py:95
#: plugin.py:96
msgid "Connection to %s initiated."
msgstr "Connexion à %s initialisée."
#: plugin.py:102
#: plugin.py:103
msgid ""
"[<network>] [<quit message>]\n"
"\n"
@ -52,28 +55,35 @@ msgid ""
msgstr ""
"[<réseau>] [<message de quit>]\n"
"\n"
"Se déconnecte du <réseau>. Si le <message de quit> est fourni, quitte le réseau avec ce message. Le <réseau> n'est nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
"Se déconnecte du <réseau>. Si le <message de quit> est fourni, quitte le "
"réseau avec ce message. Le <réseau> n'est nécessaire que s'il ne s'agit pas "
"du réseau sur lequel la commande est envoyée."
#: plugin.py:114
#: plugin.py:115
msgid "Disconnection to %s initiated."
msgstr "Déconnexion à %s initialisée."
#: plugin.py:120
#: plugin.py:121
msgid ""
"[<network>] [<quit message>]\n"
"\n"
" Disconnects and then reconnects to <network>. If no network is given,\n"
" disconnects and then reconnects to the network the command was given\n"
" Disconnects and then reconnects to <network>. If no network is "
"given,\n"
" disconnects and then reconnects to the network the command was "
"given\n"
" on. If no quit message is given, uses the configured one\n"
" (supybot.plugins.Owner.quitMsg) or the nick of the person giving the\n"
" (supybot.plugins.Owner.quitMsg) or the nick of the person giving "
"the\n"
" command.\n"
" "
msgstr ""
"[<réseau>] [<message de quit>]\n"
"\n"
"Se déconnecte du <réseau> et s'y reconnecte. Si le <message de quit> est fourni, quitte le réseau avec ce message. Le <réseau> n'est nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
"Se déconnecte du <réseau> et s'y reconnecte. Si le <message de quit> est "
"fourni, quitte le réseau avec ce message. Le <réseau> n'est nécessaire que "
"s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
#: plugin.py:137
#: plugin.py:138
msgid ""
"<network> <command> [<arg> ...]\n"
"\n"
@ -84,62 +94,72 @@ msgstr ""
"\n"
"Envoie la <commande> au bot (avec les arguments) sur le <réseau>."
#: plugin.py:210
#: plugin.py:213
msgid "is an op on %L"
msgstr "est op sur %L"
#: plugin.py:212
#: plugin.py:215
msgid "is a halfop on %L"
msgstr "est halfop sur %L"
#: plugin.py:214
#: plugin.py:217
msgid "is voiced on %L"
msgstr "est voicé sur %L"
#: plugin.py:217
#: plugin.py:220
msgid "is also on %L"
msgstr "est aussi sur %L"
#: plugin.py:219
#: plugin.py:222
msgid "is on %L"
msgstr "est sur %L"
#: plugin.py:221
#: plugin.py:225
msgid "isn't on any non-secret channels"
msgstr "n'est sur aucun canal non secret"
#: plugin.py:228
#: plugin.py:229
#: plugin.py:233
#: plugin.py:234 plugin.py:235 plugin.py:241
msgid "<unknown>"
msgstr "<inconnu>"
#: plugin.py:240
#: plugin.py:248
msgid " identified"
msgstr " identifié"
#: plugin.py:245
#: plugin.py:254
msgid "%s (%s) has been%s on server %s since %s (idle for %s) and %s.%s"
msgstr "%s (%s) a été%s sur le serveur %s depuis %s (idle depuis %s) et %s.%s"
#: plugin.py:258
msgid "%s (%s) has been%s on server %s and disconnect on %s."
msgstr "%s (%s) a été%s sur le serveur %s puis cest déconnecté à %s."
#: plugin.py:272
msgid "There is no %s on %s."
msgstr "Il n'y a pas de %s sur %s."
#: plugin.py:264
#: plugin.py:274
msgid "There was no %s on %s."
msgstr "Il n'y a pas eu de %s sur %s."
#: plugin.py:282 plugin.py:298
msgid ""
"[<network>] <nick>\n"
"\n"
" Returns the WHOIS response <network> gives for <nick>. <network> is\n"
" only necessary if the network is different than the network the command\n"
" Returns the WHOIS response <network> gives for <nick>. <network> "
"is\n"
" only necessary if the network is different than the network the "
"command\n"
" is sent on.\n"
" "
msgstr ""
"[<réseau>] <nick>\n"
"\n"
"Retourne les réponses WHOIS du <réseau> pour le <nick>. Le <réseau> n'est nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
"Retourne les réponses WHOIS du <réseau> pour le <nick>. Le <réseau> n'est "
"nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est "
"envoyée."
#: plugin.py:280
#: plugin.py:314
msgid ""
"takes no arguments\n"
"\n"
@ -150,41 +170,46 @@ msgstr ""
" \n"
"Retourne la liste des réseaux auxquels le bot est actuellement connecté."
#: plugin.py:293
#: plugin.py:327
msgid "%.2f seconds."
msgstr "%.2f secondes"
#: plugin.py:297
#: plugin.py:331
msgid ""
"[<network>]\n"
"\n"
" Returns the current latency to <network>. <network> is only necessary\n"
" if the message isn't sent on the network to which this command is to\n"
" Returns the current latency to <network>. <network> is only "
"necessary\n"
" if the message isn't sent on the network to which this command is "
"to\n"
" apply.\n"
" "
msgstr ""
"[<réseau>]\n"
"\n"
"Retourne la latence actuelle du <réseau>. Le <réseau> n'est nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
"Retourne la latence actuelle du <réseau>. Le <réseau> n'est nécessaire que "
"s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
#: plugin.py:303
#: plugin.py:337
msgid "Latency check (from %s)."
msgstr "Vérification de lance (de %s)."
#: plugin.py:311
#: plugin.py:345
msgid ""
"[<network>]\n"
"\n"
" Returns the current network driver for <network>. <network> is only\n"
" Returns the current network driver for <network>. <network> is "
"only\n"
" necessary if the message isn't sent on the network to which this\n"
" command is to apply.\n"
" "
msgstr ""
"[<réseau>]\n"
"\n"
"Retourne le 'driver' actuel pour le <réseau>. Le <réseau> n'est nécessaire que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
"Retourne le 'driver' actuel pour le <réseau>. Le <réseau> n'est nécessaire "
"que s'il ne s'agit pas du réseau sur lequel la commande est envoyée."
#: plugin.py:322
#: plugin.py:356
msgid ""
"[<network>]\n"
" \n"
@ -195,7 +220,6 @@ msgstr ""
"\n"
"Indique depuis combien de temps la connexion est établie."
#: plugin.py:329
#: plugin.py:363
msgid "I've been connected to %s for %s."
msgstr "Je suis connecté à %s depuis %s."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 16:53+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 16:58+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 18:28+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:84
#: plugin.py:87
#, docstring
msgid ""
"[<nick>]\n"
@ -25,7 +25,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:226
#: plugin.py:230
msgid "The \"lame nick-o-meter\" reading for \"%s\" is %s%%."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-29 13:54+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -65,7 +65,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:324
#: plugin.py:326
#, docstring
msgid ""
"[--{old,sent}] [--{from,to} <user>]\n"
@ -77,7 +77,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:365
#: plugin.py:367
#, docstring
msgid ""
"takes no arguments\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,7 +15,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
#: plugin.py:273
#: plugin.py:274
#, docstring
msgid ""
"<text>\n"
@ -25,7 +25,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:283
#: plugin.py:284
#, docstring
msgid ""
"<text>\n"
@ -35,7 +35,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:298
#: plugin.py:299
#, docstring
msgid ""
"[--remove] <command> [<plugin>]\n"
@ -47,7 +47,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:336
#: plugin.py:337
#, docstring
msgid ""
"<string to be sent to the server>\n"
@ -56,7 +56,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:350
#: plugin.py:351
#, docstring
msgid ""
"[<text>]\n"
@ -67,7 +67,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:366
#: plugin.py:367
#, docstring
msgid ""
"takes no arguments\n"
@ -77,7 +77,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:376
#: plugin.py:377
#, docstring
msgid ""
"[<level>]\n"
@ -89,7 +89,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:415
#: plugin.py:416
#, docstring
msgid ""
"[--deprecated] <plugin>\n"
@ -101,7 +101,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:450
#: plugin.py:451
#, docstring
msgid ""
"<plugin>\n"
@ -111,7 +111,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:479
#: plugin.py:482
#, docstring
msgid ""
"<plugin>\n"
@ -122,7 +122,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:503
#: plugin.py:506
#, docstring
msgid ""
"{add|remove} <capability>\n"
@ -133,7 +133,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:528
#: plugin.py:531
#, docstring
msgid ""
"[<plugin>] <command>\n"
@ -146,7 +146,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:555
#: plugin.py:558
#, docstring
msgid ""
"[<plugin>] <command>\n"
@ -157,7 +157,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:574
#: plugin.py:577
#, docstring
msgid ""
"<plugin> <command> <new name>\n"
@ -166,7 +166,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:591
#: plugin.py:594
#, docstring
msgid ""
"<plugin>\n"
@ -176,7 +176,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:604
#: plugin.py:607
#, docstring
msgid ""
"takes no argument\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -7,27 +7,55 @@ msgid ""
msgstr ""
"Project-Id-Version: limnoria\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-07-29 11:54+CEST\n"
"PO-Revision-Date: 2012-07-29 12:01+0100\n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"POT-Creation-Date: 2014-01-21 16:39+CET\n"
"PO-Revision-Date: 2014-01-22 07:52+0100\n"
"Last-Translator: \n"
"Language-Team: French <fr@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-04-19 19:44+0000\n"
"X-Generator: Launchpad (build 15120)\n"
"X-Generator: Poedit 1.5.4\n"
#: plugin.py:235
#: plugin.py:171
msgid ""
"Plugin is probably not compatible with your Python version (3.x) but could "
"not be converted because 2to3 is not installed."
msgstr ""
"Ce plugin nest probablement pas compatible avec votre version de Python (3."
"x), mais il na pas pu être converti car 2to3 nest pas installé."
#: plugin.py:178
msgid ""
"Plugin was designed for Python 2, but an attempt to convert it to Python 3 "
"has been made. There is no garantee it will work, though."
msgstr ""
"Ce plugin a été conçu pour Python 2, mais une tentative de conversion à "
"Python 3 a été faite. Cependant, il ny a pas de garantie que le plugin "
"fonctionnera."
#: plugin.py:182
msgid "Plugin successfully installed."
msgstr "Plugin installé avec succès."
#: plugin.py:299
msgid ""
"This plugin allows you to install unofficial plugins from\n"
" multiple repositories easily. Use the \"repolist\" command to see list of\n"
" multiple repositories easily. Use the \"repolist\" command to see list "
"of\n"
" available repositories and \"repolist <repository>\" to list plugins, \n"
" which are available in that repository. When you want to install plugin,\n"
" which are available in that repository. When you want to install "
"plugin,\n"
" just run command \"install <repository> <plugin>\"."
msgstr "Ce plugin vous permet d'installer des plugins non officiels depuis de multiples dépôts facilement. Utilisez la commande \"repolist\" pour avoir une liste des dépôts disponibles et \"repolist <dépôt>\" pour lister les plugins qui sont disponibles dans le dépôt. Lorsque vous voulez installer un plugin, utilisez simplement la commande \"install <dépôt> <plugin>\"."
msgstr ""
"Ce plugin vous permet d'installer des plugins non officiels depuis de "
"multiples dépôts facilement. Utilisez la commande \"repolist\" pour avoir "
"une liste des dépôts disponibles et \"repolist <dépôt>\" pour lister les "
"plugins qui sont disponibles dans le dépôt. Lorsque vous voulez installer un "
"plugin, utilisez simplement la commande \"install <dépôt> <plugin>\"."
#: plugin.py:245
#: plugin.py:309
msgid ""
"[<repository>]\n"
"\n"
@ -37,24 +65,22 @@ msgid ""
msgstr ""
"[<dépôt>]\n"
"\n"
"Affiche une liste des plugins du <dépôt>. Si <dépôt> n'est pas donné, retourne une liste des dépôts disponibles."
"Affiche une liste des plugins du <dépôt>. Si <dépôt> n'est pas donné, "
"retourne une liste des dépôts disponibles."
#: plugin.py:253
#: plugin.py:264
#: plugin.py:317 plugin.py:328
msgid ", "
msgstr ", "
#: plugin.py:255
#: plugin.py:274
#: plugin.py:299
#: plugin.py:319 plugin.py:338 plugin.py:363
msgid "This repository does not exist or is not known by this bot."
msgstr "Ce dépôt n'existe pas ou n'est pas connu de ce bot."
#: plugin.py:262
#: plugin.py:326
msgid "No plugin found in this repository."
msgstr "Aucun plugin trouvé dans ce dépôt."
#: plugin.py:269
#: plugin.py:333
msgid ""
"<repository> <plugin>\n"
"\n"
@ -64,12 +90,11 @@ msgstr ""
"\n"
"Télécharge et installe le <plugin> depuis le <dépôt>."
#: plugin.py:279
#: plugin.py:304
#: plugin.py:343 plugin.py:368
msgid "This plugin does not exist in this repository."
msgstr "Ce plugin n'existe pas dans ce dépôt."
#: plugin.py:294
#: plugin.py:358
msgid ""
"<repository> <plugin>\n"
"\n"
@ -79,11 +104,10 @@ msgstr ""
"\n"
"Affiche des informations sur <plugin> depuis le <dépôt>."
#: plugin.py:308
#: plugin.py:372
msgid "No README found for this plugin"
msgstr "Aucun README trouvé pour ce plugin."
#: plugin.py:311
#: plugin.py:375
msgid "This plugin has no description."
msgstr "Ce plugin n'a pas de description."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 18:33+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 18:34+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 18:34+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-17 18:36+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-02-26 09:49+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -44,16 +44,16 @@ msgid ""
" random grabbing."
msgstr ""
#: plugin.py:66
#: plugin.py:63
msgid "%s (Said by: %s; grabbed by %s at %t)"
msgstr ""
#: plugin.py:226
#: plugin.py:223
#, docstring
msgid "Add the help for \"@help QuoteGrabs\" here."
msgstr ""
#: plugin.py:265
#: plugin.py:262
#, docstring
msgid ""
"[<channel>] <nick>\n"
@ -64,15 +64,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:278
#: plugin.py:275
msgid "You can't quote grab yourself."
msgstr ""
#: plugin.py:285
#: plugin.py:282
msgid "I couldn't find a proper message to grab."
msgstr ""
#: plugin.py:290
#: plugin.py:287
#, docstring
msgid ""
"[<channel>] <number>\n"
@ -83,15 +83,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:301
#: plugin.py:298
msgid "Nothing to ungrab."
msgstr ""
#: plugin.py:303
#: plugin.py:300
msgid "Invalid grab number."
msgstr ""
#: plugin.py:308
#: plugin.py:305
#, docstring
msgid ""
"[<channel>] <nick>\n"
@ -101,11 +101,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:316
#: plugin.py:313
msgid "I couldn't find a matching quotegrab for %s."
msgstr ""
#: plugin.py:322
#: plugin.py:319
#, docstring
msgid ""
"[<channel>] <nick>\n"
@ -117,11 +117,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:339
#: plugin.py:336
msgid "I couldn't find any quotegrabs for %s."
msgstr ""
#: plugin.py:345
#: plugin.py:342
#, docstring
msgid ""
"[<channel>] [<nick>]\n"
@ -132,15 +132,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:355
#: plugin.py:352
msgid "Couldn't get a random quote for that nick."
msgstr ""
#: plugin.py:357
#: plugin.py:354
msgid "Couldn't get a random quote. Are there any grabbed quotes in the database?"
msgstr ""
#: plugin.py:363
#: plugin.py:360
#, docstring
msgid ""
"[<channel>] <id>\n"
@ -150,11 +150,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:371
#: plugin.py:368
msgid "No quotegrab for id %s"
msgstr ""
#: plugin.py:377
#: plugin.py:374
#, docstring
msgid ""
"[<channel>] <text>\n"
@ -164,7 +164,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:392
#: plugin.py:389
msgid "No quotegrabs matching %s"
msgstr ""

View File

@ -1,17 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2012-07-31 19:07+UTC\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language: \n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Français\n"
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:49
msgid "Valid values include 'asInFeed', 'oldestFirst', 'newestFirst'."
@ -21,106 +20,153 @@ msgstr "Les valeurs valides sont 'asInFeed', 'oldestFirst', et 'newestFirst'."
msgid ""
"Determines whether the bot will bold the title of the feed when\n"
" it announces new news."
msgstr "Détermine si le bot mettera en gras le titre des flux lorsqu'il annoncera des news."
msgstr ""
"Détermine si le bot mettera en gras le titre des flux lorsqu'il annoncera "
"des news."
#: config.py:57
msgid ""
"Determines what string is\n"
" used to separate headlines in new feeds."
msgstr "Détermine quelle chaîne est utilisé pour séparer les titres dans les nouveaux flux."
msgstr ""
"Détermine quelle chaîne est utilisé pour séparer les titres dans les "
"nouveaux flux."
#: config.py:60
msgid ""
"Determines what\n"
" prefix is prepended (if any) to the new news item announcements made in the\n"
" prefix is prepended (if any) to the new news item announcements made in "
"the\n"
" channel."
msgstr "Détermine quel préfixe (s'il y en a un) est utilisé pour annoncer les news sur le canal."
msgstr ""
"Détermine quel préfixe (s'il y en a un) est utilisé pour annoncer les news "
"sur le canal."
#: config.py:60
msgid "New news from "
msgstr "Nouvelle(s) news de "
#: config.py:64
msgid ": "
msgstr " : "
#: config.py:64
msgid ""
"Determines what\n"
" suffix is appended to the feed name in a news item."
msgstr ""
"Détermine quel suffixe est utilisé pour annoncer les news sur le canal."
#: config.py:67
msgid ""
"Determines which RSS feeds\n"
" should be announced in the channel; valid input is a list of strings\n"
" (either registered RSS feeds or RSS feed URLs) separated by spaces."
msgstr "Détermine quels flux RSS seront annoncés sur le canal ; une entrée valide est une liste de chaînes (des flux enregistrés ou des URLs de flux RSS), séparées par des espaces."
msgstr ""
"Détermine quels flux RSS seront annoncés sur le canal ; une entrée valide "
"est une liste de chaînes (des flux enregistrés ou des URLs de flux RSS), "
"séparées par des espaces."
#: config.py:68
#: config.py:71
msgid ""
"Indicates how many seconds the bot will\n"
" wait between retrieving RSS feeds; requests made within this period will\n"
" wait between retrieving RSS feeds; requests made within this period "
"will\n"
" return cached results."
msgstr "Détermine le temps (en secondes) entre deux rafraichissement des flux RSS. Durant cette période, les flux seront mis en cache."
msgstr ""
"Détermine le temps (en secondes) entre deux rafraichissement des flux RSS. "
"Durant cette période, les flux seront mis en cache."
#: config.py:72
#: config.py:75
msgid ""
"Determines whether feed items should be\n"
" sorted by their update timestamp or kept in the same order as they appear\n"
" sorted by their update timestamp or kept in the same order as they "
"appear\n"
" in a feed."
msgstr "Détermine si les éléments du flux doivent être triés selon la date de leur mise à jour ou si ils doivent être conservés dans l'ordre original du flux."
msgstr ""
"Détermine si les éléments du flux doivent être triés selon la date de leur "
"mise à jour ou si ils doivent être conservés dans l'ordre original du flux."
#: config.py:76
#: config.py:83
msgid ""
"Determines what feeds should be accessible as\n"
" commands."
msgstr "Détermine quels flux sont accessibles en tant que commande."
#: config.py:79
#: config.py:86
msgid ""
"Determines whether the bot will list the link\n"
" along with the title of the feed when the rss command is called.\n"
" supybot.plugins.RSS.announce.showLinks affects whether links will be\n"
" listed when a feed is automatically announced."
msgstr "Détermine si le bot listera le lien de chaque flus avec son titre, lorsque la commande rss est appelée. supybot.plugins.RSS.announce.showLinks affecte si les liens sont affichés lorsqu'un flux est annoncé automatiquement."
msgstr ""
"Détermine si le bot listera le lien de chaque flus avec son titre, lorsque "
"la commande rss est appelée. supybot.plugins.RSS.announce.showLinks affecte "
"si les liens sont affichés lorsqu'un flux est annoncé automatiquement."
#: config.py:84
#: config.py:97
msgid ""
"Indicates how many headlines an rss feed\n"
" will output by default, if no number is provided."
msgstr "Indique combien d'éléments un flux rss affichera par défaut, si aucun nombre n'est donné."
msgstr ""
"Indique combien d'éléments un flux rss affichera par défaut, si aucun nombre "
"n'est donné."
#: config.py:87
#: config.py:100
msgid ""
"Indicates how many headlines an rss feed\n"
" will output when it is first added to announce for a channel."
msgstr "Indique combien d'éléments un flux rss affichera lorsque qu'il vient d'être configuré pour être annoncé sur le salon."
msgstr ""
"Indique combien d'éléments un flux rss affichera lorsque qu'il vient d'être "
"configuré pour être annoncé sur le salon."
#: config.py:90
#: config.py:103
msgid ""
"Space separated list of \n"
" strings, lets you filter headlines to those containing one or more items\n"
" strings, lets you filter headlines to those containing one or more "
"items\n"
" in this whitelist."
msgstr "Liste séparée par des espaces de chaînes, qui vous permet de filtrer les éléments par liste blanche."
msgstr ""
"Liste séparée par des espaces de chaînes, qui vous permet de filtrer les "
"éléments par liste blanche."
#: config.py:94
#: config.py:107
msgid ""
"Space separated list of \n"
" strings, lets you filter headlines to those not containing any items\n"
" in this blacklist."
msgstr "Liste séparée par des espaces de chaînes, qui vous permet de filtrer les éléments par liste noire."
msgstr ""
"Liste séparée par des espaces de chaînes, qui vous permet de filtrer les "
"éléments par liste noire."
#: config.py:100
#: config.py:113
msgid ""
"Determines whether the bot will list the link\n"
" along with the title of the feed when a feed is automatically\n"
" announced."
msgstr "Détermine si le bot listera le lien de chaque flux avec le titre lorsqu'un flux est automatiquement annoncé."
msgstr ""
"Détermine si le bot listera le lien de chaque flux avec le titre lorsqu'un "
"flux est automatiquement annoncé."
#: plugin.py:62
#: plugin.py:57
msgid ""
"This plugin is useful both for announcing updates to RSS feeds in a\n"
" channel, and for retrieving the headlines of RSS feeds via command. Use\n"
" the \"add\" command to add feeds to this plugin, and use the \"announce\"\n"
" channel, and for retrieving the headlines of RSS feeds via command. "
"Use\n"
" the \"add\" command to add feeds to this plugin, and use the \"announce"
"\"\n"
" command to determine what feeds should be announced in a given channel."
msgstr "Ce plugin est utile pour annoncer des flux RSS sur un canal, et pour récupérer les en-tête des flux RSS via une commande. Utilisez la commande \"add\" pour ajouter des flux au plugin, et utilisez la commande \"annonce\" pour détermine quels flux pourront être annoncés sur un canal donné."
#: plugin.py:304
msgid "Return feed items, sorted according to sortFeedItems."
msgstr ""
"Ce plugin est utile pour annoncer des flux RSS sur un canal, et pour "
"récupérer les en-tête des flux RSS via une commande. Utilisez la commande "
"\"add\" pour ajouter des flux au plugin, et utilisez la commande \"annonce\" "
"pour détermine quels flux pourront être annoncés sur un canal donné."
#: plugin.py:358
#: plugin.py:325
msgid "Return feed items, sorted according to sortFeedItems."
msgstr "."
#: plugin.py:378
msgid ""
"<name> <url>\n"
"\n"
@ -130,9 +176,10 @@ msgid ""
msgstr ""
"<nom> <url>\n"
"\n"
"Ajoute un commande à ce plugin qui permet de regarder le flux situé à l'<url>."
"Ajoute un commande à ce plugin qui permet de regarder le flux situé à "
"l'<url>."
#: plugin.py:369
#: plugin.py:389
msgid ""
"<name>\n"
"\n"
@ -144,11 +191,11 @@ msgstr ""
"\n"
"Supprime le flux des flux qui peuvent être lus grâce à une commande."
#: plugin.py:375
#: plugin.py:395
msgid "That's not a valid RSS feed command name."
msgstr "Ce n'est pas une commande de flux RSS valide"
#: plugin.py:386
#: plugin.py:406
msgid ""
"[<channel>]\n"
"\n"
@ -158,41 +205,52 @@ msgid ""
msgstr ""
"[<canal>]\n"
"\n"
"Retourne la liste des flux annoncés sur le <canal>. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Retourne la liste des flux annoncés sur le <canal>. <canal> n'est nécessaire "
"que si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:393
#: plugin.py:413
msgid "I am currently not announcing any feeds."
msgstr "Je n'annonce actuellement aucun flux."
#: plugin.py:398
#: plugin.py:418
msgid ""
"[<channel>] <name|url> [<name|url> ...]\n"
"\n"
" Adds the list of feeds to the current list of announced feeds in\n"
" <channel>. Valid feeds include the names of registered feeds as\n"
" Adds the list of feeds to the current list of announced feeds "
"in\n"
" <channel>. Valid feeds include the names of registered feeds "
"as\n"
" well as URLs for RSS feeds. <channel> is only necessary if the\n"
" message isn't sent in the channel itself.\n"
" "
msgstr ""
"[<canal>] <nom|url> [<nom|url> ...]\n"
"\n"
"Ajoute la liste de flux à la liste actuelle des flux annoncés sur le <canal>. Vous devez indiquer le <nom> du flux si il est déjà enregistré, ou l'<url> dans le cas contraire. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Ajoute la liste de flux à la liste actuelle des flux annoncés sur le "
"<canal>. Vous devez indiquer le <nom> du flux si il est déjà enregistré, ou "
"l'<url> dans le cas contraire. <canal> n'est nécessaire que si le message "
"n'est pas envoyé sur le canal lui-même."
#: plugin.py:416
#: plugin.py:436
msgid ""
"[<channel>] <name|url> [<name|url> ...]\n"
"\n"
" Removes the list of feeds from the current list of announced feeds\n"
" in <channel>. Valid feeds include the names of registered feeds as\n"
" Removes the list of feeds from the current list of announced "
"feeds\n"
" in <channel>. Valid feeds include the names of registered feeds "
"as\n"
" well as URLs for RSS feeds. <channel> is only necessary if the\n"
" message isn't sent in the channel itself.\n"
" "
msgstr ""
"[<canal>] <nom|url> [<nom|url> ...]\n"
"\n"
"Supprime la liste de flux de la liste actuelle des flux annoncés sur le <canal>. Vous devez indiquer le <nom> du flux si il est déjà enregistré, ou l'<url> dans le cas contraire. <canal> n'est nécessaire que si le message n'est pas envoyé sur le canal lui-même."
"Supprime la liste de flux de la liste actuelle des flux annoncés sur le "
"<canal>. Vous devez indiquer le <nom> du flux si il est déjà enregistré, ou "
"l'<url> dans le cas contraire. <canal> n'est nécessaire que si le message "
"n'est pas envoyé sur le canal lui-même."
#: plugin.py:434
#: plugin.py:454
msgid ""
"<url> [<number of headlines>]\n"
"\n"
@ -202,13 +260,14 @@ msgid ""
msgstr ""
"<url> [<nombre de lignes>]\n"
"\n"
"Récupère le titre des éléments du flux RSS donné. si le <nombre de lignes> est donné, ne retourne que ce nombre de lignes d'en-tête."
"Récupère le titre des éléments du flux RSS donné. si le <nombre de lignes> "
"est donné, ne retourne que ce nombre de lignes d'en-tête."
#: plugin.py:447
#: plugin.py:467
msgid "Couldn't get RSS feed."
msgstr "Ne peut récupérer le flux RSS."
#: plugin.py:462
#: plugin.py:482
msgid ""
"<url|feed>\n"
"\n"
@ -218,13 +277,13 @@ msgid ""
msgstr ""
"<url|flux>\n"
"\n"
"Retourne des informations sur le flux RSS donné : le titre, l'URL, la description, et la dernière mise à jour."
"Retourne des informations sur le flux RSS donné : le titre, l'URL, la "
"description, et la dernière mise à jour."
#: plugin.py:475
#: plugin.py:495
msgid "I couldn't retrieve that RSS feed."
msgstr "Je ne peux récupérer ce flux RSS."
#: plugin.py:488
#: plugin.py:508
msgid "Title: %s; URL: %u; Description: %s; Last updated: %s."
msgstr "Titre : %s , URL : %u ; description : %s ; dernière mise à jour : %s."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-07-25 11:34+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -121,7 +121,7 @@ msgid ""
" announced."
msgstr ""
#: plugin.py:63
#: plugin.py:57
#, docstring
msgid ""
"This plugin is useful both for announcing updates to RSS feeds in a\n"
@ -130,12 +130,12 @@ msgid ""
" command to determine what feeds should be announced in a given channel."
msgstr ""
#: plugin.py:320
#: plugin.py:325
#, docstring
msgid "Return feed items, sorted according to sortFeedItems."
msgstr ""
#: plugin.py:373
#: plugin.py:378
#, docstring
msgid ""
"<name> <url>\n"
@ -145,7 +145,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:384
#: plugin.py:389
#, docstring
msgid ""
"<name>\n"
@ -155,11 +155,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:390
#: plugin.py:395
msgid "That's not a valid RSS feed command name."
msgstr ""
#: plugin.py:401
#: plugin.py:406
#, docstring
msgid ""
"[<channel>]\n"
@ -169,11 +169,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:408
#: plugin.py:413
msgid "I am currently not announcing any feeds."
msgstr ""
#: plugin.py:413
#: plugin.py:418
#, docstring
msgid ""
"[<channel>] <name|url> [<name|url> ...]\n"
@ -185,7 +185,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:431
#: plugin.py:436
#, docstring
msgid ""
"[<channel>] <name|url> [<name|url> ...]\n"
@ -197,7 +197,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:449
#: plugin.py:454
#, docstring
msgid ""
"<url> [<number of headlines>]\n"
@ -207,11 +207,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:462
#: plugin.py:467
msgid "Couldn't get RSS feed."
msgstr ""
#: plugin.py:477
#: plugin.py:482
#, docstring
msgid ""
"<url|feed>\n"
@ -221,11 +221,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:490
#: plugin.py:495
msgid "I couldn't retrieve that RSS feed."
msgstr ""
#: plugin.py:503
#: plugin.py:508
msgid "Title: %s; URL: %u; Description: %s; Last updated: %s."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-19 19:27+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2011-08-10 11:27+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2011-08-10 11:27+CEST\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-19 19:28+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,15 +1,16 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2014-01-21 22:33+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:49
msgid ""
@ -22,35 +23,48 @@ msgstr ""
"requête \"seen\". Bien sûr, cela ne s'applique que s'il y a des jokers dans "
"la requête."
#: plugin.py:197
#: config.py:53
msgid ""
"Determines whether the last message will\n"
" be displayed with @seen. Useful for keeping messages from a channel\n"
" private."
msgstr ""
"Détermine si le dernier message sera affiché avec @seen. Utile pour garder "
"les messages dun salon privés."
#: plugin.py:198
msgid "Not enough non-wildcard characters."
msgstr "Pas assez de caractères non-joker."
#: plugin.py:205 plugin.py:295
msgid "%s was last seen in %s %s ago: %s"
msgstr "%s a été vu pour la dernière fois sur %i il y a %s : %s"
#: plugin.py:206 plugin.py:303
msgid "%s was last seen in %s %s ago"
msgstr "%s a été vu pour la dernière fois sur %s il y a %s"
#: plugin.py:212
#: plugin.py:212 plugin.py:278 plugin.py:307
msgid "%s: %s"
msgstr "%s : %s"
#: plugin.py:218
msgid "%s (%s ago)"
msgstr "%s (il y a %s)"
#: plugin.py:214
#: plugin.py:220
msgid "%s could be %L"
msgstr "%s doit être %L"
#: plugin.py:214
#: plugin.py:220
msgid "or"
msgstr "ou"
#: plugin.py:216
#: plugin.py:222
msgid "I haven't seen anyone matching %s."
msgstr "Je n'ai vu personne correspondant à %s."
#: plugin.py:218 plugin.py:299
#: plugin.py:224 plugin.py:310
msgid "I have not seen %s."
msgstr "Je n'ai pas vu %s."
#: plugin.py:222
#: plugin.py:228
msgid ""
"[<channel>] <nick>\n"
"\n"
@ -66,7 +80,7 @@ msgstr ""
"<nick> a parlé. <canal> n'est nécessaire que si le message n'est pas envoyé "
"sur le canal lui-même. <nick> peut contenir le joker *."
#: plugin.py:236
#: plugin.py:242
msgid ""
"[<channel>] [--user <name>] [<nick>]\n"
"\n"
@ -91,15 +105,15 @@ msgstr ""
"en question a été vu actif sur le <canal. <canal> n'est nécessaire que si le "
"message n'est pas envoyé sur le canal lui-même."
#: plugin.py:269
msgid "Someone was last seen in %s %s ago: %s"
msgstr "Quelqu'un a été vu pour la dernière fois sur %s il y a %s : %s"
#: plugin.py:275
msgid "Someone was last seen in %s %s ago"
msgstr "Quelqu'un a été vu pour la dernière fois sur %s il y a %s"
#: plugin.py:273
#: plugin.py:281
msgid "I have never seen anyone."
msgstr "Je n'ai jamais vu personne."
#: plugin.py:277
#: plugin.py:285
msgid ""
"[<channel>]\n"
"\n"
@ -113,7 +127,7 @@ msgstr ""
"Retourne la dernière chose dite sur le <canal>. <canal> n'est nécessaire que "
"si le message n'est pas envoyé sur le canal lui-même."
#: plugin.py:303
#: plugin.py:314
msgid ""
"[<channel>] <name>\n"
"\n"
@ -134,32 +148,35 @@ msgstr ""
"<nom>, il n'est pas considéré comme vu. <canal> n'est nécessaire que si le "
"message n'est pas envoyé sur le canal lui-même."
#: plugin.py:319
#: plugin.py:330
msgid ""
"[<channel>] <nick>\n"
"[<channel>] [<nick>]\n"
"\n"
" Returns the messages since <nick> last left the channel.\n"
" If <nick> is not given, it defaults to the nickname of the person\n"
" calling the command.\n"
" "
msgstr ""
"[<canal>] <nick>\n"
"\n"
"Retourne les messages depuis que <nick> est parti du canal."
"Retourne les messages depuis que <nick> est parti du canal.<nick> correspond "
"par défaut au nick de la personne appelant la commande."
#: plugin.py:326
#: plugin.py:339
msgid "I am not in %s."
msgstr "Je ne suis pas dans %s."
#: plugin.py:329
#: plugin.py:342
msgid "%s must be in %s to use this command."
msgstr "%s doit être dans %s pour utiliser cette commande."
#: plugin.py:352
#: plugin.py:365
msgid "I couldn't find in my history of %s messages where %r last left %s"
msgstr ""
"Je ne peux pas trouver dans mon historique de %s messages, où %r a quitté il "
"y a %s"
#: plugin.py:361
#: plugin.py:374
msgid "Either %s didn't leave, or no messages were sent while %s was gone."
msgstr ""
"Soit %s n'est jamais parti, soit aucun message n'a été envoyé depuis qu'il "

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2010-10-20 08:55+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -114,11 +114,11 @@ msgid ""
" necessary if the bot is properly configured."
msgstr ""
#: plugin.py:402
#: plugin.py:406
msgid "You must set supybot.plugins.Services.ChanServ before I'm able to send the %s command."
msgstr ""
#: plugin.py:408
#: plugin.py:412
#, docstring
msgid ""
"[<channel>]\n"
@ -128,11 +128,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:414
#: plugin.py:418
msgid "I'm already opped in %s."
msgstr ""
#: plugin.py:421
#: plugin.py:425
#, docstring
msgid ""
"[<channel>]\n"
@ -142,11 +142,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:427
#: plugin.py:431
msgid "I'm already voiced in %s."
msgstr ""
#: plugin.py:444
#: plugin.py:448
#, docstring
msgid ""
"[<channel>]\n"
@ -158,7 +158,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:465
#: plugin.py:469
#, docstring
msgid ""
"[<channel>]\n"
@ -170,7 +170,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:486
#: plugin.py:490
#, docstring
msgid ""
"takes no arguments\n"
@ -179,15 +179,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:495
#: plugin.py:499
msgid "I don't have a configured password for my current nick."
msgstr ""
#: plugin.py:498
#: plugin.py:502
msgid "You must set supybot.plugins.Services.NickServ before I'm able to do identify."
msgstr ""
#: plugin.py:504
#: plugin.py:508
#, docstring
msgid ""
"[<nick>]\n"
@ -197,15 +197,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:513
#: plugin.py:517
msgid "I cowardly refuse to ghost myself."
msgstr ""
#: plugin.py:518
#: plugin.py:522
msgid "You must set supybot.plugins.Services.NickServ before I'm able to ghost a nick."
msgstr ""
#: plugin.py:524
#: plugin.py:528
#, docstring
msgid ""
"<nick> [<password>]\n"
@ -215,11 +215,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:534
#: plugin.py:538
msgid "That nick was not configured with a password."
msgstr ""
#: plugin.py:545
#: plugin.py:549
#, docstring
msgid ""
"takes no arguments\n"
@ -229,7 +229,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:555
#: plugin.py:559
msgid "I'm not currently configured for any nicks."
msgstr ""

View File

@ -1,10 +1,10 @@
msgid ""
msgstr ""
"Project-Id-Version: Supybot-fr\n"
"Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2013-03-03 19:39+CET\n"
"PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Supybot-fr <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2013-11-26 23:54+CET\n"
"POT-Creation-Date: 2014-01-22 07:53+CET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

Some files were not shown because too many files have changed in this diff Show More