# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  The ASF licenses this file to You
# under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.  For additional information regarding
# copyright in this work, please see the NOTICE file in the top level
# directory of this distribution.
#
# To find unused strings, see <roller-trunk>/docs/examples/i18n/compare-vs-default-file.py
# (Usage instructions given at the top of that script)
#

generic.all=Tous
generic.none=Aucune
generic.cancel=Annuler
generic.done=Terminé
generic.yes=Oui
generic.no=Non
generic.name=Nom
generic.description=Description
generic.save=Enregistrer
generic.edit=Editer
generic.delete=Effacer

# ------------------------------------------------------------- BookmarkForm.jsp

bookmarkForm.add.title=Ajouter un signet
bookmarkForm.add.subtitle=Ajouter un signet dans le répertoire [{0}]
bookmarkForm.edit.title=Editer un signet
bookmarkForm.edit.subtitle=Editer un signet dans le répertoire [{0}]
bookmarkForm.image=Lien de l'image
bookmarkForm.rssUrl=Adresse du fil d'information
bookmarkForm.url=Lien du signet

# ----------------------------------------------------------- BookmarksForm.jsp

bookmarksForm.root=racine
bookmarksForm.rootTitle=Signets

#FIXME
bookmarksForm.rootPrompt=\
Ceci est votre répertoire de signets de plus haut niveau. \
Les signets que vous conservez ici apparaîtront dans votre BLOGROLL SECTION de votre blog \
(en supposant que vous utilisez l'un des thèmes par défaut). Vous pouvez créer \
d'autres répertoires de signets ici mais vous devrez ajouter les macros d'affichage des \
signets additionnels à votre modèle si vous voulez afficher leur contenu.

bookmarksForm.subtitle=Gérer les signets du blog<span>{0}</span>

bookmarksForm.addBookmark=Ajouter un signet
bookmarksForm.addFolder=Ajouter un répertoire de signets
bookmarksForm.delete=Effacer la sélection
bookmarksForm.delete.confirm=Effacer les signets sélectionnés ?
bookmarksForm.folder=Répertoire de signets
bookmarksForm.edit.tip=Cliquez pour éditer ce signet ou répertoire
bookmarksForm.move=Déplacer la selection
bookmarksForm.move.confirm=Déplacer les signets sélectionnés ?
bookmarksForm.path=Chemin
bookmarksForm.visitLink=Visiter
bookmarksForm.visitLink.tip=Cliquez ici pour visiter ce site

bookmarksForm.error.move=Erreur : déplacer un répertoire parent dans un sous-répertoire est interdit
#FIXME OPML
bookmarksForm.importBookmarks=Importer les signets via OPML

# --------------------------------------------------------- Bookmarks import.jsp
#FIXME OPML
bookmarksImport.title=Importer les signets OPML
bookmarksImport.subtitle=Importe les signets dans le blog <span>{0}</span> via OPML
bookmarksImport.prompt=Importer un fichier au standard OPML dans votre collection dde signets. \
Les signets seront importés dans un nouveau répertoire de signets portant le nom \
imported-[date]. Vous pourrez alors les éditer et les déplacer dans d'autres répertoires \
si vous le désirez.
bookmarksImport.imported=Signets OPML importés dans le répertoire [{0}]
bookmarksImport.error=Une erreur est survenue durant l'importation de signets : {0}
bookmarksImport.import=Importer

# ----------------------------------------------------------------- cacheInfo.jsp

cacheInfo.title=Informations sur le cache
cacheInfo.subtitle=Affichage des statistiques sur le cache
cacheInfo.prompt=Cette page offre une vue détaillée de l'activité des caches du système.
cacheInfo.clear=Vider le cache

# -------------------------------------------------------------------- Calendars

calendar.summary=Calendrier des archives
calendar.prev=Précédent
calendar.today=Aujourd'hui
calendar.next=Suivant

# ------------------------------------------------------------- CategoryForm.jsp

categoryForm.edit.title=Edition de catégories
categoryForm.edit.subtitle=Editer une catégorie
categoryForm.add.title=Ajout de catégories
categoryForm.add.subtitle=Ajouter une catégorie
categoryForm.image=Image
categoryForm.error.duplicateName=Il existe déjà une catégorie nommée '{0}'. Veuillez choisir un autre nom.

# ----------------------------------------------------------- CategoriesForm.jsp

categoriesForm.subtitle=Gérer les catégories du blog <span>{0}</span>
categoriesForm.root=Racine
categoriesForm.rootTitle=Catégories
categoriesForm.rootPrompt=\
Vous trouverez ci-dessous la liste de vos catégories de plus haut niveau. \
Vous pouvez utiliser les catégories afin d'organiser les entrées de votre blog et vos lecteurs peuvent \
choisir de souscrire à des fils d'information séparés en fonction de vos catégories. \
Vous pouvez aussi définir des sous-catégories, cependant la plupart des macros incluses avec les modéles de Roller \
affichent seulement les catégories de plus haut niveau. Il vous faudra modifier votre modèle \
si vous désirer afficher les sous-catégories.
categoriesForm.addCategory=Ajouter une catégorie
categoriesForm.move=Déplacer
categoriesForm.move.confirm=Déplacer les catégories sélectionnées ?
categoriesForm.remove=Effacer

# --------------------------------------------------------- catégorieDeleteOK.jsp

categoryDeleteOK.removeCategory=Effacer une catégorie
categoryDeleteOK.warningCatInUse=ATTENTION: Cette catégorie est en cours d'utilisation !
categoryDeleteOK.youMustMoveEntries=Vous devez déplacer les entrées de votre blog appartenant à \
cette catégorie dans une autre catégorie. Sélectionnez quelle catégorie recevra ces entrées dans la \
boite de sélection.</p>
categoryDeleteOK.moveToWhere=Déplacer le contenu dans une autre catégorie :
categoryDeleteOK.noEntriesInCat=Il n'y a pas d'entrée dans cette catégorie.
categoryDeleteOK.areYouSure=Etes vous certain de vouloir effacer cette catégorie ?

# ----------------------------------------------------------------- comments.jsp

comments.title=Commentaire
comments.header=Rédiger un commentaire
comments.email=Courriel :
comments.header2=Commentaire :
comments.htmlenabled=autorisée
comments.disabled=Les commentaires sont clos pour cette entrée.

comments.mathAuthenticatorQuestion=Veuillez répondre à cette question de mathématique simple
error.commentAuthFailed=La vérification du commentaire a échouée !

# -------------------------------------------------------- comment validators

comment.validator.excessLinksName=Validation du nombre de liens
comment.validator.excessLinksMessage=Ce commentaire a plus de {0} liens
comment.validator.excessSizeName=Validation de la taille du commentaire
comment.validator.excessSizeMessage=Ce commentaire contient plus de {0} caractères
comment.validator.blacklistName=Validation de la liste noire
comment.validator.blacklistMessage=Ce commentaire contient certains mots figurant sur la liste noire.

#FIXME
comment.validator.trackbackLinkbackName=Trackback Linkback Comment Validator
comment.validator.trackbackLinkbackMessage=Trackback from site/page that does not link to your weblog entry

comment.validator.akismetName=Validation de commentaires Akismet
comment.validator.akismetMessage=Le service Akismet (akismet.com) indique que ce commentaire est un spam

# -------------------------------------------------------- comments-display.jsp

comments.at=le

# ---------------------------------------------------------- Comment management

commentManagement.title=Gestion des commentaires
commentManagement.subtitle=Cette page vous permet de gérer les commentaires à travers tous les blogs dans votre systéme.
commentManagement.entry.subtitle=Gérer les commentaires pour la publication <span>{0}</span>
commentManagement.website.subtitle=Gérer les commentaires du blog <span>{0}</span>

commentManagement.tip=Vous pouvez changer l'approbation, le status de spam ou effacer \
certains commentaires en les sélectionnant ci-dessous. \
Si vous faites quelque changement que ce soit, assurez vous de les sauvegarder en cliquant sur \
<em>Enregistrer</em> au bas de cette page.

commentManagement.globalTip=En tant qu'administrateur principal \
vous pouvez changer le status de spam ou effacer certains commentaires en les sélectionnant ci-dessous. \
Vous ne pouvez cependant pas changer le status de publication ou d'approbation de l'entrée, \
ceci afin de ne pas interférer avec le processus d'approbation d'une autre personne. \
Si vous faites quelque changement que ce soit, assurez vous de les sauvegarder en cliquant sur \
<em>Enregistrer</em> au bas de cette page.

commentManagement.nowShowing=Afficher <b>{0}</b> commentaires
commentManagement.noCommentsFound=Aucun commentaire trouvé.

commentManagement.pending=En attente
commentManagement.spam=Spam

commentManagement.next=Page suivante
commentManagement.prev=Page précedente
commentManagement.query=Requête
commentManagement.endDate=Date de fin
commentManagement.startDate=Date de début

commentManagement.bulkDeletePrompt1=Votre requête a retournée 0} commentaires,
commentManagement.bulkDeletePrompt2=Effacer tous les commentaires ?
commentManagement.confirmBulkDelete=Etes vous certain(e) de vouloir effacer les {0} \
commentaires retournés par votre requête ?

commentManagement.pendingStatus=En attente
commentManagement.onlyPending=En attente seulement
commentManagement.onlyApproved=Approuvé seulement
commentManagement.onlyDisapproved=Désapprouvé seulement
commentManagement.onlySpam=Spam seulement

commentManagement.columnApproved=Approuvé
commentManagement.columnSpam=Spam
commentManagement.columnComment=Commentaire
commentManagement.update=Enregistrer
commentManagement.updateSuccess=Les commentaires ont été mis à jour.
commentManagement.updateError=Une erreur est survenue durant la mise à jour des commentaires.
commentManagement.searchString=Recherche
commentManagement.sidebarTitle=Filtrer les commentaires
commentManagement.sidebarDescription=Filtrer les commentaires par recherche, status, et/ou date.

commentManagement.commentBy=Rédigé par
commentManagement.commentByBoth={0} (<a href="mailto:{1}">{2}</a>) à l''adresse IP {3}
commentManagement.commentByName={0} à partir de l''addresse IP {1}
commentManagement.commentByIP=Utilisateur à l''adresse IP {0}
commentManagement.postTime=Rédigé le
commentManagement.entryTitled=A propos de

commentManagement.select=Sélectionner
commentManagement.readmore=Commentaire complet...

# -------------------------------------------------------------- CommentServlet

commentServlet.commentMarkedAsSpam=Votre commentaire a été identifié comme un spam et ne sera pas affiché.
commentServlet.submittedToModerator=Votre commentaire a été transmis au modérateur pour approbation.
commentServlet.previewCommentOnly=Ceci est un aperçu de votre commentaire seulement

commentServlet.email.thereAreSystemMessages=Messages en provenance du système Roller :
commentServlet.email.thereAreErrorMessages=Ce commentaire n'a pas pu passer l'étape de validation pour les raisons suivantes :

# --------------------------------------------------------------- Configuration

configForm.title=Configuration de Roller
configForm.subtitle=Paramètres de configuration du site Roller.
configForm.prompt=Les changements que vous effectuez ici s'appliquent au site au complet. \
Veuillez noter que ces paramètres ne sont pris en compte que durant <i>l'execution</i> de Roller seulement. \
Référez vous à la documentation de Roller pour plus d'informations sur la modification des paramètres de \
<i>démarrage</i> de Roller (voir aussi le fichier roller.properties).

configForm.siteSettings=Paramètres du site
configForm.siteName=Nom du site (affiché dans la page principale et les fils d'information)
configForm.shortName=Nom court (affiché dans la bannière du site)
configForm.siteDescription=Description du site (affiché dans la page principale et les fils d'information)
configForm.frontpageWeblogHandle=Identifiant du blog utilisé pour la page principale
#FIXME
configForm.frontpageWeblogAggregated=Enable aggregated site-wide frontpage
configForm.siteAdminEmail=Courriel de l'administrateur du site
configForm.absoluteUrl=URL absolue du site (si nécessaire)
configForm.suspendPingProcessing=Suspendre les notifications

configForm.userSettings=Paramètres utilisateur
configForm.requireEmailActivation=Les nouveaux utilisateurs doivent activer leur compte par courriel
configForm.allowNewUsers=Autoriser de nouveaux utilisateurs
configForm.registrationUrl=URL externe d'enregistrement
configForm.editorPages=Pages utilisées comme éditeur de texte.

configForm.weblogSettings=Paramètres d'affichage du blog
configForm.pageMaxEntries=Nombre maximum d'entrées par page
configForm.newsfeedMaxEntries=Nombre d'entrées dans les fils d'information
configForm.styledFeeds=Afficher les fils d'information stylisés pour les navigateurs

configForm.commentSettings=Paramètres de commentaires et trackbacks
configForm.enableComments=Autoriser les commentaires sur ce blog
configForm.ignoreSpamComments=Ne pas enregistrer les commentaires considérés comme spam
configForm.enableTrackbacks=Autoriser les trackbacks ?
configForm.ignoreSpamTrackbacks=Ne pas enregistrer les trackbacks considérés comme spam
#FIXME
configForm.emailComments=Envoyer une notification de commentaire par courriel
configForm.moderationRequired=Modération de commentaires requise pour tous les blogs
configForm.enableTrackbackValidation=Activer la vérification des trackback
#FIXME

configForm.fileUploadSettings=Paramètres de transfert de fichiers
configForm.enableFileUploads=Activer le transfert de fichiers
configForm.allowedExtensions=Extensions autorisées
configForm.forbiddenExtensions=Extensions interdites
configForm.maxFileSize=Taille maximale de fichier (MB)
configForm.maxDirSize=Taille maximale de répertoire (MB)

configForm.themeSettings=Paramètres de thèmes
configForm.newUserThemes=Répertoire des thèmes
configForm.allowCustomTheme=Autoriser les thèmes personnalisés

# ---------------------------------------------------------------- Create weblog

createWebsite.title=Créer un blog

createWebsite.prompt=Utilisez ce formulaire pour créer un nouveau blog pour vous ou votre groupe d'amis.

createWebsite.tip.name=Le nom est aussi le titre de votre blog. Il sera affiché en haut de votre page, \
et dans le champ de titre du fil d'information de votre blog. \
Veuillez noter que ce champ ne doit contenir aucun code HTML.
createWebsite.tip.description=La description sera affichée en haut de votre blog \
(suivant le thème que avez choisi) et sera utilisée dans la description ou sous-titre des fils d'information \
pour votre blog. \
Veuillez noter que ce champ ne doit contenir aucun code HTML.
createWebsite.tip.handle=L'identifiant doit être un seul mot (court de préférence) unique pour chaque blog \
Comme il sera utilisé dans les liens apparaissant dans votre blog et pour votre blog lui-même, veuillez \
utiliser un nom simple formé de caractères ASCII uniquement (a-z, A-Z et 0-9) et ne pas utiliser HTML.
createWebsite.tip.email=Votre adresse de courriel ou de la personne responsable du blog que vous créez.
createWebsite.tip.timezone=Le fuseau horaire utilisé pour les entrées et l'affichage de ce blog.
createWebsite.tip.locale=La langue (locale) utilisée par défault pour l'affichage de ce blog si les navigateurs \
ne fournissent pas cette information.
createWebsite.tip.theme=Le thème utilisé pour afficher ce blog. \
Vous pouvez aisément changer de thème ou éditer les modèles existants pour personnaliser votre blog à votre goût.

createWebsite.handle=Identifiant
createWebsite.emailAddress=Adresse de courriel
createWebsite.locale=Langue
createWebsite.timeZone=Fuseau horaire
createWebsite.theme=Thème
createWebsite.weblogUrl=URL

createWebsite.button.save=Créer le blog
createWebsite.created=Le nouveau blog [<b>{0}</b>] a été crée.

createWeblog.error.invalidHandle=L'identifiant que vous avez spécifié est incorrect.
createWeblog.error.handleExists=Il existe déjà un blog avec cet identifiant

# --------------------------------------------------------------- Entry editors

editor.text.name=Editeur de texte
editor.xinha.name=Editeur de texte riche (Xinha)

# --------------------------------------------------------------- Comment emails

email.comment.wrote=a écrit
email.comment.anonymous=Un utilisateur anonyme a écrit
email.comment.respond=Répondre à ce commentaire à
email.comment.title=Commentaire
email.comment.commentApproved=Commentaire approuvé

#---------------------------------------------------------------- Error messages

error.untranslated={0}

error.add.user.userNameInUse=Ce nom est déjà utilisé
error.add.user.missingUserName=Vous devez spécifier un nom d'utilisateur.
error.add.user.badUserName=Nom d'utilisateur incorrect \
(veuillez utiliser des caractères alpha-numériques uniquement).
error.add.user.missingPassword=Vous devez entrer un mot de passe.

error.upload.dirmax=Vous ne pouvez pas dépasser la limite de {0} MB pour la taille d'un répertoire.
error.upload.disabled=Le chargement de fichier est désactivé
error.upload.file=Aucun fichier sélectionné
error.upload.filemax=Ce fichier dépasse la taille autoriséee de {0} MB
error.upload.forbiddenFile=Vous ne pouvez charger que les fichiers avec l'une des extensions suivantes : {0}
error.general=ERREUR : une erreur inattendue [{0}] est survenue.

error.password.mismatch=Votre nom d'utilisateur ou votre mot de passe est incorrect.

error.trackback=Une erreur est survenue durant l'envoi du trackback, probablement due à \
une adresse URL incorrecte. {0}
#FIXME
error.trackbackNotAllowed=Une erreur est survenue durant l'envoi du trackback. \
L'administrateur de ce site a interdit l'envoi de trackbacks à l'adresse URL que vous avez spécifiée.

errorPage.title=Erreur inattendue
errorPage.message=Une erreur inattendue est survenue durant l'execution de Roller. Celle ci a été enregistrée \
dans le fichier journal de l'application.

error.title.403=Accés interdit
error.text.403=Vous n'avez pas les privilèges requis pour accéder à cette page.

error.title.404=Document introuvable.
#FIXME: add more verbiage to 404 text
error.text.404=Le document que vous recherchez est introuvable sur ce serveur.

error.permissionDenied.title=Accés refusé
error.permissionDenied.prompt=Causes probables :
error.permissionDenied.reason0=Vous tentez d'accéder à une entrée que vous n'avez pas la permission d'éditer \
(peut-être l'avez vous déjà soumise à révision ?).
error.permissionDenied.reason1=Vous tentez d'enregistrer des informations provenant d'une page expirée \
ou laissée ouverte dans votre navigateur avec un compte utilisateur différent.

error.permissionDenied.reason2=Vous tentez de vous connecter avec une orthographe de nom d'utilisateur incorrecte. \
Vérifiez que vous entrez les minuscules et majuscules correctement. Si le problème persiste, \
déconnectez vous de l'application et essayez de nouveau avec votre nom d'utilisateur.

error.permissionDenied.reason3=Des erreurs de configuration peuvent empêcher la connection à la base de données de ce serveur de blog. \
Pour résoudre ce problème, veuillez contacter votre administrateur système.

# --------------------------------------------------------------- FolderForm.jsp

folderForm.add.title=Ajouter un répertoire
folderForm.add.subtitle=Ajoute un répertoire de signets dans le répertoire [{0}]

folderForm.edit.title=Editer un répertoire
folderForm.edit.subtitle=Edite le répertoire de signets dans le répertoire [{0}]

folderForm.error.duplicateName=Le répertoire '{0}' est en cours d'utilisation. \
Vous devez choisir un autre répertoire.

# ------------------------------------------------------ index / setup page

index.heading=Bienvenue sur Roller !
index.prompt=Veuillez suivre les étapes suivantes pour compléter votre installation de Roller.

index.createUser=Créer un compte utilisateur
index.createUserDone=Terminé : ce site à {0} utilisateur(s) enregistré(s)
index.createUserHelp=\
Avant de pouvoir utiliser Roller, vous devez créer votre premier utilisateur \
avec lequel vous connecter, gérer Roller et commencer à \
publier. Notez que le premier utilisateur crée aura les droits d''\
<i>administrateur principal</i> nécessaires à la gestion de l'application Roller, \
des utilisateurs, ainsi que désigner d'autres administrateurs.
index.createUserBy=Créez votre premier utilisateur au travers de la page de
index.createUserPage=Création d'un nouvel utilisateur
index.createWeblog=Créer un blog
index.createWeblogDone=Terminé : ce site contient {0} blog(s)
index.createWeblogHelp=\
Avant que vous ne commenciez à publier, vous devez créer au moins un blog. \
Notez que vous pouvez créer autant de blogs que vous le désirez. Chaque utilisateur \
de Roller peut posséder plusieurs blogs et chaque blog peut avoir de multiples auteurs.
index.createWeblogBy=Créez votre premier blog au travers de la page de
index.createWeblogPage=Création d'un nouveau blog.

index.setFrontpage=Choisissez un blog comme page de garde
index.setFrontpageHelp=\
Vous devez spécifier quel blog utiliser pour la page de garde du site Roller. \
Vous pouvez faire cela au travers de la page d'administration du serveur \
(<b>Administration Serveur->Configuration</b>). \
Entrez l'identifiant du blog que vous voulez utiliser comme page de garde dans le champ \
'Identifiant du blog utilisé comme page de garde'. \
Quand vous aurez terminé, vous ne verrez enfin plus l'agaçante page actuelle.


# --------------------------------------------------------------- Invite member

inviteMember.title=Inviter un nouveau membre
inviteMember.subtitle=Inviter un nouvel utilisateur à joindre ce blog
inviteMember.prompt=Invitez un utilisateur à rejoindre ce blog en sélectionnant \
son adresse de courriel ci-dessous et en choisissant une des permissions d'accés \
pour celui-ci. Cliquez ensuite sur le bouton 'Inviter'. Si l'utilisateur n'est pas visible \
dans la liste, entrez les premières lettres de son nom ou de son courriel afin de le retrouver.

inviteMember.userName=Nom d'utilisateur
inviteMember.administrator=Administrateur
inviteMember.author=Auteur
inviteMember.limited=Limité
inviteMember.permissions=Permissions

inviteMember.button.save=Inviter
inviteMember.error.userNotFound=Cet utilisateur n'existe pas
inviteMember.error.userAlreadyInvited=Cet utilisateur a déjà été invité à joindre ce blog
inviteMember.error.userAlreadyMember=Cet utilisateur est déjà un membre de ce blog

inviteMember.userInvited=L'utilisateur a été invité avec succés

inviteMember.notificationSubject=Roller : invitation à joindre le blog "{0}" ({1})
inviteMember.notificationContent=Vous avez été invité à joiondre le blog "{0}" ({1}). \
Cliquez sur le lien suivant et enregistrez vous comme utilisateur [{2}] afin d'accepter ou de décliner \
cette invitation. <{3}>.

# ------------------------------------------------------------------------ Login

loginPage.title=Bienvenue sur Roller
loginPage.prompt=Veuillez entrer votre nom d'utilisateur et votre mot de passe pour vous connecter.
loginPage.userName=Utilisateur
loginPage.password=Mot de passe
loginPage.rememberMe=Conserver ces informations

#loginPage.rememberMeText=Ne choisissez pas cette option si vous utilisez un ordinateur partagé, \
#comme par exemple dans un cyber-café, ou si plusieurs personnes peuvent avoir accés à votre compte \
#sur votre ordinateur.
loginPage.login=Connecter
loginPage.reset=Effacer

# --------------------------------------------------------------- Bookmark Macro

macro.bookmark.urlFeed=URL du fil d'information (RSS) du site

# --------------------------------------------------------- Search Results Macro

error.searchProblem=Votre recherche est incorrecte ou une erreur est survenue durant son execution.

# ----------------------------------------------------------------- Weblog Macro

macro.weblog.comments=Commentaires
macro.weblog.comment=Commentaire
macro.weblog.comment.unknown=Inconnu
macro.weblog.datepattern=dd MMMM yyyy à hh:mm aa z
macro.weblog.date.toStringFormat=EEEE dd MMMM yyyy
macro.weblog.preview=Aperçu du commentaire
macro.weblog.commentpermalink.title=Lien permanent
macro.weblog.readMore=Suite...
macro.weblog.readMoreLink=[<a class="readmore" href="{0}">Suite</a>]

macro.weblog.postedby=Publié par
macro.weblog.on=le
macro.weblog.name=Nom :
macro.weblog.email=Courriel :
macro.weblog.url=URL :
macro.weblog.rememberinfo=Conserver ces informations ?
macro.weblog.yourcomment=Votre commentaire :
macro.weblog.htmlsyntax=Syntax HTML :
macro.weblog.htmldisabled=interdite
macro.weblog.htmlenabled=autorisée
macro.weblog.commentwarning=Veuillez entrer un commentaire.
macro.weblog.postcommentHeader=Publier un commentaire :
macro.weblog.postcomment=Publier ce commentaire
macro.weblog.post=Publier
macro.weblog.postpreview=Aperçu
macro.weblog.searchalert=Veuillez entrer un terme de recherche pour continuer.
macro.weblog.searchbutton=Rechercher
#FIXME
macro.weblog.searchhits="{0}": <strong>{1}</strong> entrées trouvées.
macro.weblog.searchgoogle=<em>Vous pouvez aussi \
<a href="http://google.com/search?q={0}%20site:{1}/{3}" \
class="google">essayer cette recherche</a> sur Google.</em>
#FIXME
macro.weblog.notifyMeOfComments=Notifiez moi par courriel de nouveaux commentaires

# -------------------------------------------------------------------- Main page

mainPage.category=catégorie
mainPage.searchWeblogs=Rechercher un blog
mainPage.actions=Actions
mainPage.loggedInAs=Connecté en tant que
mainPage.currentWebsite=Edition du blog
mainPage.mainMenu=Menu principal

# ------------------------------------------------------------------ Maintenance

maintenance.title=Maintenance
maintenance.subtitle=Activités de maintenance pour ce blog.
maintenance.prompt.index=Recréer l'index de recherche pour ce blog.
maintenance.button.index=Recréer l''index
maintenance.prompt.flush=Vider le cache mémoire pour ce blog.
maintenance.button.flush=Vider le cache
maintenance.message.indexed=La création de l'index de recherche a été enregistrée avec succés.
maintenance.message.flushed=Le cache de votre blog a été effacé avec succés.

# ----------------------------------------------------------- Member permissions

memberPermissions.title=Droits d''accés des membres du blog
memberPermissions.subtitle=Cette page gère les droits d''accés des utilisateurs au blog <span>{0}</span>
memberPermissions.description=Pour changer les droits d'accés des utilisateurs de ce blog \
utilisez les fonctions dans la liste ci-dessous et cliquez 'Enregistrer' pour sauvegarder vos changements. \
Notez que vous n'êtes pas autorisé à effacer votre propre compte de ce blog ou \
de vous démettre de certains droits.

memberPermissions.userName=Utilisateur
memberPermissions.administrator=Administrateur
memberPermissions.author=Auteur
memberPermissions.limited=Limité
memberPermissions.remove=Effacer

memberPermissions.membersRemoved={0} utilisateurs enlevés.
memberPermissions.membersChanged=Les permissions d'accés de {0} utilisateur(s) ont été changées.

memberPermissions.confirmRemove=Etes vous certain(e) de vouloir enlever des membres de ce blog ?

memberPermissions.inviteMember=Inviter un nouveau membre
memberPermissions.whyInvite=Inviter quelqu'un à joindre votre blog et vous aider à écrire.

memberPermissions.permissionsHelpTitle=Qu'est-ce qu'une permission ou droit d'accés ?
memberPermissions.permissionHelp=\
Les droits d'<b>Administrateur</b> permettent aux membres de publier des entrées, gérer ce blog ainsi que ses utilisateurs.<br /> \
Les droits d'<b>Auteur</b> permettent aux membres de publier des entrées mais pas de gérer ce blog.<br /> \
Des droits <b>Limités</b> ne permettent aux utilisateurs que de sauvegarder des brouillons.

# --------------------------------------------------------- New user registation

newUser.addNewUser=Enregistrement d'un nouvel utilisateur

# -------------------------------------------------------------- Page management

pagesForm.title=Modéles
pagesForm.subtitle=Gestion des modèles définissant le blog <span>{0}</span>
pagesForm.tip=Vous pouvez éditer les modèles définissant la mise en page, les couleurs \
et fontes de votre blog. Vous pouvez aussi créer de nouveaux modèles afin de créer de \
nouvelles pages. Ceci est cependant réservé aux utilisateurs avertis et si vous n'êtes \
pas très à l'aise avec HTML, vous devriez conserver les modèles existants sans tenter \
de les modifier.

pageForm.advancedSettings=Paramètres avancés
pagesForm.action=Action
pagesForm.remove=Effacer
pagesForm.required=(requis)
pagesForm.addNewPage=Ajouter un modèle
pagesForm.add=Ajouter
pagesForm.themesReminder=<b>Rappel :</b> vous utilisez le thème partagé {0}. \
Les modifications que vous effectuez à certains modèles peuvent ne pas modifier \
la mise en page de votre blog.
editPages.title.removeOK=Voulez vous vraiment effacer le modèle ?

pagesForm.error.alreadyExists=Le modèle {0} existe déjà.

# -------------------------------------------------------------------- Page edit

pageForm.subtitle=Edition du modèle <span>{0}</span> pour le blog <span>{1}</span>
pageForm.tip=Vous pouvez changer ce modèle pour modifier les pages créees par celui-ci. \
Veuillez vous réferer au guide d'utilisation des modèles ('Roller Template Guide') \
pour toute information concernant les objets disponibles et le code à utiliser dans un modèle. \
Notez que ceci est réservé aux utilisateurs avertis et si vous n'êtes \
pas très à l'aise avec HTML, vous devriez conserver les modèles existants sans tenter \
de les modifier.

pageForm.tip.required=Vous pouvez changer ce modèle pour modifier les pages créees par celui-ci. \
Veuillez vous réferer au guide d'utilisation des modèles ('Roller Template Guide') \
pour toute information concernant les objets disponibles et le code à utiliser dans un modèle. \
Notez que ceci est réservé aux utilisateurs avertis et si vous n'êtes \
pas très à l'aise avec HTML, vous devriez conserver les modèles existants sans tenter \
de les modifier. Notez aussi que ce modèle étant un modèle réservé, \
vous ne pouvez pas changer le nom, le lien ou la description de celui-ci.\

pageForm.link=Lien
pageForm.hidden=Caché
pageForm.hidden.tip=Les pages cachées ne sont pas accessibles par un lien URL à travers ce blog
pageForm.navbar=Inclus dans le menu de la page
pageForm.navbar.tip=Inclus dans le menu produit par la macro 'showPageMenu()'
pageForm.template=Modèle
pageForm.newTemplateContent=<html><body></body></html>
pageForm.save.success=Modèle mis à jour.
pageForm.launch=exécuter
#FIXME
pageForm.useAutoContentType=Automatically set content type
#FIXME
pageForm.useManualContentType=Use manually specified content-type

pageForm.templateLanguage=Langue du modèle

pageForm.outputContentType=Content-Type

pageRemove.subtitle=Confirmez l'effacement de cette page
pageRemove.youSure=Etes vous certain de vouloir effacer cette page ?
pageRemove.pageId=Identifiant de page
pageRemove.pageName=Nom de page

# ---------------------------------------------------- Ping Target Admin/Editing

commonPingTargets.subtitle=Gestion des adresses de notification communes à tous les blogs.
commonPingTargets.commonPingTargets=Adresses de notification communes

pings.title=Notifications automatiques
pings.subtitle=Gestion des notifications automatiques pour le blog <span>{0}</span>
pings.explanation=Les notifications vous permettent d'avertir d'autres sites \
que le contenu de votre blog a changé de façon à ce que ceux-ci puissent lire \
vos fils d'information et recevoir des mises à jour. \
Vous pouvez autoriser les notifications automatiques pour autant de sites que vous le désirez, \
et aussi notifier manuellement les sites spécifiés sur cette page. \
Notez qu'habituellement vous devez enregistrer votre blog auprés de ces sites \
avant de pouvoir leur envoyer vos notifications.

pings.commonPingTargets=Adresses de notification communes
pings.commonPingTargetsExplanation=Ces adresses de notification ont été configurées \
par l'administrateur de ce site pour tous les utilisateurs. Vous pouvez envoyer \
des notifications à tous ces sites.

ping.successful=La notification a réussie.
ping.transmittedButError=La notification à été envoyée au site distant mais celui-ci a renvoyé \
le message d'erreur suivant :

ping.transmissionFailed=La transmission de la notification a échouée. \
Veuillez vous assurer que l'adresse URL que vous utilisez est correcte.

ping.unknownHost=Le serveur specifié par cette adresse URL est introuvable.
ping.networkConnectionFailed=Incident réseau durant la notification de ce site. \
Le site distant est injoignable.
ping.pingProcessingIsSuspended=Les notifications ont été provisoirement suspendues par \
l'administrateur de ce site.

pingTarget.pingUrl=Adresse URL
pingTarget.autoEnabled=Ping Automatique
pingTarget.remove=Effacer
pingTarget.confirmRemoveTitle=Confirmation d'effacement de l'adresse de notification
pingTarget.confirmCommonRemove=Effacer cette adresse affectera tous les blogs l'utilisant. \
Etes vous certain de vouloir effacer celle-ci ?

pingTarget.enable=Activer
pingTarget.enabled=Actif
pingTarget.disable=Désactivé
pingTarget.disabled=Inactif
pingTarget.auto=Automatique
pingTarget.manual=Manuel
pingTarget.sendPingNow=Notifier
pingTarget.updated=Adresse de notification "{0}" enregistrée.

pingTarget.nameNotUnique=Le nom utilisé existe déjà ou fait partie d'un nom existant.
pingTarget.malformedUrl=L'URL utilisée est incorrecte.
pingTarget.unknownHost=Le serveur specifié par cette adresse URL est introuvable.

# --------------------------------------------------------------- Planet Roller

planetConfig.title=Configuration de Planet
planetConfig.subtitle=Configurer l'aggrégateur de fils d'information pré-défini de Roller.
planetConfig.prompt=Choisissez le titre, la description et adresse de courriel ainsi que l'URL du site \
devant être inclus dans les fils d'information produits par l'aggrégateur. \
Vous pouvez aussi configurer un proxy si cela est requis par votre réseau.

ConfigForm.siteSettings=Paramètres de Planet
ConfigForm.title=Titre
ConfigForm.description=Description
ConfigForm.adminName=Nom de l'administrateur Planet
ConfigForm.adminEmail=Courriel de l'administrateur Planet
ConfigForm.absoluteUrl=URL complète vers la page de Planet
ConfigForm.proxyHost=Nom du serveur Proxy
#pour la récuperation des fils d'information
ConfigForm.proxyPort=Port du serveur Proxy
#pour la récuperation des fils d'information

# ----------------------------------------------------- PlanetGroupSubs.jsp

planetGroupSubs.title=Souscriptions

planetGroupSubs.subtitle.add=\
Gestion des souscriptions aux fils d'information dans le groupe [<b>{0}</b>].
planetGroupSubs.prompt.add=Pour ajouter une nouvelle souscription, entrez son titre, \
l'adresse URL du fil d'information et celle du site, puis cliquez sur 'Enregistrer'.

planetGroupSubs.subtitle.addMain=\
Gérer la liste principale de souscriptions aux fils d'information.
planetGroupSubs.prompt.addMain=Utilisez cette page pour ajouter ou éditer les souscriptions qui \
s'ajouterons à la page d'aggrégation de Planet. \
Pour ajouter une nouvelle souscription, entrez son titre, \
l'adresse URL du fil d'information et celle du site, puis cliquez sur 'Enregistrer'.

planetGroupSubs.existingTitle=Souscriptions existantes

planetGroupSubs.column.title=Titre
planetGroupSubs.column.feedUrl=URL du fil

planetSubscription.feedUrl=URL du fil d'information

#FIXME UH
planetSubscription.foundExisting=Il y a [{0}] souscriptions existantes. \
Celle-ci a été ajoutée.
planetSubscription.success.saved=Souscription enregistrée

planetSubscription.error=Vous devez specifier une adresse URL pour le fil d'information
planetSubscription.error.feedUrl=URL du fil requise
planetGroupSubs.error.duringSave=La souscription {0} semble déjà exister
de la souscription.

# ------------------------------------------------------------ PlanetGroups.jsp

planetGroups.pagetitle=Groupes Planet personnalisés
planetGroups.subtitle=Ajouter des groupes d'aggregation personnalisés . \
Chaque groupe sera disponible comme un nouveau fil d'information.

planetGroups.prompt.add=Pour créer un groupe, entrez son nom tel qu'affiché, \
ainsi qu'un identifiant unique à utiliser dans l'adresse URL du fil d'information. \
Cliquez ensuite sur 'Enregistrer'.

planetGroups.prompt.edit=Vous éditez un group d'aggrégation personnalisé. \
Effectuez vos changements et cliquez sur 'Enregistrer' lorsque vous avez terminé. \
Vous pouvez aussi effacer ce groupe en cliquant sur 'Effacer'.

planetGroups.existingTitle=Groupes d'aggregations personnalisés existants
planetGroups.existingPrompt=Sélectionnez un groupe existant à editer.

planetGroups.column.title=Titre
planetGroups.column.subscriptions=Souscriptions
planetGroups.column.handle=Identifiant

planetGroups.tip.title=Titre du groupe
planetGroups.tip.handle=Identifiant du groupe
planetGroups.edit.tip=Editer ce group

planetGroups.title=Titre
planetGroups.handle=Identifiant

planetGroups.success.saved=Groupe enregistré

planetGroups.error.title=Le titre est requis
planetGroups.error.handle=L'identifiant est requis
planetGroups.error.nameReserved=L'identifiant 'all' ne peut être utilisé

# ------------------------------------------------------------------ Statistics

statCount.weblogCommentCountType=Total des commentaires
statCount.weblogEntryCommentCountType=Total des commentaires pour cette entrée
statCount.weblogDayHits=Total des visites du jour

# ------------------------------------------------------------------ Tabbed Menu

tabbedmenu.weblog=Créer &amp; Editer
tabbedmenu.weblog.newEntry=Nouvelle entrée
tabbedmenu.weblog.archives=Entrées
tabbedmenu.weblog.categories=Catégories
tabbedmenu.bookmarks.allFolders=Signets

tabbedmenu.website=Préférences
tabbedmenu.website.settings=Paramètres
tabbedmenu.website.themes=Thème
tabbedmenu.website.pages=Modèles
tabbedmenu.website.members=Membres
tabbedmenu.website.maintenance=Maintenance
tabbedmenu.weblog.pingSetup=Notifications

tabbedmenu.admin=Admin. Serveur
tabbedmenu.admin.config=Configuration
tabbedmenu.admin.userAdmin=Admin. Utilisateur
tabbedmenu.admin.commentManagement=Commentaires
tabbedmenu.admin.pingTargets=Notifications
tabbedmenu.admin.cacheInfo=Cache

tabbedmenu.planet=Admin. Planet
tabbedmenu.admin.planetConfig=Configuration
tabbedmenu.admin.planetGroupSubs=Souscriptions
tabbedmenu.admin.planetGroups=Groupes personnalisés

# ---------------------------------------------------------------------- Search

searchPager.home=Principal
searchPager.next=Page suivante
searchPager.prev=Page précedente
searchSummary.text=Entrées {0} - {1} affichées pour un total de {2} résultats.

# ----------------------------------------------------------------------- Theme

themeEditor.title=Thème de blog
themeEditor.subtitle=Selection du thème pour le blog <span>{0}</span>

themeEditor.selectTheme=Choisissez un thème pour aperçu
themeEditor.yourCurrentTheme=Votre thème actuel est
themeEditor.preview=Aperçu
themeEditor.save=Enregistrer

# ---------------------------------------------------------------------- Uploads

uploadFiles.uploadedFiles=Fichiers téléchargés :
uploadFiles.uploadedFile={0}

uploadFiles.error.badPath=Le chemin [{0}] est incorrect. Les noms de chemin ne peuvent contenir aucun des caractères "/", "\\", ou ".."
uploadFiles.error.upload=Le téléchargement du fichier [{0}] a échoué

# ------------------------------------------------------------------- User admin

userAdmin.title.searchUser=Rechercher un utilisateur à éditer
userAdmin.subtitle.searchUser=Sélectionnez un utilisateur à editer
userAdmin.prompt.searchUser=Recherchez un utilisateur en utilisant les premières lettres de \
son nom. Sélectionnez cet utilisateur et cliquez sur 'Editer" pour changer son profil ainsi que ses blogs.

userAdmin.title.editUser=Edition de l'utilisateur [{0}]
userAdmin.subtitle.editUser=Modifie le profile de l'utilisateur ainsi que ses droits d'administration

userAdmin.title.createNewUser=Créer un nouvel utilisateur
userAdmin.subtitle.createNewUser=Créez un nouvel utilisateur en utilisant le formulaire ci-dessous. \
Tous les champs du formulaire sont requis.

userAdmin.enabled=Activé
userAdmin.title=Gestion des utilisateurs
userAdmin.userAdmin=Administrateur

userAdmin.subtitle.userCreation=Création d'un nouvel utilisateur
userAdmin.prompt.orYouCan=Vous pouvez aussi
userAdmin.prompt.createANewUser=créer un nouvel utilisateur

userAdmin.userWeblogs=Blogs des utilisateurs
userAdmin.userMemberOf=Cet utilisateur est membre du(es) blog(s) suivant(s)
userAdmin.userHasNoWeblogs=Cet utilisateur n'est membre d'aucun blog.
userAdmin.newEntry=Nouvelle entrée
userAdmin.editEntries=Editer une entrée
userAdmin.manage=Gestion

userAdmin.tip.screenName=Nom de plume (sans HTML).
userAdmin.tip.fullName=Nom complet de l'utilisateur (sans HTML).
userAdmin.tip.userName=Nom d'utilisateur court à utiliser comme identifiant pour le compte de cet usager. \
Veuillez vous limiter à un nom simple (sans espace ni code HTML) \
contenant uniquement des caractères ASCII (a-z, A-Z and 0-9).
userAdmin.tip.password=Mot de passe.
userAdmin.tip.email=Adresse de courriel valide requise pour les notifications automatiques.
userAdmin.tip.enabled=Les utilisateurs désactivés ne peuvent pas se connecter à Roller.
userAdmin.tip.userAdmin=Sélectionnez pour donner les privilèges d'administration principale.
userAdmin.tip.locale=Langue
userAdmin.tip.timeZone=Fuseau horaire

# --------------------------------------------------------------- User register

userRegister.prompt=Utilisez ce formulaire pour vous enregistrer comme nouvel utilisateur Roller. \
Veuillez créez un seul compte par personne.

userRegister.button.save=Ajouter

userRegister.tip.screenName=Votre nom de plume (sans HTML)
userRegister.tip.fullName=Votre nom et prénom (sans HTML)
userRegister.tip.userName=Votre nom d'utilisateur court à utiliser comme identifiant pour le compte de cet usager. \
Veuillez vous limiter à un nom simple (sans espaces ni code HTML) et \
contenant uniquement des caractères ASCII (a-z, A-Z and 0-9).
userRegister.tip.email=Veuillez entrer une adresse de courriel valide. \
L'administrateur de ce site peut désactiver votre compte si il/elle ne peut vous joindre avec cette adresse.
userRegister.tip.timeZone=Votre fuseau horaire
userRegister.tip.locale=Votre langue
userRegister.tip.password=Votre mot de passe
userRegister.tip.passwordConfirm=Confirmez votre mot de passe

# ---------------------------------------------------------------- User settings

userSettings.username=Nom d'utilisateur
userSettings.screenname=Nom de plume
userSettings.fullname=Prénom et nom
userSettings.password=Mot de passe
userSettings.passwordConfirm=Confirmez le mot de passe
userSettings.email=Courriel
userSettings.locale=Langue
userSettings.timeZone=Fuseau horaire

# ------------------------------------------------------------------ Weblog edit

weblogEdit.title.newEntry=Nouvelle publication
weblogEdit.subtitle.newEntry=Créez une nouvelle publication dans le blog <span>{0}</span>

weblogEdit.title.editEntry=Editer une publication
weblogEdit.subtitle.editEntry=Editer une publication existante du blog <span>{0}</span>

weblogEntry.pendingEntrySubject=\
Roller: une nouvelle publication est en attente de révision dans le blog "{0}" ({1})

weblogEntry.pendingEntryContent=L'utilisateur [{0}] a soumis une nouvelle publication. \
Veuillez réviser cette publication puis la publier, ou l'enregistrer en tant que brouillon \
afin que l'utilisateur [{1}] puisse l'éditer à nouveau.\
\
Lien vers la publication en attente :\
<{2}>

weblogEntry.notFound=La publication demandée est introuvable.

weblogEdit.summary=Sommaire (facultatif)
weblogEdit.content=Contenu

weblogEdit.category=Catégorie
weblogEdit.comments=Commentaires
weblogEdit.entryRemoved=Publication "{0}" effacée
weblogEdit.draft=Brouillon
weblogEdit.draftEntries=Brouillons récents
weblogEdit.deleteEntry=Effacer cette entrée
weblogEdit.fullPreviewMode=Aperçu complet
weblogEdit.locale=Langue
weblogEdit.pendingEntries=Publications en attente
weblogEdit.pending=En attente
weblogEdit.publishedEntries=Publications récentes
weblogEdit.post=Publier
weblogEdit.permaLink=Lien permanent
weblogEdit.published=Publié
weblogEdit.pubTime=Publié&nbsp;le&nbsp;
weblogEdit.save=Enregistrer comme brouillon
#FIXME
weblogEdit.scheduledEntries=Publications planifiées
weblogEdit.status=Status
weblogEdit.submitForReview=Soumettre à révision
weblogEdit.submittedForReview=Publication soumise à révision
weblogEdit.tags=Tags
weblogEdit.title=Titre
weblogEdit.unsaved=Non enregistré
weblogEdit.updateTime=dernière mise à jour

weblogEdit.allowComments=Autoriser les commentaires
weblogEdit.commentDays=pour
weblogEdit.unlimitedCommentDays=Temps illimité
weblogEdit.days3=3 jours
weblogEdit.days7=7 jours
weblogEdit.days14=14 jours
weblogEdit.days30=30 jours
weblogEdit.days60=60 jours
weblogEdit.days90=90 jours

weblogEdit.pluginsToApply=Modules à appliquer
weblogEdit.miscSettings=Paramètres avancés

weblogEdit.rightToLeft=Lecture de droite à gauche
weblogEdit.pinnedToMain=Collé à la page principale

weblogEdit.trackback=Trackback
weblogEdit.sendTrackback=Envoyer un trackback
weblogEdit.trackbackUrl=URL du trackback
weblogEdit.hasComments=Commentaires [{0}]

#FIXME ALLL THOSE DOWNTHERE - WHAT IS ENCLOSURE
weblogEdit.enclosureURL=Enclosure URL
weblogEdit.enclosureType=Type
weblogEdit.mediaCastFailedFetchingInfo=Unable to reach the enclosure. Check the hostname in the URL.
weblogEdit.mediaCastUrlMalformed=The enclosure URL was malformed.
weblogEdit.mediaCastResponseError=The enclosure server returned an error. Do you have the right URL?
weblogEdit.mediaCastLacksContentTypeOrLength=Unable to use enclosure URL. Server provided no content type or no length.

# -------------------------------------------------------- Weblog entries Pager

weblogEntriesPager.latest.home=Page principale
weblogEntriesPager.latest.next=Page suivante
weblogEntriesPager.latest.prev=Page précédente

weblogEntriesPager.single.home=Page principale
# argument ${0} is truncated title of weblog entry
weblogEntriesPager.single.next={0}
weblogEntriesPager.single.prev={0}

weblogEntriesPager.day.home=Page principale
# argument ${0} is date of next day
weblogEntriesPager.day.next=Page suivante pour la journée du {0}
weblogEntriesPager.day.prev=Page précédente pour la journée du {0}
weblogEntriesPager.day.nextCollection=Journée suivante ({0})
weblogEntriesPager.day.prevCollection=Journée précédente ({0})
weblogEntriesPager.day.dateFormat=d MMM yyyy

weblogEntriesPager.month.home=Page principale
# argument ${0} is date of next month
weblogEntriesPager.month.next=Page suivante pour le mois de {0}
weblogEntriesPager.month.prev=Page précedente pour le mois de {0}
weblogEntriesPager.month.nextCollection=Mois suivant ({0})
weblogEntriesPager.month.prevCollection=Mois précédent ({0})
weblogEntriesPager.month.dateFormat=MMM yyyy

# ---------------------------------------------------------- Weblog Entry Remove

weblogEntryRemove.removeWeblogEntry=Effacer cette publication
weblogEntryRemove.areYouSure=Etes vous certain(e) de vouloir effacer cette publication ?
weblogEntryRemove.entryTitle=Titre de la publication
weblogEntryRemove.entryId=Identifiant

# --------------------------------------------------- Weblog Entry Export/Import

weblogEntryQuery.title=Publications
weblogEntryQuery.subtitle=Rechercher et éditer les publications du blog <span>{0}</span>
weblogEntryQuery.tip=Sélectionnez une publication à partir de la liste ci-dessous \
ou utilisez un filtre pour rechercher des publications suivant une catégorie particulière, \
une date ou un status donné.

weblogEntryQuery.sidebarTitle=Filtrer les publications
weblogEntryQuery.sidebarDescription=\
Filtre les publications du blog par catégorie, date, et/ou status.

weblogEntryQuery.noneFound=Aucune publication ne correspond aux critères utilisés dans votre filtre.

weblogEntryQuery.label.startDate=Date de début
weblogEntryQuery.label.endDate=Date de fin
weblogEntryQuery.label.category=Catégorie
weblogEntryQuery.label.tags=Tags
weblogEntryQuery.label.text=Texte de recherche
#FIXME
weblogEntryQuery.label.status=Status
weblogEntryQuery.label.allEntries=Toutes les entrées
weblogEntryQuery.label.draftOnly=Brouillons seulement
weblogEntryQuery.label.publishedOnly=Entrées publiées seulement
weblogEntryQuery.label.pendingOnly=Entrées en attente seulement
weblogEntryQuery.label.scheduledOnly=Entrées planifiées seulement

weblogEntryQuery.view=Afficher
weblogEntryQuery.category=Catégorie
weblogEntryQuery.pubTime=Publié le
weblogEntryQuery.updateTime=Mise à jour
weblogEntryQuery.pending=En attente
weblogEntryQuery.draft=Brouillon

weblogEntryQuery.button.query=Filtrer
weblogEntryQuery.label.sortby=Trier par
weblogEntryQuery.label.pubTime=Date de publication
weblogEntryQuery.label.updateTime=Date de mise à jour
weblogEntryQuery.nowShowing={0} entrées affichées
weblogEntryQuery.prev=Page précédente
weblogEntryQuery.next=Page suivante

# ---------------------------------------------------------------------- Website

websiteSettings.title=Paramètres du blog
websiteSettings.subtitle=Gestion des paramètres du blog <span>{0}</span>
websiteSettings.tip=Vous pouvez changer le titre du blog, sa description ou commentaires \
ainsi que gérer les réferrants et les paramètres de prévention de spam.

# --- General settings

websiteSettings.generalSettings=Paramètres généraux
websiteSettings.websiteTitle=Titre
websiteSettings.emailAddress=Adresse de courriel du propriétaire du blog
websiteSettings.editor=Editeur de texte à utiliser
websiteSettings.entryDisplayCount=Nombre de publications à afficher sur la page principale
websiteSettings.active=Blog actif (celui-ci devrait être inclu dans les listes de la communauté)
websiteSettings.error.entryDisplayCount=Vous avez indiqué une valeur trop grande pour le \
'nombre de publications à afficher sur le blog'.


# --- i18n settings

websiteSettings.languageSettings=Paramètres d'internationalisation
websiteSettings.enableMultiLang=Je publie mon blog en plusieurs langues
websiteSettings.showAllLangs=Utiliser toutes les langues de publications sur la page principale.


# --- Comments

websiteSettings.commentSettings=Commentaires
websiteSettings.allowComments=Autoriser les commentaires sur ce blog
websiteSettings.moderateComments=Modération des commentaires
websiteSettings.emailComments=Envoyer les commentaires par courriel
websiteSettings.commentsOffForInactiveWeblog=Commentaires désactivés pour les blogs inactifs

# --- Default comments settings

websiteSettings.defaultCommentSettings=Paramètres par défaut pour les commentaires
websiteSettings.defaultAllowComments=Par défaut, autoriser les commentaires pour les nouvelles publications
websiteSettings.defaultCommentDays=Durée allouée par défaut pour autoriser les commentaires
websiteSettings.applyCommentDefaults=Appliquer les paramètres par défaut pour les commentaires \
des publications existantes (cette fois ci seulement)

# --- Weblog API

websiteSettings.bloggerApi=API clientes
websiteSettings.enableBloggerApi=Activer les API Blogger et MetaWeblog pour votre blog
websiteSettings.bloggerApiCategory=Catégorie à utiliser pour les publications reçues par l'API de Blogger

# --- Formatting

websiteSettings.formatting=Formatage

# --- Spam prevention

websiteSettings.spamPrevention=Prevention de spam
websiteSettings.ignoreUrls=Liste de mots ou expressions régulières à ajouter \
à la liste noire utilisée pour vérifier les commentaires, trackbacks et réferrants. \
Veuillez ajouter une seule expression ou mot par ligne.

websiteSettings.acceptedBlacklist={0} mots ou phrases et {1} expression(s) régulière(s) ajouté(s) à la liste noire.
websiteSettings.error.processingBlacklist=Une erreur est survenue durant la création de la liste noire : {0}

# --- Buttons

websiteSettings.savedChanges=Les changements de paramètres du blog ont été enregistrés.
websiteSettings.button.update=Enregistrer

# --- Remove weblog

websiteSettings.button.remove=Effacer le blog
websiteSettings.removeWebsiteHeading=Effacer le blog ?
websiteSettings.removeWebsite=Vous êtes le dernier contributeur de ce blog. Désirez vous effacer celui-ci ?
websiteSettings.removeWebsiteWarning=\
<b>ATTENTION</b>: effacer un blog effacera aussi son contenu <br /> \
ainsi que tous ses signets et paramètres. <b>Effacer un blog est IRREVERSIBLE</b>.

websiteRemove.title=Confirmer l'effacement du blog
websiteRemove.subtitle=Effacer un blog est <b>IRREVERSIBLE</b>
websiteRemove.youSure=Etes vous certain de vouloir effacer le blog [{0}] ?
websiteRemove.websiteId=Identifiant du blog
websiteRemove.websiteName=Nom du blog

websiteSettings.label1=Formatage d'entrées à utiliser par défaut
websiteSettings.label2=(les différents formatages sont appliqués dans l'ordre indiqué)

# ------------------------------------------------------------- Welcome new user

welcome.title=Bienvenue sur Roller
welcome.accountCreated=Votre nouveau compte utilisateur a été crée.
welcome.clickHere=Cliquez ici
welcome.toLoginAndPost=pour vous connecter.

# ----------------------------------------------------------------- Your profile

yourProfile.title=Votre profil
userSettings.tip.username=Vous ne pouvez pas changer nom d'utilisateur.

# ---------------------------------------------------------------- Your Weblogs

yourWebsites.title=Menu principal

yourWebsites.actions=Actions

yourWebsites.prompt.noBlog=Vous avez un compte, mais pas de blog. Désirez vous
yourWebsites.createOne=en créer un ?

yourWebsites.prompt.hasBlog=Choisissez un blog à éditer, gérer ou configurer.

yourWebsites.accept=Accepter
yourWebsites.decline=Décliner

#FIXME
yourWebsites.resign=Démissionner
yourWebsites.permission=Permission
#FIXME
yourWebsites.confirmResignation=Etes vous certain de vouloir démissionner de ce blog ?
yourWebsites.weblog=Lien

yourWebsites.newEntry=Nouvelle&nbsp;publication
yourWebsites.editEntries=Publications
yourWebsites.manageComments=Commentaires
yourWebsites.manage=Paramètres

yourWebsites.createWeblog=Créer un nouveau blog
yourWebsites.createWeblog.desc=\
Vous sentez que vous avez d'autres choses à dire ? Peut-être vous faut-il un autre blog ?

yourWebsites.editProfile=Edition du profil utilisateur
yourWebsites.editProfile.desc=Changer les informations de contact ou la langue.

yourWebsites.globalAdmin=Administration du serveur
yourWebsites.globalAdmin.desc=Apporter des changements à la configuration générale du site.

yourWebsites.planetAdmin=Administration Planet
yourWebsites.planetAdmin.desc=Gère l'aggrégateur Planet. Vous permet d'ajouter des fils d'information, \
organiser les groupes ou modifier la configuration.


yourWebsites.invitations=Invitations
yourWebsites.invitationsPrompt=Vous avez une ou plusieurs invitations en attente. Vous pouvez \
choisir de les accepter ou les décliner.
yourWebsites.youAreInvited=Vous êtes invité à joindre le blog [{0}] -

yourWebsites.declined=Vous avez décliné l'invitation à joindre le blog [{0}]
yourWebsites.resigned=Vous avez démissionné du blog [{0}]
yourWebsites.permNotFound=Désolé, cette invitation vient d'être révoquée.

yourWebsites.userCount=Membres
yourWebsites.todaysHits=Visites aujourd'hui

# ---------------------------------------------------------------- Activating User Account with E-mail

error.activate.user.missingActivationCode=Le code d'activation est manquant.
error.activate.user.invalidActivationCode=\
Code d'activation incorrect. Vous avez probablement déjà activé votre compte. \
Dans le cas contraire, veuillez contacter l'administrateur de votre Roller pour assistance.

user.account.activation.mail.subject=Roller : code d'activation pour votre compte utilisateur
user.account.activation.mail.content=\
<html><body style=\"background: white; color: black; font-size: 12px\"> \
<p>Pour activer votre nouvel utilisateur Roller '[{1}]', veuillez cliquer sur le lien ci-dessous :</p> \
<p><a href=\"{2}\">{2}</a></p></body></html>

welcome.user.account.activated=Votre compte utilisateur est activé.
welcome.user.account.not.activated=Afin de vous connecter sur le système, vous devez activer votre compte \
utilisateur en cliquant sur le lien fourni dans le courriel qui vous a été envoyé lors de votre inscription.
