]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - locale/fr/LC_MESSAGES/statusnet.po
Typo fix: http://status.net/open-source/issues/2976
[quix0rs-gnu-social.git] / locale / fr / LC_MESSAGES / statusnet.po
index 683a2bd6d02d46ded29ef2870ac5fa6eb43a1b2e..32c774597d95155feb1614ce3711eeedde593651 100644 (file)
@@ -7,6 +7,7 @@
 # Author: Isoph
 # Author: Jean-Frédéric
 # Author: Julien C
+# Author: Lockal
 # Author: McDutchie
 # Author: Patcito
 # Author: Peter17
@@ -20,148 +21,184 @@ msgid ""
 msgstr ""
 "Project-Id-Version: StatusNet - Core\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-09-28 17:24+0000\n"
-"PO-Revision-Date: 2010-09-28 17:25:45+0000\n"
+"POT-Creation-Date: 2010-12-16 15:08+0000\n"
+"PO-Revision-Date: 2010-12-16 15:10:42+0000\n"
 "Language-Team: French <http://translatewiki.net/wiki/Portal:fr>\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r73920); Translate extension (2010-09-17)\n"
+"X-Generator: MediaWiki 1.18alpha (r78478); Translate extension (2010-09-17)\n"
 "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
 "X-Language-Code: fr\n"
 "X-Message-Group: #out-statusnet-core\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-POT-Import-Date: 1285-66-16 72::+0000\n"
+"X-POT-Import-Date: 2010-11-30 20:43:14+0000\n"
 
-#. TRANS: Page title
+#. TRANS: Page title for Access admin panel that allows configuring site access.
 #. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:363
+#: actions/accessadminpanel.php:53 lib/adminpanelaction.php:363
 msgid "Access"
 msgstr "Accès"
 
-#. TRANS: Page notice
-#: actions/accessadminpanel.php:67
+#. TRANS: Page notice.
+#: actions/accessadminpanel.php:64
 msgid "Site access settings"
 msgstr "Paramètres d’accès au site"
 
 #. TRANS: Form legend for registration form.
-#: actions/accessadminpanel.php:161
+#: actions/accessadminpanel.php:151
 msgid "Registration"
 msgstr "Inscription"
 
-#. TRANS: Checkbox instructions for admin setting "Private"
-#: actions/accessadminpanel.php:165
+#. TRANS: Checkbox instructions for admin setting "Private".
+#: actions/accessadminpanel.php:155
 msgid "Prohibit anonymous users (not logged in) from viewing site?"
 msgstr "Interdire aux utilisateurs anonymes (non connectés) de voir le site ?"
 
 #. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
-#: actions/accessadminpanel.php:167
+#: actions/accessadminpanel.php:157
 msgctxt "LABEL"
 msgid "Private"
 msgstr "Privé"
 
-#. TRANS: Checkbox instructions for admin setting "Invite only"
-#: actions/accessadminpanel.php:174
+#. TRANS: Checkbox instructions for admin setting "Invite only".
+#: actions/accessadminpanel.php:164
 msgid "Make registration invitation only."
 msgstr "Autoriser l’inscription sur invitation seulement."
 
 #. TRANS: Checkbox label for configuring site as invite only.
-#: actions/accessadminpanel.php:176
+#: actions/accessadminpanel.php:166
 msgid "Invite only"
 msgstr "Sur invitation uniquement"
 
-#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
-#: actions/accessadminpanel.php:183
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations).
+#: actions/accessadminpanel.php:173
 msgid "Disable new registrations."
 msgstr "Désactiver les nouvelles inscriptions."
 
 #. TRANS: Checkbox label for disabling new user registrations.
-#: actions/accessadminpanel.php:185
+#: actions/accessadminpanel.php:175
 msgid "Closed"
 msgstr "Fermé"
 
-#. TRANS: Title / tooltip for button to save access settings in site admin panel
-#: actions/accessadminpanel.php:202
+#. TRANS: Title for button to save access settings in site admin panel.
+#: actions/accessadminpanel.php:191
 msgid "Save access settings"
 msgstr "Sauvegarder les paramètres d’accès"
 
+#. TRANS: Tooltip for button to save access settings in site admin panel.
 #. TRANS: Button label to save e-mail preferences.
 #. TRANS: Button label to save IM preferences.
+#. TRANS: Button text for saving "Other settings" in profile.
+#. TRANS: Button text to store form data in the Paths admin panel.
+#. TRANS: Button to save input in profile settings.
+#. TRANS: Button text for saving site notice in admin panel.
 #. TRANS: Button label to save SMS preferences.
+#. TRANS: Save button for settings for a profile in a subscriptions list.
+#. TRANS: Button text to save user settings in user admin panel.
 #. TRANS: Button label in the "Edit application" form.
-#: actions/accessadminpanel.php:203 actions/emailsettings.php:228
-#: actions/imsettings.php:187 actions/smssettings.php:209
-#: lib/applicationeditform.php:354
+#. TRANS: Button text on profile design page to save settings.
+#: actions/accessadminpanel.php:193 actions/emailsettings.php:254
+#: actions/imsettings.php:187 actions/othersettings.php:134
+#: actions/pathsadminpanel.php:512 actions/profilesettings.php:201
+#: actions/sitenoticeadminpanel.php:197 actions/smssettings.php:209
+#: actions/subscriptions.php:262 actions/useradminpanel.php:298
+#: lib/applicationeditform.php:355 lib/designsettings.php:270
+#: lib/groupeditform.php:207
 msgctxt "BUTTON"
 msgid "Save"
 msgstr "Enregistrer"
 
+#. TRANS: Server error when page not found (404).
 #. TRANS: Server error when page not found (404)
 #: actions/all.php:68 actions/public.php:98 actions/replies.php:93
 #: actions/showfavorites.php:138 actions/tag.php:52
 msgid "No such page."
 msgstr "Page non trouvée."
 
+#. TRANS: Client error when user not found for an action.
+#. TRANS: Client error when user not found for an rss related action.
+#. TRANS: Client error displayed when no existing user is provided for a user's delivery device setting.
+#. TRANS: Client error displayed if a user could not be found.
+#. TRANS: Client error when user not found updating a profile background image.
+#. TRANS: Client error displayed updating profile image without having a user object.
+#. TRANS: Client error when user not found for an API action to remove a block for a user.
+#. TRANS: Client error given when a user was not found (404).
+#. TRANS: Client error when user not found for an API direct message action.
+#. TRANS: Client error given when a user was not found (404).
+#. TRANS: Client error displayed when checking group membership for a non-existing user.
+#. TRANS: Client error displayed when trying to have a non-existing user join a group.
+#. TRANS: Client error displayed when trying to have a non-existing user leave a group.
+#. TRANS: Client error displayed when updating a status for a non-existing user.
+#. TRANS: Client error displayed when requesting a list of followers for a non-existing user.
+#. TRANS: Client error displayed when requesting most recent favourite notices by a user for a non-existing user.
+#. TRANS: Client error displayed when requesting dents of a user and friends for a user that does not exist.
+#. TRANS: Client error displayed when requesting most recent dents by user and friends for a non-existing user.
+#. TRANS: Client error displayed when requesting most recent mentions for a non-existing user.
+#. TRANS: Client error displayed requesting most recent notices for a non-existing user.
+#. TRANS: Client error displayed trying to get an avatar for a non-existing user.
 #. TRANS: Error text shown when trying to send a direct message to a user that does not exist.
-#: actions/all.php:79 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:115
-#: actions/apiaccountupdateprofile.php:106
-#: actions/apiaccountupdateprofilebackgroundimage.php:117
-#: actions/apiaccountupdateprofileimage.php:106 actions/apiblockcreate.php:98
-#: actions/apiblockdestroy.php:97 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:114
-#: actions/apigroupismember.php:91 actions/apigroupjoin.php:101
-#: actions/apigroupleave.php:101 actions/apigrouplist.php:73
-#: actions/apistatusesupdate.php:230 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
-#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
-#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
-#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
-#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
-#: actions/otp.php:76 actions/remotesubscribe.php:145
-#: actions/remotesubscribe.php:154 actions/replies.php:73
-#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:498 lib/galleryaction.php:59
+#: actions/all.php:80 actions/allrss.php:69
+#: actions/apiaccountupdatedeliverydevice.php:110
+#: actions/apiaccountupdateprofile.php:103
+#: actions/apiaccountupdateprofilebackgroundimage.php:118
+#: actions/apiaccountupdateprofileimage.php:104 actions/apiatomservice.php:60
+#: actions/apiblockcreate.php:95 actions/apiblockdestroy.php:94
+#: actions/apidirectmessage.php:75 actions/apidirectmessagenew.php:72
+#: actions/apigroupcreate.php:111 actions/apigroupismember.php:89
+#: actions/apigroupjoin.php:98 actions/apigroupleave.php:98
+#: actions/apigrouplist.php:70 actions/apistatusesupdate.php:230
+#: actions/apisubscriptions.php:85 actions/apitimelinefavorites.php:70
+#: actions/apitimelinefriends.php:173 actions/apitimelinehome.php:78
+#: actions/apitimelinementions.php:77 actions/apitimelineuser.php:79
+#: actions/avatarbynickname.php:79 actions/favoritesrss.php:74
+#: actions/foaf.php:40 actions/foaf.php:58 actions/hcard.php:67
+#: actions/microsummary.php:62 actions/newmessage.php:116 actions/otp.php:76
+#: actions/remotesubscribe.php:145 actions/remotesubscribe.php:154
+#: actions/replies.php:73 actions/repliesrss.php:38 actions/rsd.php:116
+#: actions/showfavorites.php:105 actions/userbyid.php:74
+#: actions/usergroups.php:93 actions/userrss.php:40 actions/userxrd.php:59
+#: actions/xrds.php:71 lib/command.php:497 lib/galleryaction.php:59
 #: lib/mailbox.php:82 lib/profileaction.php:77
 msgid "No such user."
 msgstr "Utilisateur non trouvé."
 
 #. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:90
+#: actions/all.php:91
 #, php-format
 msgid "%1$s and friends, page %2$d"
 msgstr "%1$s et ses amis, page %2$d"
 
-#. TRANS: Page title. %1$s is user nickname
-#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Page title. %s is user nickname
+#. TRANS: H1 text for page. %s is a user nickname.
 #. TRANS: Message is used as link title. %s is a user nickname.
-#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
-#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
-#: lib/personalgroupnav.php:100
+#. TRANS: Timeline title for user and friends. %s is a user nickname.
+#: actions/all.php:94 actions/all.php:191 actions/allrss.php:117
+#: actions/apitimelinefriends.php:207 actions/apitimelinehome.php:113
+#: lib/personalgroupnav.php:103
 #, php-format
 msgid "%s and friends"
 msgstr "%s et ses amis"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:107
+#. TRANS: %s is user nickname.
+#: actions/all.php:108
 #, php-format
 msgid "Feed for friends of %s (RSS 1.0)"
 msgstr "Flux pour les amis de %s (RSS 1.0)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:116
+#. TRANS: %s is user nickname.
+#: actions/all.php:117
 #, php-format
 msgid "Feed for friends of %s (RSS 2.0)"
 msgstr "Flux pour les amis de %s (RSS 2.0)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:125
+#. TRANS: %s is user nickname.
+#: actions/all.php:126
 #, php-format
 msgid "Feed for friends of %s (Atom)"
 msgstr "Flux pour les amis de %s (Atom)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:138
+#. TRANS: Empty list message. %s is a user nickname.
+#: actions/all.php:139
 #, php-format
 msgid ""
 "This is the timeline for %s and friends but no one has posted anything yet."
@@ -169,7 +206,9 @@ msgstr ""
 "Ceci est le flux pour %s et ses amis mais personne n’a rien posté pour le "
 "moment."
 
-#: actions/all.php:143
+#. TRANS: Encouragement displayed on logged in user's empty timeline.
+#. TRANS: This message contains Markdown links. Keep "](" together.
+#: actions/all.php:146
 #, php-format
 msgid ""
 "Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -178,8 +217,9 @@ msgstr ""
 "Essayez de vous abonner à plus d’utilisateurs, de vous [inscrire à un groupe]"
 "(%%action.groups%%) ou de poster quelque chose vous-même."
 
-#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:146
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@".
+#. TRANS: This message contains Markdown links. Keep "](" together.
+#: actions/all.php:150
 #, php-format
 msgid ""
 "You can try to [nudge %1$s](../%2$s) from their profile or [post something "
@@ -189,7 +229,11 @@ msgstr ""
 "profil ou [poster quelque chose à son intention](%%%%action.newnotice%%%%?"
 "status_textarea=%3$s)."
 
-#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#. TRANS: Encoutagement displayed on empty timeline user pages for anonymous users.
+#. TRANS: %s is a user nickname. This message contains Markdown links. Keep "](" together.
+#. TRANS: Second sentence of empty message for anonymous users. %s is a user nickname.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/all.php:155 actions/replies.php:210 actions/showstream.php:227
 #, php-format
 msgid ""
 "Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
@@ -198,61 +242,80 @@ msgstr ""
 "Pourquoi ne pas [créer un compte](%%%%action.register%%%%) et faire ensuite "
 "un clin d’œil à %s ou poster un avis à son intention."
 
-#. TRANS: H1 text
-#: actions/all.php:182
+#. TRANS: H1 text for page when viewing a list for self.
+#: actions/all.php:188
 msgid "You and friends"
 msgstr "Vous et vos amis"
 
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
 #. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
-#: actions/allrss.php:121 actions/apitimelinefriends.php:216
-#: actions/apitimelinehome.php:122
+#: actions/allrss.php:122 actions/apitimelinefriends.php:213
+#: actions/apitimelinehome.php:119
 #, php-format
 msgid "Updates from %1$s and friends on %2$s!"
 msgstr "Statuts de %1$s et ses amis dans %2$s!"
 
-#: actions/apiaccountratelimitstatus.php:72
-#: actions/apiaccountupdatedeliverydevice.php:95
-#: actions/apiaccountupdateprofile.php:98
-#: actions/apiaccountupdateprofilebackgroundimage.php:95
-#: actions/apiaccountupdateprofilecolors.php:119
-#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:101 actions/apifavoritedestroy.php:102
-#: actions/apifriendshipscreate.php:101 actions/apifriendshipsdestroy.php:101
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:140
-#: actions/apigroupismember.php:115 actions/apigroupjoin.php:157
-#: actions/apigroupleave.php:143 actions/apigrouplist.php:137
-#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
-#: actions/apigroupshow.php:116 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
-#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
-#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
-#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
-#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
-#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+#. TRANS: Client error displayed handling a non-existing API method.
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#. TRANS: Client error displayed trying to execute an unknown API method updating profile colours.
+#. TRANS: Client error displayed trying to execute an unknown API method verifying user credentials.
+#. TRANS: Client error given when an API method was not found (404).
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#. TRANS: Client error displayed trying to execute an unknown API method showing friendship.
+#. TRANS: Client error given when an API method was not found (404).
+#. TRANS: Client error displayed trying to execute an unknown API method showing group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method joining a group.
+#. TRANS: Client error displayed trying to execute an unknown API method leaving a group.
+#. TRANS: Client error displayed trying to execute an unknown API method checking group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method listing the latest 20 groups.
+#. TRANS: Client error displayed trying to execute an unknown API method showing group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method showing a group.
+#. TRANS: Client error displayed trying to execute an unknown API method testing API connectivity.
+#. TRANS: Client error displayed trying to execute an unknown API method deleting a status.
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#: actions/apiaccountratelimitstatus.php:69
+#: actions/apiaccountupdatedeliverydevice.php:92
+#: actions/apiaccountupdateprofile.php:94
+#: actions/apiaccountupdateprofilebackgroundimage.php:92
+#: actions/apiaccountupdateprofilecolors.php:115
+#: actions/apiaccountverifycredentials.php:68 actions/apidirectmessage.php:157
+#: actions/apifavoritecreate.php:98 actions/apifavoritedestroy.php:98
+#: actions/apifriendshipscreate.php:99 actions/apifriendshipsdestroy.php:99
+#: actions/apifriendshipsshow.php:124 actions/apigroupcreate.php:138
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:160
+#: actions/apigroupleave.php:145 actions/apigrouplist.php:134
+#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:105
+#: actions/apigroupshow.php:114 actions/apihelptest.php:84
+#: actions/apistatusesdestroy.php:101 actions/apistatusesretweets.php:110
+#: actions/apistatusesshow.php:105 actions/apistatusnetconfig.php:138
+#: actions/apistatusnetversion.php:91 actions/apisubscriptions.php:109
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:268
+#: actions/apitimelinegroup.php:151 actions/apitimelinehome.php:173
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:239
+#: actions/apitimelineretweetedtome.php:118
+#: actions/apitimelineretweetsofme.php:150 actions/apitimelinetag.php:159
+#: actions/apitimelineuser.php:206 actions/apiusershow.php:100
 msgid "API method not found."
 msgstr "Méthode API non trouvée !"
 
 #. TRANS: Client error message. POST is a HTTP command. It should not be translated.
 #. TRANS: Client error. POST is a HTTP command. It should not be translated.
-#: actions/apiaccountupdatedeliverydevice.php:87
-#: actions/apiaccountupdateprofile.php:90
-#: actions/apiaccountupdateprofilebackgroundimage.php:87
-#: actions/apiaccountupdateprofilecolors.php:111
-#: actions/apiaccountupdateprofileimage.php:85 actions/apiblockcreate.php:90
-#: actions/apiblockdestroy.php:89 actions/apidirectmessagenew.php:110
-#: actions/apifavoritecreate.php:92 actions/apifavoritedestroy.php:93
-#: actions/apifriendshipscreate.php:92 actions/apifriendshipsdestroy.php:92
-#: actions/apigroupcreate.php:106 actions/apigroupjoin.php:93
-#: actions/apigroupleave.php:93 actions/apimediaupload.php:68
-#: actions/apistatusesretweet.php:66 actions/apistatusesupdate.php:199
+#: actions/apiaccountupdatedeliverydevice.php:83
+#: actions/apiaccountupdateprofile.php:85
+#: actions/apiaccountupdateprofilebackgroundimage.php:83
+#: actions/apiaccountupdateprofilecolors.php:106
+#: actions/apiaccountupdateprofileimage.php:80 actions/apiblockcreate.php:87
+#: actions/apiblockdestroy.php:85 actions/apidirectmessagenew.php:107
+#: actions/apifavoritecreate.php:88 actions/apifavoritedestroy.php:88
+#: actions/apifriendshipscreate.php:89 actions/apifriendshipsdestroy.php:89
+#: actions/apigroupcreate.php:102 actions/apigroupjoin.php:89
+#: actions/apigroupleave.php:89 actions/apimediaupload.php:66
+#: actions/apistatusesretweet.php:63 actions/apistatusesupdate.php:194
 msgid "This method requires a POST."
 msgstr "Ce processus requiert un POST."
 
-#: actions/apiaccountupdatedeliverydevice.php:107
+#. TRANS: Client error displayed when no valid device parameter is provided for a user's delivery device setting.
+#: actions/apiaccountupdatedeliverydevice.php:103
 msgid ""
 "You must specify a parameter named 'device' with a value of one of: sms, im, "
 "none."
@@ -260,364 +323,533 @@ msgstr ""
 "Vous devez spécifier un paramètre « device » avec une des valeurs suivantes : "
 "sms, im, none."
 
-#: actions/apiaccountupdatedeliverydevice.php:134
+#. TRANS: Server error displayed when a user's delivery device cannot be updated.
+#: actions/apiaccountupdatedeliverydevice.php:130
 msgid "Could not update user."
 msgstr "Impossible de mettre à jour l’utilisateur."
 
-#: actions/apiaccountupdateprofile.php:113
-#: actions/apiaccountupdateprofilebackgroundimage.php:195
-#: actions/apiaccountupdateprofilecolors.php:186
-#: actions/apiaccountupdateprofileimage.php:131 actions/apiusershow.php:108
-#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#. TRANS: Client error displayed if a user profile could not be found.
+#. TRANS: Client error displayed when a user has no profile.
+#. TRANS: Client error displayed a user has no profile updating profile colours.
+#. TRANS: Client error displayed if a user profile could not be found updating a profile image.
+#. TRANS: Client error displayed when requesting user information for a user without a profile.
+#. TRANS: Client error displayed trying to get an avatar for a user without a profile.
+#: actions/apiaccountupdateprofile.php:111
+#: actions/apiaccountupdateprofilebackgroundimage.php:199
+#: actions/apiaccountupdateprofilecolors.php:183
+#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:85 actions/foaf.php:65 actions/hcard.php:74
 #: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
 #: lib/profileaction.php:84
 msgid "User has no profile."
 msgstr "Aucun profil ne correspond à cet utilisateur."
 
-#: actions/apiaccountupdateprofile.php:148
+#. TRANS: Server error displayed if a user profile could not be saved.
+#: actions/apiaccountupdateprofile.php:147
 msgid "Could not save profile."
 msgstr "Impossible d’enregistrer le profil."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:109
-#: actions/apiaccountupdateprofileimage.php:98 actions/apimediaupload.php:81
-#: actions/apistatusesupdate.php:213 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:123 actions/editapplication.php:118
-#: actions/newapplication.php:101 actions/newnotice.php:94
-#: lib/designsettings.php:283
+#. TRANS: Client error displayed when the number of bytes in a POST request exceeds a limit.
+#. TRANS: %s is the number of bytes of the CONTENT_LENGTH.
+#. TRANS: Form validation error in design settings form. POST should remain untranslated.
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:95 actions/apimediaupload.php:81
+#: actions/apistatusesupdate.php:210 actions/avatarsettings.php:269
+#: actions/designadminpanel.php:125 actions/editapplication.php:121
+#: actions/newapplication.php:104 actions/newnotice.php:95
+#: lib/designsettings.php:298
 #, php-format
 msgid ""
+"The server was unable to handle that much POST data (%s byte) due to its "
+"current configuration."
+msgid_plural ""
 "The server was unable to handle that much POST data (%s bytes) due to its "
 "current configuration."
-msgstr ""
+msgstr[0] ""
+"Le serveur n’a pas pu gérer autant de données de POST (%s octet) en raison "
+"de sa configuration actuelle."
+msgstr[1] ""
 "Le serveur n’a pas pu gérer autant de données de POST (%s octets) en raison "
 "de sa configuration actuelle."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:137
-#: actions/apiaccountupdateprofilebackgroundimage.php:147
-#: actions/apiaccountupdateprofilecolors.php:165
-#: actions/apiaccountupdateprofilecolors.php:175
+#. TRANS: Client error displayed when saving design settings fails because of an empty id.
+#. TRANS: Client error displayed when saving design settings fails because of an empty result.
+#. TRANS: Client error displayed when a database error occurs inserting profile colours.
+#. TRANS: Client error displayed when a database error occurs updating profile colours.
+#: actions/apiaccountupdateprofilebackgroundimage.php:138
+#: actions/apiaccountupdateprofilebackgroundimage.php:149
+#: actions/apiaccountupdateprofilecolors.php:160
+#: actions/apiaccountupdateprofilecolors.php:171
 #: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
 #: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
 #: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
 msgid "Unable to save your design settings."
 msgstr "Impossible de sauvegarder les parmètres de la conception."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:188
-#: actions/apiaccountupdateprofilecolors.php:143
+#. TRANS: Error displayed when updating design settings fails.
+#. TRANS: Client error displayed when a database error occurs updating profile colours.
+#: actions/apiaccountupdateprofilebackgroundimage.php:191
+#: actions/apiaccountupdateprofilecolors.php:139
 msgid "Could not update your design."
 msgstr "Impossible de mettre à jour votre conception."
 
-#: actions/apiblockcreate.php:106
+#: actions/apiatomservice.php:86
+msgid "Main"
+msgstr "Principal"
+
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/apiatomservice.php:93 actions/grouprss.php:139
+#: actions/userrss.php:94 lib/atomgroupnoticefeed.php:63
+#: lib/atomusernoticefeed.php:68
+#, php-format
+msgid "%s timeline"
+msgstr "Activité de %s"
+
+#. TRANS: Header for subscriptions overview for a user (first page).
+#. TRANS: %s is a user nickname.
+#: actions/apiatomservice.php:103 actions/atompubsubscriptionfeed.php:147
+#: actions/subscriptions.php:51
+#, php-format
+msgid "%s subscriptions"
+msgstr "Abonnements de %s"
+
+#: actions/apiatomservice.php:113 actions/atompubfavoritefeed.php:142
+#, fuzzy, php-format
+msgid "%s favorites"
+msgstr "Favoris"
+
+#: actions/apiatomservice.php:123
+#, fuzzy, php-format
+msgid "%s memberships"
+msgstr "Membres du groupe %s"
+
+#. TRANS: Client error displayed when users try to block themselves.
+#: actions/apiblockcreate.php:104
 msgid "You cannot block yourself!"
 msgstr "Vous ne pouvez pas vous bloquer vous-même !"
 
-#: actions/apiblockcreate.php:127
+#. TRANS: Server error displayed when blocking a user has failed.
+#: actions/apiblockcreate.php:126
 msgid "Block user failed."
 msgstr "Le blocage de l’utilisateur a échoué."
 
-#: actions/apiblockdestroy.php:115
+#. TRANS: Server error displayed when unblocking a user has failed.
+#: actions/apiblockdestroy.php:113
 msgid "Unblock user failed."
 msgstr "Le déblocage de l’utilisateur a échoué."
 
-#: actions/apidirectmessage.php:89
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:88
 #, php-format
 msgid "Direct messages from %s"
 msgstr "Messages direct depuis %s"
 
+#. TRANS: Subtitle. %s is a user nickname.
 #: actions/apidirectmessage.php:93
 #, php-format
 msgid "All the direct messages sent from %s"
 msgstr "Tous les messages directs envoyés par %s"
 
-#: actions/apidirectmessage.php:101
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:102
 #, php-format
 msgid "Direct messages to %s"
 msgstr "Messages directs envoyés à %s"
 
-#: actions/apidirectmessage.php:105
+#. TRANS: Subtitle. %s is a user nickname.
+#: actions/apidirectmessage.php:107
 #, php-format
 msgid "All the direct messages sent to %s"
 msgstr "Tous les messages directs envoyés à %s"
 
-#: actions/apidirectmessagenew.php:119
+#. TRANS: Client error displayed when no message text was submitted (406).
+#: actions/apidirectmessagenew.php:117
 msgid "No message text!"
 msgstr "Message sans texte !"
 
-#: actions/apidirectmessagenew.php:128 actions/newmessage.php:150
+#. TRANS: Client error displayed when message content is too long.
+#. TRANS: %d is the maximum number of characters for a message.
+#. TRANS: Form validation error displayed when message content is too long.
+#. TRANS: %d is the maximum number of characters for a message.
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:152
 #, php-format
-msgid "That's too long. Max message size is %d chars."
-msgstr "C’est trop long ! La taille maximale du message est de %d caractères."
+msgid "That's too long. Maximum message size is %d character."
+msgid_plural "That's too long. Maximum message size is %d characters."
+msgstr[0] "C’est trop long ! La taille du message est limitée à %d caractère"
+msgstr[1] "C’est trop long ! La taille du message est limitée à %d caractères"
 
+#. TRANS: Client error displayed if a recipient user could not be found (403).
 #: actions/apidirectmessagenew.php:139
 msgid "Recipient user not found."
 msgstr "Destinataire non trouvé."
 
-#: actions/apidirectmessagenew.php:143
+#. TRANS: Client error displayed trying to direct message another user who's not a friend (403).
+#: actions/apidirectmessagenew.php:144
 msgid "Can't send direct messages to users who aren't your friend."
 msgstr ""
 "Vous ne pouvez envoyer des messages personnels qu’aux utilisateurs inscrits "
 "comme amis."
 
-#: actions/apifavoritecreate.php:110 actions/apifavoritedestroy.php:111
+#. TRANS: Client error displayed trying to direct message self (403).
+#: actions/apidirectmessagenew.php:154
+msgid ""
+"Do not send a message to yourself; just say it to yourself quietly instead."
+msgstr ""
+"N’envoyez pas de message à vous-même ; dites-le vous plutôt dans votre "
+"tête..."
+
+#. TRANS: Client error displayed when requesting a status with a non-existing ID.
+#. TRANS: Client error displayed when trying to remove a favourite with an invalid ID.
+#. TRANS: Client error displayed trying to delete a status with an invalid ID.
+#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:108
 #: actions/apistatusesdestroy.php:121
 msgid "No status found with that ID."
 msgstr "Aucun statut trouvé avec cet identifiant. "
 
-#: actions/apifavoritecreate.php:121
+#. TRANS: Client error displayed when trying to mark a notice favourite that already is a favourite.
+#: actions/apifavoritecreate.php:120
 msgid "This status is already a favorite."
 msgstr "Cet avis est déjà un favori."
 
+#. TRANS: Client error displayed when marking a notice as favourite fails.
 #. TRANS: Error message text shown when a favorite could not be set.
-#: actions/apifavoritecreate.php:132 actions/favor.php:84 lib/command.php:296
+#: actions/apifavoritecreate.php:132 actions/favor.php:84 lib/command.php:294
 msgid "Could not create favorite."
 msgstr "Impossible de créer le favori."
 
-#: actions/apifavoritedestroy.php:124
+#. TRANS: Client error displayed when trying to remove a favourite that was not a favourite.
+#: actions/apifavoritedestroy.php:122
 msgid "That status is not a favorite."
 msgstr "Cet avis n’est pas un favori."
 
-#: actions/apifavoritedestroy.php:136 actions/disfavor.php:87
+#. TRANS: Client error displayed when removing a favourite has failed.
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
 msgid "Could not delete favorite."
 msgstr "Impossible de supprimer le favori."
 
-#: actions/apifriendshipscreate.php:110
+#. TRANS: Client error displayed when trying follow who's profile could not be found.
+#: actions/apifriendshipscreate.php:109
 msgid "Could not follow user: profile not found."
 msgstr "Impossible de suivre l’utilisateur : profil non trouvé."
 
-#: actions/apifriendshipscreate.php:119
+#. TRANS: Client error displayed when trying to follow a user that's already being followed.
+#. TRANS: %s is the nickname of the user that is already being followed.
+#: actions/apifriendshipscreate.php:120
 #, php-format
 msgid "Could not follow user: %s is already on your list."
 msgstr "Impossible de suivre l’utilisateur : %s est déjà dans votre liste."
 
-#: actions/apifriendshipsdestroy.php:110
+#. TRANS: Client error displayed when trying to unfollow a user that cannot be found.
+#: actions/apifriendshipsdestroy.php:109
 msgid "Could not unfollow user: User not found."
 msgstr "Impossible de ne plus suivre l’utilisateur : utilisateur non trouvé."
 
+#. TRANS: Client error displayed when trying to unfollow self.
 #: actions/apifriendshipsdestroy.php:121
 msgid "You cannot unfollow yourself."
 msgstr "Vous ne pouvez pas ne plus vous suivre vous-même."
 
-#: actions/apifriendshipsexists.php:91
-msgid "Two valid IDs or screen_names must be supplied."
-msgstr "Vous devez fournir deux identifiants ou pseudonymes."
+#. TRANS: Client error displayed when supplying invalid parameters to an API call checking if a friendship exists.
+#: actions/apifriendshipsexists.php:88
+msgid "Two valid IDs or nick names must be supplied."
+msgstr "Vous devez fournir deux identifiants ou pseudonymes valides."
 
-#: actions/apifriendshipsshow.php:134
+#. TRANS: Client error displayed when a source user could not be determined showing friendship.
+#: actions/apifriendshipsshow.php:131
 msgid "Could not determine source user."
 msgstr "Impossible de déterminer l’utilisateur source."
 
-#: actions/apifriendshipsshow.php:142
+#. TRANS: Client error displayed when a target user could not be determined showing friendship.
+#: actions/apifriendshipsshow.php:140
 msgid "Could not find target user."
 msgstr "Impossible de trouver l’utilisateur cible."
 
-#: actions/apigroupcreate.php:168 actions/editgroup.php:186
-#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:212
-msgid "Nickname must have only lowercase letters and numbers and no spaces."
-msgstr ""
-"Les pseudos ne peuvent contenir que des caractères minuscules et des "
-"chiffres, sans espaces."
-
-#: actions/apigroupcreate.php:177 actions/editgroup.php:190
-#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:215
+#. TRANS: Client error trying to create a group with a nickname this is already in use.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:156 actions/editgroup.php:189
+#: actions/newgroup.php:129 actions/profilesettings.php:277
+#: actions/register.php:214
 msgid "Nickname already in use. Try another one."
 msgstr "Pseudo déjà utilisé. Essayez-en un autre."
 
-#: actions/apigroupcreate.php:184 actions/editgroup.php:193
-#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:217
+#. TRANS: Client error in form for group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:164 actions/editgroup.php:193
+#: actions/newgroup.php:133 actions/profilesettings.php:247
+#: actions/register.php:216
 msgid "Not a valid nickname."
 msgstr "Pseudo invalide."
 
-#: actions/apigroupcreate.php:200 actions/editapplication.php:215
-#: actions/editgroup.php:199 actions/newapplication.php:203
-#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:224
+#. TRANS: Client error in form for group creation.
+#. TRANS: Validation error shown when providing an invalid homepage URL in the "Edit application" form.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:181 actions/editapplication.php:233
+#: actions/editgroup.php:200 actions/newapplication.php:211
+#: actions/newgroup.php:140 actions/profilesettings.php:252
+#: actions/register.php:223
 msgid "Homepage is not a valid URL."
 msgstr "L’adresse du site personnel n’est pas un URL valide. "
 
-#: actions/apigroupcreate.php:209 actions/editgroup.php:202
-#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:227
-msgid "Full name is too long (max 255 chars)."
-msgstr "Nom complet trop long (maximum de 255 caractères)."
-
-#: actions/apigroupcreate.php:217 actions/editapplication.php:190
-#: actions/newapplication.php:172
-#, php-format
-msgid "Description is too long (max %d chars)."
-msgstr "La description est trop longue (%d caractères maximum)."
-
-#: actions/apigroupcreate.php:228 actions/editgroup.php:208
-#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:234
-msgid "Location is too long (max 255 chars)."
-msgstr "Emplacement trop long (maximum de 255 caractères)."
-
-#: actions/apigroupcreate.php:247 actions/editgroup.php:219
-#: actions/newgroup.php:159
-#, php-format
-msgid "Too many aliases! Maximum %d."
-msgstr "Trop d’alias ! Maximum %d."
-
-#: actions/apigroupcreate.php:268
+#. TRANS: Client error in form for group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:191 actions/editgroup.php:204
+#: actions/newgroup.php:144 actions/profilesettings.php:256
+#: actions/register.php:226
+msgid "Full name is too long (maximum 255 characters)."
+msgstr "Le nom complet est trop long (limité à 255 caractères maximum)."
+
+#. TRANS: Client error shown when providing too long a description during group creation.
+#. TRANS: %d is the maximum number of allowed characters.
+#. TRANS: Validation error shown when providing too long a description in the "Edit application" form.
+#. TRANS: Group edit form validation error.
+#. TRANS: Form validation error in New application form.
+#. TRANS: %d is the maximum number of characters for the description.
+#. TRANS: Group create form validation error.
+#. TRANS: %d is the maximum number of allowed characters.
+#: actions/apigroupcreate.php:201 actions/editapplication.php:201
+#: actions/editgroup.php:209 actions/newapplication.php:178
+#: actions/newgroup.php:149
+#, php-format
+msgid "Description is too long (maximum %d character)."
+msgid_plural "Description is too long (maximum %d characters)."
+msgstr[0] "La description est trop longue (limitée à %d caractère maximum)."
+msgstr[1] "La description est trop longue (limitée à %d caractères maximum)."
+
+#. TRANS: Client error shown when providing too long a location during group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:215 actions/editgroup.php:216
+#: actions/newgroup.php:156 actions/profilesettings.php:269
+#: actions/register.php:235
+msgid "Location is too long (maximum 255 characters)."
+msgstr "L’emplacement est trop long (limité à 255 caractères maximum)."
+
+#. TRANS: Client error shown when providing too many aliases during group creation.
+#. TRANS: %d is the maximum number of allowed aliases.
+#. TRANS: Group edit form validation error.
+#. TRANS: %d is the maximum number of allowed aliases.
+#. TRANS: Group create form validation error.
+#. TRANS: %d is the maximum number of allowed aliases.
+#: actions/apigroupcreate.php:236 actions/editgroup.php:229
+#: actions/newgroup.php:169
+#, php-format
+msgid "Too many aliases! Maximum %d allowed."
+msgid_plural "Too many aliases! Maximum %d allowed."
+msgstr[0] "Trop d’alias ! Un maximum de %d est autorisé."
+msgstr[1] "Trop d’alias ! Un maximum de %d est autorisé."
+
+#. TRANS: Client error shown when providing an invalid alias during group creation.
+#. TRANS: %s is the invalid alias.
+#: actions/apigroupcreate.php:253
 #, php-format
 msgid "Invalid alias: \"%s\"."
 msgstr "Alias invalide : « %s »."
 
-#: actions/apigroupcreate.php:277 actions/editgroup.php:232
-#: actions/newgroup.php:172
+#. TRANS: Client error displayed when trying to use an alias during group creation that is already in use.
+#. TRANS: %s is the alias that is already in use.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#: actions/apigroupcreate.php:264 actions/editgroup.php:244
+#: actions/newgroup.php:184
 #, php-format
 msgid "Alias \"%s\" already in use. Try another one."
 msgstr "Alias « %s » déjà utilisé. Essayez-en un autre."
 
-#: actions/apigroupcreate.php:290 actions/editgroup.php:238
-#: actions/newgroup.php:178
+#. TRANS: Client error displayed when trying to use an alias during group creation that is the same as the group's nickname.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#: actions/apigroupcreate.php:278 actions/editgroup.php:251
+#: actions/newgroup.php:191
 msgid "Alias can't be the same as nickname."
 msgstr "L’alias ne peut pas être le même que le pseudo."
 
-#: actions/apigroupismember.php:96 actions/apigroupjoin.php:106
-#: actions/apigroupleave.php:106 actions/apigroupmembership.php:92
-#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#. TRANS: Client error displayed when checking group membership for a non-existing group.
+#. TRANS: Client error displayed when trying to join a group that does not exist.
+#. TRANS: Client error displayed when trying to leave a group that does not exist.
+#. TRANS: Client error displayed trying to show group membership on a non-existing group.
+#. TRANS: Client error displayed when trying to show a group that could not be found.
+#. TRANS: Client error displayed requesting most recent notices to a group for a non-existing group.
+#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
+#: actions/apigroupleave.php:104 actions/apigroupmembership.php:89
+#: actions/apigroupshow.php:81 actions/apitimelinegroup.php:89
 msgid "Group not found."
 msgstr "Groupe non trouvé."
 
+#. TRANS: Server error displayed when trying to join a group the user is already a member of.
 #. TRANS: Error text shown a user tries to join a group they already are a member of.
-#: actions/apigroupjoin.php:112 actions/joingroup.php:100 lib/command.php:336
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100 lib/command.php:333
 msgid "You are already a member of that group."
 msgstr "Vous êtes déjà membre de ce groupe."
 
+#. TRANS: Server error displayed when trying to join a group the user is blocked from joining.
 #. TRANS: Error text shown when a user tries to join a group they are blocked from joining.
-#: actions/apigroupjoin.php:121 actions/joingroup.php:105 lib/command.php:341
+#: actions/apigroupjoin.php:121 actions/joingroup.php:105 lib/command.php:338
 msgid "You have been blocked from that group by the admin."
 msgstr "Vous avez été bloqué de ce groupe par l’administrateur."
 
+#. TRANS: Server error displayed when joining a group fails.
+#. TRANS: %1$s is a user nickname, $2$s is a group nickname.
 #. TRANS: Message given having failed to add a user to a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: actions/apigroupjoin.php:140 actions/joingroup.php:134 lib/command.php:353
+#: actions/apigroupjoin.php:142 actions/joingroup.php:134 lib/command.php:350
 #, php-format
 msgid "Could not join user %1$s to group %2$s."
-msgstr "Impossible de joindre l’utilisateur %1$s au groupe %2$s."
+msgstr "Impossible d’inscrire l’utilisateur %1$s au groupe %2$s."
 
-#: actions/apigroupleave.php:116
+#. TRANS: Server error displayed when trying to leave a group the user is not a member of.
+#: actions/apigroupleave.php:115
 msgid "You are not a member of this group."
 msgstr "Vous n’êtes pas membre de ce groupe."
 
+#. TRANS: Server error displayed when leaving a group fails.
+#. TRANS: %1$s is a user nickname, $2$s is a group nickname.
 #. TRANS: Message given having failed to remove a user from a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: actions/apigroupleave.php:126 actions/leavegroup.php:129
-#: lib/command.php:401
+#: actions/apigroupleave.php:127 actions/leavegroup.php:129
+#: lib/command.php:398
 #, php-format
 msgid "Could not remove user %1$s from group %2$s."
 msgstr "Impossible de retirer l’utilisateur %1$s du groupe %2$s."
 
-#. TRANS: %s is a user name
-#: actions/apigrouplist.php:98
+#. TRANS: Used as title in check for group membership. %s is a user name.
+#: actions/apigrouplist.php:94
 #, php-format
 msgid "%s's groups"
 msgstr "Groupes de %s"
 
-#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
-#: actions/apigrouplist.php:108
+#. TRANS: Used as subtitle in check for group membership. %1$s is a user name, %2$s is the site name.
+#: actions/apigrouplist.php:104
 #, php-format
 msgid "%1$s groups %2$s is a member of."
 msgstr "Groupes de %1$s dont %2$s est membre."
 
-#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a title when listing the lastest 20 groups. %s is a site name.
 #. TRANS: Message is used as a page title. %s is a nick name.
-#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#: actions/apigrouplistall.php:88 actions/usergroups.php:63
 #, php-format
 msgid "%s groups"
 msgstr "Groupes de %s"
 
-#: actions/apigrouplistall.php:96
+#. TRANS: Message is used as a subtitle when listing the lastest 20 groups. %s is a site name.
+#: actions/apigrouplistall.php:93
 #, php-format
 msgid "groups on %s"
 msgstr "groupes sur %s"
 
-#: actions/apimediaupload.php:100
+#. TRANS: Client error displayed when uploading a media file has failed.
+#: actions/apimediaupload.php:101
 msgid "Upload failed."
 msgstr "Échec du téléversement."
 
-#: actions/apioauthauthorize.php:101
+#. TRANS: Client error given from the OAuth API when the request token or verifier is invalid.
+#: actions/apioauthaccesstoken.php:101
+msgid "Invalid request token or verifier."
+msgstr "Jeton de requête ou de vérification invalide."
+
+#. TRANS: Client error given when no oauth_token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:107
 msgid "No oauth_token parameter provided."
 msgstr "Paramètre oauth_token non fourni."
 
-#: actions/apioauthauthorize.php:106
-msgid "Invalid token."
-msgstr "Jeton incorrect."
+#. TRANS: Client error given when an invalid request token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:115 actions/apioauthauthorize.php:129
+msgid "Invalid request token."
+msgstr "Jeton de requête incorrect."
+
+#. TRANS: Client error given when an invalid request token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:121
+msgid "Request token already authorized."
+msgstr "Le jeton de requête a déjà été autorisé."
 
-#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:169 actions/disfavor.php:74
-#: actions/emailsettings.php:271 actions/favor.php:75 actions/geocode.php:55
+#. TRANS: Form validation error in API OAuth authorisation because of an invalid session token.
+#: actions/apioauthauthorize.php:147 actions/avatarsettings.php:280
+#: actions/deletenotice.php:177 actions/disfavor.php:74
+#: actions/emailsettings.php:297 actions/favor.php:75 actions/geocode.php:55
 #: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:230
-#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
-#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
-#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
-#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/groupunblock.php:65 actions/imsettings.php:230
+#: actions/invite.php:59 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:105 actions/nudge.php:80
+#: actions/oauthappssettings.php:165 actions/oauthconnectionssettings.php:138
+#: actions/othersettings.php:153 actions/passwordsettings.php:138
+#: actions/profilesettings.php:221 actions/recoverpassword.php:350
 #: actions/register.php:172 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:40
 #: actions/subscribe.php:86 actions/tagother.php:166
 #: actions/unsubscribe.php:69 actions/userauthorization.php:52
-#: lib/designsettings.php:294
+#: lib/designsettings.php:310
 msgid "There was a problem with your session token. Try again, please."
 msgstr ""
 "Un problème est survenu avec votre jeton de session. Veuillez essayer à "
 "nouveau."
 
-#: actions/apioauthauthorize.php:135
+#. TRANS: Form validation error given when an invalid username and/or password was passed to the OAuth API.
+#: actions/apioauthauthorize.php:168
 msgid "Invalid nickname / password!"
 msgstr "Pseudo ou mot de passe incorrect !"
 
-#: actions/apioauthauthorize.php:159
-msgid "Database error deleting OAuth application user."
-msgstr ""
-"Erreur de la base de données lors de la suppression de l’utilisateur de "
-"l’application OAuth."
-
-#: actions/apioauthauthorize.php:185
-msgid "Database error inserting OAuth application user."
-msgstr ""
-"Erreur de base de donnée en insérant l’utilisateur de l’application OAuth"
-
-#: actions/apioauthauthorize.php:214
-#, php-format
-msgid ""
-"The request token %s has been authorized. Please exchange it for an access "
-"token."
+#. TRANS: Server error displayed when a database action fails.
+#: actions/apioauthauthorize.php:217
+msgid "Database error inserting oauth_token_association."
 msgstr ""
-"Le jeton de connexion %s a été autorisé. Merci de l’échanger contre un jeton "
-"d’accès."
-
-#: actions/apioauthauthorize.php:227
-#, php-format
-msgid "The request token %s has been denied and revoked."
-msgstr "Le jeton de connexion %s a été refusé et révoqué."
+"Erreur de base de donnée lors de l’insertion du jeton d’association de "
+"l’utilisateur de l’application OAuth"
 
+#. TRANS: Client error given on when invalid data was passed through a form in the OAuth API.
+#. TRANS: Unexpected validation error on avatar upload form.
+#. TRANS: Client error displayed submitting invalid form data for edit application.
 #. TRANS: Message given submitting a form with an unknown action in e-mail settings.
 #. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Client error when submitting a form with unexpected information.
 #. TRANS: Message given submitting a form with an unknown action in SMS settings.
-#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:104 actions/editapplication.php:139
-#: actions/emailsettings.php:290 actions/grouplogo.php:322
-#: actions/imsettings.php:245 actions/newapplication.php:121
+#. TRANS: Unknown form validation error in design settings form.
+#: actions/apioauthauthorize.php:294 actions/avatarsettings.php:294
+#: actions/designadminpanel.php:104 actions/editapplication.php:144
+#: actions/emailsettings.php:316 actions/grouplogo.php:322
+#: actions/imsettings.php:245 actions/newapplication.php:125
 #: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:277 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:321
 msgid "Unexpected form submission."
 msgstr "Soumission de formulaire inattendue."
 
-#: actions/apioauthauthorize.php:259
+#. TRANS: Title for a page where a user can confirm/deny account access by an external application.
+#: actions/apioauthauthorize.php:387
 msgid "An application would like to connect to your account"
 msgstr ""
 "Une application vous demande l’autorisation de se connecter à votre compte"
 
-#: actions/apioauthauthorize.php:276
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:404
 msgid "Allow or deny access"
 msgstr "Autoriser ou refuser l’accès"
 
-#: actions/apioauthauthorize.php:292
+#. TRANS: User notification of external application requesting account access.
+#. TRANS: %3$s is the access type requested (read-write or read-only), %4$s is the StatusNet sitename.
+#: actions/apioauthauthorize.php:425
+#, php-format
+msgid ""
+"An application would like the ability to <strong>%3$s</strong> your %4$s "
+"account data. You should only give access to your %4$s account to third "
+"parties you trust."
+msgstr ""
+"Une application aimerait pouvoir <strong>%3$s</strong> vos données de compte "
+"%4$s. Vous ne devriez donner accès à votre compte %4$s qu’à des tiers de "
+"confiance."
+
+#. TRANS: User notification of external application requesting account access.
+#. TRANS: %1$s is the application name requesting access, %2$s is the organisation behind the application,
+#. TRANS: %3$s is the access type requested, %4$s is the StatusNet sitename.
+#: actions/apioauthauthorize.php:433
 #, php-format
 msgid ""
 "The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
@@ -629,172 +861,537 @@ msgstr ""
 "devriez donner l’accès à votre compte %4$s qu’aux tiers à qui vous faites "
 "confiance."
 
-#. TRANS: Main menu option when logged in for access to user settings
-#: actions/apioauthauthorize.php:310 lib/action.php:463
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:455
+msgctxt "LEGEND"
 msgid "Account"
 msgstr "Compte"
 
-#: actions/apioauthauthorize.php:313 actions/login.php:252
-#: actions/profilesettings.php:106 actions/register.php:431
-#: actions/showgroup.php:245 actions/tagother.php:94
+#. TRANS: Field label on OAuth API authorisation form.
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for group nickname (dt). Text hidden by default.
+#: actions/apioauthauthorize.php:459 actions/login.php:252
+#: actions/profilesettings.php:110 actions/register.php:432
+#: actions/showgroup.php:240 actions/tagother.php:94
 #: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:132
+#: lib/userprofile.php:134
 msgid "Nickname"
 msgstr "Pseudo"
 
+#. TRANS: Field label on OAuth API authorisation form.
 #. TRANS: Link description in user account settings menu.
-#: actions/apioauthauthorize.php:316 actions/login.php:255
-#: actions/register.php:436 lib/accountsettingsaction.php:125
+#: actions/apioauthauthorize.php:463 actions/login.php:255
+#: actions/register.php:437 lib/accountsettingsaction.php:120
 msgid "Password"
 msgstr "Mot de passe"
 
-#: actions/apioauthauthorize.php:328
-msgid "Deny"
-msgstr "Refuser"
+#. TRANS: Button text that when clicked will cancel the process of allowing access to an account
+#. TRANS: by an external application.
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label in the "Edit application" form.
+#: actions/apioauthauthorize.php:478 actions/emailsettings.php:128
+#: actions/imsettings.php:131 actions/smssettings.php:137
+#: lib/applicationeditform.php:351
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "Annuler"
 
-#: actions/apioauthauthorize.php:334
+#. TRANS: Button text that when clicked will allow access to an account by an external application.
+#: actions/apioauthauthorize.php:485
+msgctxt "BUTTON"
 msgid "Allow"
 msgstr "Autoriser"
 
-#: actions/apioauthauthorize.php:351
-msgid "Allow or deny access to your account information."
-msgstr "Autoriser ou refuser l’accès à votre compte."
+#. TRANS: Form instructions.
+#: actions/apioauthauthorize.php:502
+msgid "Authorize access to your account information."
+msgstr "Autoriser l’accès aux informations de votre compte."
 
-#: actions/apistatusesdestroy.php:112
+#. TRANS: Header for user notification after revoking OAuth access to an application.
+#: actions/apioauthauthorize.php:594
+msgid "Authorization canceled."
+msgstr "Autorisation annulée."
+
+#. TRANS: User notification after revoking OAuth access to an application.
+#. TRANS: %s is an OAuth token.
+#: actions/apioauthauthorize.php:598
+#, php-format
+msgid "The request token %s has been revoked."
+msgstr "Le jeton de requête %s a été révoqué."
+
+#. TRANS: Title of the page notifying the user that an anonymous client application was successfully authorized to access the user's account with OAuth.
+#: actions/apioauthauthorize.php:621
+msgid "You have successfully authorized the application"
+msgstr "Vous avez autorisé avec succès l’application"
+
+#. TRANS: Message notifying the user that an anonymous client application was successfully authorized to access the user's account with OAuth.
+#: actions/apioauthauthorize.php:625
+msgid ""
+"Please return to the application and enter the following security code to "
+"complete the process."
+msgstr ""
+"Veuillez retourner à l’application et entrer le code de sécurité ci-dessous "
+"pour compléter le processus."
+
+#. TRANS: Title of the page notifying the user that the client application was successfully authorized to access the user's account with OAuth.
+#. TRANS: %s is the authorised application name.
+#: actions/apioauthauthorize.php:632
+#, php-format
+msgid "You have successfully authorized %s"
+msgstr "Vous avez autorisé avec succès l’application « %s »"
+
+#. TRANS: Message notifying the user that the client application was successfully authorized to access the user's account with OAuth.
+#. TRANS: %s is the authorised application name.
+#: actions/apioauthauthorize.php:639
+#, php-format
+msgid ""
+"Please return to %s and enter the following security code to complete the "
+"process."
+msgstr ""
+"Veuillez retourner à l’application %s et entrez le code de sécurité ci-"
+"dessous pour compléter le processus."
+
+#. TRANS: Client error displayed trying to delete a status not using POST or DELETE.
+#. TRANS: POST and DELETE should not be translated.
+#: actions/apistatusesdestroy.php:111
 msgid "This method requires a POST or DELETE."
 msgstr "Ce processus requiert un POST ou un DELETE."
 
-#: actions/apistatusesdestroy.php:135
+#. TRANS: Client error displayed trying to delete a status of another user.
+#: actions/apistatusesdestroy.php:136
 msgid "You may not delete another user's status."
 msgstr "Vous ne pouvez pas supprimer le statut d’un autre utilisateur."
 
-#: actions/apistatusesretweet.php:76 actions/apistatusesretweets.php:72
-#: actions/deletenotice.php:52 actions/shownotice.php:92
+#. TRANS: Client error displayed trying to repeat a non-existing notice through the API.
+#. TRANS: Client error displayed trying to display redents of a non-exiting notice.
+#. TRANS: Error message displayed trying to delete a non-existing notice.
+#: actions/apistatusesretweet.php:74 actions/apistatusesretweets.php:70
+#: actions/atompubshowfavorite.php:82 actions/deletenotice.php:61
+#: actions/shownotice.php:92
 msgid "No such notice."
 msgstr "Avis non trouvé."
 
+#. TRANS: Client error displayed trying to repeat an own notice through the API.
 #. TRANS: Error text shown when trying to repeat an own notice.
-#: actions/apistatusesretweet.php:84 lib/command.php:538
+#: actions/apistatusesretweet.php:83 lib/command.php:537
 msgid "Cannot repeat your own notice."
 msgstr "Vous ne pouvez pas reprendre votre propre avis."
 
+#. TRANS: Client error displayed trying to re-repeat a notice through the API.
 #. TRANS: Error text shown when trying to repeat an notice that was already repeated by the user.
-#: actions/apistatusesretweet.php:92 lib/command.php:544
+#: actions/apistatusesretweet.php:92 lib/command.php:543
 msgid "Already repeated that notice."
 msgstr "Vous avez déjà repris cet avis."
 
-#: actions/apistatusesshow.php:139
+#: actions/apistatusesshow.php:117 actions/atompubfavoritefeed.php:104
+#: actions/atompubmembershipfeed.php:106 actions/atompubshowfavorite.php:116
+#: actions/atompubshowsubscription.php:118
+#: actions/atompubsubscriptionfeed.php:109
+msgid "HTTP method not supported."
+msgstr "Méthode HTTP non trouvée !"
+
+#: actions/apistatusesshow.php:141
+#, php-format
+msgid "Unsupported format: %s"
+msgstr "Format non supporté : %s"
+
+#. TRANS: Client error displayed requesting a deleted status.
+#: actions/apistatusesshow.php:152
 msgid "Status deleted."
 msgstr "Statut supprimé."
 
-#: actions/apistatusesshow.php:145
+#. TRANS: Client error displayed requesting a status with an invalid ID.
+#: actions/apistatusesshow.php:159
 msgid "No status with that ID found."
 msgstr "Aucun statut trouvé avec cet identifiant."
 
-#: actions/apistatusesupdate.php:222
-msgid "Client must provide a 'status' parameter with a value."
-msgstr "Le client doit fournir un paramètre « statut » avec une valeur."
+#: actions/apistatusesshow.php:223
+msgid "Can only delete using the Atom format."
+msgstr "Vous ne pouvez supprimer qu’en utilisant le format Atom."
 
-#: actions/apistatusesupdate.php:243 actions/newnotice.php:157
-#: lib/mailhandler.php:60
+#. TRANS: Error message displayed trying to delete a notice that was not made by the current user.
+#: actions/apistatusesshow.php:230 actions/deletenotice.php:78
+msgid "Can't delete this notice."
+msgstr "Impossible de supprimer cet avis."
+
+#: actions/apistatusesshow.php:243
 #, php-format
-msgid "That's too long. Max notice size is %d chars."
-msgstr "C’est trop long ! La taille maximale de l’avis est de %d caractères."
+msgid "Deleted notice %d"
+msgstr "A supprimé l’avis %d"
 
-#: actions/apistatusesupdate.php:284 actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Non trouvé."
+#. TRANS: Client error displayed when the parameter "status" is missing.
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Le client doit fournir un paramètre « statut » avec une valeur."
 
-#: actions/apistatusesupdate.php:307 actions/newnotice.php:181
+#. TRANS: Client error displayed when the parameter "status" is missing.
+#. TRANS: %d is the maximum number of character for a notice.
+#: actions/apistatusesupdate.php:244 actions/newnotice.php:161
+#: lib/mailhandler.php:60
 #, php-format
-msgid "Max notice size is %d chars, including attachment URL."
-msgstr ""
-"La taille maximale de l’avis est de %d caractères, en incluant l’URL de la "
-"pièce jointe."
-
-#: actions/apisubscriptions.php:233 actions/apisubscriptions.php:263
+msgid "That's too long. Maximum notice size is %d character."
+msgid_plural "That's too long. Maximum notice size is %d characters."
+msgstr[0] ""
+"C’est trop long ! La taille maximale de l’avis est limitée à %d caractère."
+msgstr[1] ""
+"C’est trop long ! La taille maximale de l’avis est limitée à %d caractères."
+
+#. TRANS: Client error displayed when replying to a non-existing notice.
+#: actions/apistatusesupdate.php:284
+msgid "Parent notice not found."
+msgstr "L’avis parent correspondant à cette réponse n’a pas été trouvé."
+
+#. TRANS: Client error displayed exceeding the maximum notice length.
+#. TRANS: %d is the maximum lenth for a notice.
+#: actions/apistatusesupdate.php:308 actions/newnotice.php:184
+#, php-format
+msgid "Maximum notice size is %d character, including attachment URL."
+msgid_plural "Maximum notice size is %d characters, including attachment URL."
+msgstr[0] ""
+"La taille maximale de l’avis est limitée à %d caractère, en incluant "
+"l’adresse URL de la pièce jointe."
+msgstr[1] ""
+"La taille maximale de l’avis est limitée à %d caractères, en incluant "
+"l’adresse URL de la pièce jointe."
+
+#. TRANS: Client error displayed when requesting profiles of followers in an unsupported format.
+#. TRANS: Client error displayed when requesting IDs of followers in an unsupported format.
+#: actions/apisubscriptions.php:228 actions/apisubscriptions.php:258
 msgid "Unsupported format."
 msgstr "Format non supporté."
 
-#: actions/apitimelinefavorites.php:110
+#. TRANS: Title for timeline of most recent favourite notices by a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname.
+#: actions/apitimelinefavorites.php:108
 #, php-format
 msgid "%1$s / Favorites from %2$s"
 msgstr "%1$s / Favoris de %2$s"
 
-#: actions/apitimelinefavorites.php:119
+#. TRANS: Subtitle for timeline of most recent favourite notices by a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user's full name,
+#. TRANS: %3$s is a user nickname.
+#: actions/apitimelinefavorites.php:120
 #, php-format
-msgid "%1$s updates favorited by %2$s / %2$s."
-msgstr "%1$s statuts favoris de %2$s / %2$s."
+msgid "%1$s updates favorited by %2$s / %3$s."
+msgstr "%1$s annonces favorites de %2$s, alias %3$s."
 
-#: actions/apitimelinementions.php:118
+#. TRANS: Server error displayed when generating an Atom feed fails.
+#. TRANS: %s is the error.
+#: actions/apitimelinegroup.php:138
+#, php-format
+msgid "Could not generate feed for group - %s"
+msgstr "Impossible de générer le flux pour le groupe — %s"
+
+#. TRANS: Title for timeline of most recent mentions of a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname.
+#: actions/apitimelinementions.php:115
 #, php-format
 msgid "%1$s / Updates mentioning %2$s"
 msgstr "%1$s / Mises à jour mentionnant %2$s"
 
+#. TRANS: Subtitle for timeline of most recent mentions of a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname,
+#. TRANS: %3$s is a user's full name.
 #: actions/apitimelinementions.php:131
 #, php-format
 msgid "%1$s updates that reply to updates from %2$s / %3$s."
 msgstr "%1$s statuts en réponses aux statuts de %2$s / %3$s."
 
-#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#. TRANS: Title for site timeline. %s is the StatusNet sitename.
+#: actions/apitimelinepublic.php:193 actions/publicrss.php:103
 #, php-format
 msgid "%s public timeline"
 msgstr "Activité publique %s"
 
-#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#. TRANS: Subtitle for site timeline. %s is the StatusNet sitename.
+#: actions/apitimelinepublic.php:199 actions/publicrss.php:105
 #, php-format
 msgid "%s updates from everyone!"
 msgstr "%s statuts de tout le monde !"
 
-#: actions/apitimelineretweetedtome.php:111
+#. TRANS: Server error displayed calling unimplemented API method for 'retweeted by me'.
+#: actions/apitimelineretweetedbyme.php:71
+msgid "Unimplemented."
+msgstr "Non implémenté."
+
+#. TRANS: Title for Atom feed "repeated to me". %s is the user nickname.
+#: actions/apitimelineretweetedtome.php:108
 #, php-format
 msgid "Repeated to %s"
 msgstr "Repris pour %s"
 
-#: actions/apitimelineretweetsofme.php:114
+#. TRANS: Title of list of repeated notices of the logged in user.
+#. TRANS: %s is the nickname of the logged in user.
+#: actions/apitimelineretweetsofme.php:112
 #, php-format
 msgid "Repeats of %s"
 msgstr "Reprises de %s"
 
-#: actions/apitimelinetag.php:105 actions/tag.php:67
+#. TRANS: Title for timeline with lastest notices with a given tag.
+#. TRANS: %s is the tag.
+#: actions/apitimelinetag.php:101 actions/tag.php:67
 #, php-format
 msgid "Notices tagged with %s"
 msgstr "Avis marqués avec %s"
 
-#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#. TRANS: Subtitle for timeline with lastest notices with a given tag.
+#. TRANS: %1$s is the tag, $2$s is the StatusNet sitename.
+#: actions/apitimelinetag.php:105 actions/tagrss.php:65
 #, php-format
 msgid "Updates tagged with %1$s on %2$s!"
 msgstr "Mises à jour marquées avec %1$s dans %2$s !"
 
-#: actions/apitrends.php:87
+#. TRANS: Client error displayed trying to add a notice to another user's timeline.
+#: actions/apitimelineuser.php:297
+msgid "Only the user can add to their own timeline."
+msgstr "Seul l’utilisateur peut ajouter des éléments son flux."
+
+#. TRANS: Client error displayed when using another format than AtomPub.
+#: actions/apitimelineuser.php:304
+#, fuzzy
+msgid "Only accept AtomPub for Atom feeds."
+msgstr "N’accepter que des AtomPub pour les flux atom."
+
+#: actions/apitimelineuser.php:310
+#, fuzzy
+msgid "Atom post must not be empty."
+msgstr "Une publication Atom doit être une entrée « Atom »."
+
+#: actions/apitimelineuser.php:315
+#, fuzzy
+msgid "Atom post must be well-formed XML."
+msgstr "Une publication Atom doit être une entrée « Atom »."
+
+#. TRANS: Client error displayed when not using an Atom entry.
+#: actions/apitimelineuser.php:321 actions/atompubfavoritefeed.php:226
+#: actions/atompubmembershipfeed.php:228
+#: actions/atompubsubscriptionfeed.php:233
+msgid "Atom post must be an Atom entry."
+msgstr "Une publication Atom doit être une entrée « Atom »."
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+#: actions/apitimelineuser.php:332
+#, fuzzy
+msgid "Can only handle POST activities."
+msgstr "Ne peut gérer que les activités de publication."
+
+#. TRANS: Client error displayed when using an unsupported activity object type.
+#. TRANS: %s is the unsupported activity object type.
+#: actions/apitimelineuser.php:343
+#, fuzzy, php-format
+msgid "Cannot handle activity object type \"%s\"."
+msgstr "Ne peut gérer l’objet d’activité de type « %s »"
+
+#. TRANS: Client error displayed when posting a notice without content through the API.
+#: actions/apitimelineuser.php:376
+#, fuzzy, php-format
+msgid "No content for notice %d."
+msgstr "Chercher dans le contenu des avis"
+
+#. TRANS: Client error displayed when using another format than AtomPub.
+#: actions/apitimelineuser.php:404
+#, php-format
+msgid "Notice with URI \"%s\" already exists."
+msgstr "L’avis d’URI « %s » existe déjà."
+
+#: actions/apitimelineuser.php:435
+#, php-format
+msgid "AtomPub post with unknown attention URI %s"
+msgstr "Publication AtomPost avec l’URI d’attention inconnu %s"
+
+#. TRANS: Server error for unfinished API method showTrends.
+#: actions/apitrends.php:85
 msgid "API method under construction."
 msgstr "Méthode API en construction."
 
+#. TRANS: Client error displayed when requesting user information for a non-existing user.
+#: actions/apiusershow.php:94
+msgid "User not found."
+msgstr "Page non trouvée."
+
+#: actions/atompubfavoritefeed.php:70
+#, fuzzy
+msgid "No such profile"
+msgstr "Profil non-trouvé."
+
+#: actions/atompubfavoritefeed.php:145
+#, php-format
+msgid "Notices %s has favorited to on %s"
+msgstr ""
+
+#: actions/atompubfavoritefeed.php:215 actions/atompubsubscriptionfeed.php:222
+#, fuzzy
+msgid "Can't add someone else's subscription"
+msgstr "Impossible d’insérer un nouvel abonnement."
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+#: actions/atompubfavoritefeed.php:239
+#, fuzzy
+msgid "Can only handle Favorite activities."
+msgstr "Ne peut gérer que les activités de publication."
+
+#: actions/atompubfavoritefeed.php:248 actions/atompubmembershipfeed.php:248
+#, fuzzy
+msgid "Can only fave notices."
+msgstr "Ne peut gérer que les activités de publication."
+
+#: actions/atompubfavoritefeed.php:256
+#, fuzzy
+msgid "Unknown note."
+msgstr "Inconnu"
+
+#: actions/atompubfavoritefeed.php:263
+#, fuzzy
+msgid "Already a favorite."
+msgstr "Ajouter aux favoris"
+
+#: actions/atompubmembershipfeed.php:72 actions/atompubshowfavorite.php:76
+#: actions/atompubshowmembership.php:73 actions/subscribe.php:107
+msgid "No such profile."
+msgstr "Profil non-trouvé."
+
+#: actions/atompubmembershipfeed.php:144
+#, fuzzy, php-format
+msgid "%s group memberships"
+msgstr "Membres du groupe %s"
+
+#: actions/atompubmembershipfeed.php:147
+#, fuzzy, php-format
+msgid "Groups %s is a member of on %s"
+msgstr "Groupes de %s"
+
+#: actions/atompubmembershipfeed.php:217
+msgid "Can't add someone else's membership"
+msgstr ""
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+#: actions/atompubmembershipfeed.php:241
+#, fuzzy
+msgid "Can only handle Join activities."
+msgstr "Ne peut gérer que les activités de publication."
+
+#: actions/atompubmembershipfeed.php:256
+#, fuzzy
+msgid "Unknown group."
+msgstr "Inconnu"
+
+#: actions/atompubmembershipfeed.php:263
+#, fuzzy
+msgid "Already a member."
+msgstr "Tous les membres"
+
+#: actions/atompubmembershipfeed.php:270
+msgid "Blocked by admin."
+msgstr ""
+
+#: actions/atompubshowfavorite.php:89
+#, fuzzy
+msgid "No such favorite."
+msgstr "Fichier non trouvé."
+
+#: actions/atompubshowfavorite.php:151
+#, fuzzy
+msgid "Can't delete someone else's favorite"
+msgstr "Impossible de supprimer le favori."
+
+#: actions/atompubshowmembership.php:81
+#, fuzzy
+msgid "No such group"
+msgstr "Aucun groupe trouvé."
+
+#: actions/atompubshowmembership.php:90
+#, fuzzy
+msgid "Not a member"
+msgstr "Tous les membres"
+
+#: actions/atompubshowmembership.php:115
+#, fuzzy
+msgid "Method not supported"
+msgstr "Méthode HTTP non trouvée !"
+
+#: actions/atompubshowmembership.php:150
+msgid "Can't delete someone else's membership"
+msgstr ""
+
+#: actions/atompubshowsubscription.php:72
+#: actions/atompubshowsubscription.php:81
+#: actions/atompubsubscriptionfeed.php:74
+#, fuzzy, php-format
+msgid "No such profile id: %d"
+msgstr "Profil non-trouvé."
+
+#: actions/atompubshowsubscription.php:90
+#, fuzzy, php-format
+msgid "Profile %d not subscribed to profile %d"
+msgstr "Vous n’êtes pas abonné(e) à ce profil."
+
+#: actions/atompubshowsubscription.php:154
+#, fuzzy
+msgid "Can't delete someone else's subscription"
+msgstr "Impossible de supprimer l’abonnement à soi-même."
+
+#: actions/atompubsubscriptionfeed.php:150
+#, fuzzy, php-format
+msgid "People %s has subscribed to on %s"
+msgstr "Abonnés de %s"
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+#: actions/atompubsubscriptionfeed.php:246
+#, fuzzy
+msgid "Can only handle Follow activities."
+msgstr "Ne peut gérer que les activités de publication."
+
+#: actions/atompubsubscriptionfeed.php:253
+msgid "Can only follow people."
+msgstr ""
+
+#: actions/atompubsubscriptionfeed.php:262
+#, fuzzy, php-format
+msgid "Unknown profile %s"
+msgstr "Type de fichier inconnu"
+
+#. TRANS: Client error displayed trying to get a non-existing attachment.
 #: actions/attachment.php:73
 msgid "No such attachment."
 msgstr "Pièce jointe non trouvée."
 
-#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
-#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#. TRANS: Client error displayed trying to get an avatar without providing a nickname.
+#. TRANS: Client error displayed when requesting a list of blocked users for a group without providing a group nickname.
+#. TRANS: Client error displayed trying to edit a group while not proving a nickname for the group to edit.
+#. TRANS: Client error displayed if no nickname argument was given requesting a group page.
+#: actions/avatarbynickname.php:60 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:85 actions/groupdesignsettings.php:84
 #: actions/grouplogo.php:86 actions/groupmembers.php:76
-#: actions/grouprss.php:91 actions/showgroup.php:121
+#: actions/grouprss.php:91 actions/showgroup.php:116
 msgid "No nickname."
 msgstr "Aucun pseudo."
 
-#: actions/avatarbynickname.php:64
+#. TRANS: Client error displayed trying to get an avatar without providing an avatar size.
+#: actions/avatarbynickname.php:66
 msgid "No size."
 msgstr "Aucune taille"
 
-#: actions/avatarbynickname.php:69
+#. TRANS: Client error displayed trying to get an avatar providing an invalid avatar size.
+#: actions/avatarbynickname.php:72
 msgid "Invalid size."
 msgstr "Taille incorrecte."
 
+#. TRANS: Title for avatar upload page.
+#. TRANS: Label for group avatar (dt). Text hidden by default.
 #. TRANS: Link description in user account settings menu.
-#: actions/avatarsettings.php:67 actions/showgroup.php:230
-#: lib/accountsettingsaction.php:118
+#: actions/avatarsettings.php:66 actions/showgroup.php:224
+#: lib/accountsettingsaction.php:113
 msgid "Avatar"
 msgstr "Avatar"
 
+#. TRANS: Instruction for avatar upload page.
+#. TRANS: %s is the maximum file size, for example "500b", "10kB" or "2MB".
 #: actions/avatarsettings.php:78
 #, php-format
 msgid "You can upload your personal avatar. The maximum file size is %s."
@@ -802,73 +1399,95 @@ msgstr ""
 "Vous pouvez associer un « avatar » (image personnelle) à votre profil. La "
 "taille maximale du fichier est de %s."
 
-#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
+#. TRANS: Server error displayed in avatar upload page when no matching profile can be found for a user.
+#: actions/avatarsettings.php:108 actions/avatarsettings.php:192
 #: actions/grouplogo.php:181 actions/remotesubscribe.php:191
 #: actions/userauthorization.php:72 actions/userrss.php:108
 msgid "User without matching profile."
 msgstr "Utilisateur sans profil correspondant."
 
-#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
+#. TRANS: Avatar upload page form legend.
+#. TRANS: Avatar upload page crop form legend.
+#: actions/avatarsettings.php:122 actions/avatarsettings.php:205
 #: actions/grouplogo.php:254
 msgid "Avatar settings"
 msgstr "Paramètres de l’avatar"
 
-#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
+#. TRANS: Header on avatar upload page for thumbnail of originally uploaded avatar (h2).
+#. TRANS: Header on avatar upload crop form for thumbnail of originally uploaded avatar (h2).
+#: actions/avatarsettings.php:131 actions/avatarsettings.php:214
 #: actions/grouplogo.php:202 actions/grouplogo.php:262
 msgid "Original"
 msgstr "Image originale"
 
-#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
+#. TRANS: Header on avatar upload page for thumbnail of to be used rendition of uploaded avatar (h2).
+#. TRANS: Header on avatar upload crop form for thumbnail of to be used rendition of uploaded avatar (h2).
+#: actions/avatarsettings.php:147 actions/avatarsettings.php:227
 #: actions/grouplogo.php:213 actions/grouplogo.php:274
 msgid "Preview"
 msgstr "Aperçu"
 
-#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:657
+#. TRANS: Button on avatar upload page to delete current avatar.
+#: actions/avatarsettings.php:155
+msgctxt "BUTTON"
 msgid "Delete"
 msgstr "Supprimer"
 
-#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+#. TRANS: Button on avatar upload page to upload an avatar.
+#: actions/avatarsettings.php:173
+msgctxt "BUTTON"
 msgid "Upload"
-msgstr "Transfert"
+msgstr "Téléverser"
 
-#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+#. TRANS: Button on avatar upload crop form to confirm a selected crop as avatar.
+#: actions/avatarsettings.php:243
+msgctxt "BUTTON"
 msgid "Crop"
 msgstr "Recadrer"
 
-#: actions/avatarsettings.php:305
+#. TRANS: Validation error on avatar upload form when no file was uploaded.
+#: actions/avatarsettings.php:318
 msgid "No file uploaded."
 msgstr "Aucun fichier n’a été téléversé."
 
-#: actions/avatarsettings.php:332
+#. TRANS: Avatar upload form unstruction after uploading a file.
+#: actions/avatarsettings.php:346
 msgid "Pick a square area of the image to be your avatar"
 msgstr "Sélectionnez une zone de forme carrée pour définir votre avatar"
 
-#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+#. TRANS: Server error displayed if an avatar upload went wrong somehow server side.
+#: actions/avatarsettings.php:361 actions/grouplogo.php:380
 msgid "Lost our file data."
 msgstr "Données perdues."
 
-#: actions/avatarsettings.php:370
+#. TRANS: Success message for having updated a user avatar.
+#: actions/avatarsettings.php:385
 msgid "Avatar updated."
 msgstr "Avatar mis à jour."
 
-#: actions/avatarsettings.php:373
+#. TRANS: Error displayed on the avatar upload page if the avatar could not be updated for an unknown reason.
+#: actions/avatarsettings.php:389
 msgid "Failed updating avatar."
 msgstr "La mise à jour de l’avatar a échoué."
 
-#: actions/avatarsettings.php:397
+#. TRANS: Success message for deleting a user avatar.
+#: actions/avatarsettings.php:413
 msgid "Avatar deleted."
 msgstr "Avatar supprimé."
 
-#: actions/block.php:69
+#. TRANS: Client error displayed when blocking a user that has already been blocked.
+#: actions/block.php:68
 msgid "You already blocked that user."
 msgstr "Vous avez déjà bloqué cet utilisateur."
 
-#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+#. TRANS: Title for block user page.
+#. TRANS: Legend for block user form.
+#: actions/block.php:106 actions/block.php:136 actions/groupblock.php:158
 msgid "Block user"
 msgstr "Bloquer cet utilisateur"
 
-#: actions/block.php:138
+#. TRANS: Explanation of consequences when blocking a user on the block user page.
+#: actions/block.php:139
 msgid ""
 "Are you sure you want to block this user? Afterwards, they will be "
 "unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -880,181 +1499,219 @@ msgstr ""
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete group form.
 #. TRANS: Button label on the delete notice form.
 #. TRANS: Button label on the delete user form.
 #. TRANS: Button label on the form to block a user from a group.
-#: actions/block.php:153 actions/deleteapplication.php:154
-#: actions/deletenotice.php:147 actions/deleteuser.php:152
-#: actions/groupblock.php:178
+#: actions/block.php:154 actions/deleteapplication.php:157
+#: actions/deletegroup.php:220 actions/deletenotice.php:155
+#: actions/deleteuser.php:152 actions/groupblock.php:178
 msgctxt "BUTTON"
 msgid "No"
 msgstr "Non"
 
 #. TRANS: Submit button title for 'No' when blocking a user.
 #. TRANS: Submit button title for 'No' when deleting a user.
-#: actions/block.php:157 actions/deleteuser.php:156
+#: actions/block.php:158 actions/deleteuser.php:156
 msgid "Do not block this user"
 msgstr "Ne pas bloquer cet utilisateur"
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete group form.
 #. TRANS: Button label on the delete notice form.
 #. TRANS: Button label on the delete user form.
 #. TRANS: Button label on the form to block a user from a group.
-#: actions/block.php:160 actions/deleteapplication.php:161
-#: actions/deletenotice.php:154 actions/deleteuser.php:159
-#: actions/groupblock.php:185
+#: actions/block.php:161 actions/deleteapplication.php:164
+#: actions/deletegroup.php:227 actions/deletenotice.php:162
+#: actions/deleteuser.php:159 actions/groupblock.php:185
 msgctxt "BUTTON"
 msgid "Yes"
 msgstr "Oui"
 
 #. TRANS: Submit button title for 'Yes' when blocking a user.
 #. TRANS: Description of the form to block a user.
-#: actions/block.php:164 lib/blockform.php:82
+#: actions/block.php:165 lib/blockform.php:79
 msgid "Block this user"
 msgstr "Bloquer cet utilisateur"
 
-#: actions/block.php:187
+#. TRANS: Server error displayed when blocking a user fails.
+#: actions/block.php:189
 msgid "Failed to save block information."
 msgstr "Impossible d’enregistrer les informations de blocage."
 
+#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group.
+#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group.
+#. TRANS: Client error when trying to delete a non-local group.
+#. TRANS: Client error when trying to delete a non-existing group.
+#. TRANS: Client error displayed trying to edit a non-existing group.
+#. TRANS: Client error displayed when trying to unblock a user from a non-existing group.
+#. TRANS: Client error displayed if no remote group with a given name was found requesting group page.
+#. TRANS: Client error displayed if no local group with a given name was found requesting group page.
 #. TRANS: Command exception text shown when a group is requested that does not exist.
 #. TRANS: Error text shown when trying to leave a group that does not exist.
-#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
-#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
+#: actions/blockedfromgroup.php:81 actions/blockedfromgroup.php:89
+#: actions/deletegroup.php:87 actions/deletegroup.php:100
+#: actions/editgroup.php:102 actions/foafgroup.php:44 actions/foafgroup.php:62
 #: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
 #: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
 #: actions/groupmembers.php:83 actions/groupmembers.php:90
 #: actions/grouprss.php:98 actions/grouprss.php:105
-#: actions/groupunblock.php:86 actions/joingroup.php:82
+#: actions/groupunblock.php:88 actions/joingroup.php:82
 #: actions/joingroup.php:93 actions/leavegroup.php:82
 #: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:170
-#: lib/command.php:383
+#: actions/showgroup.php:134 actions/showgroup.php:143 lib/command.php:168
+#: lib/command.php:380
 msgid "No such group."
 msgstr "Aucun groupe trouvé."
 
-#: actions/blockedfromgroup.php:97
+#. TRANS: Title for first page with list of users blocked from a group.
+#. TRANS: %s is a group nickname.
+#: actions/blockedfromgroup.php:101
 #, php-format
 msgid "%s blocked profiles"
 msgstr "%s profils bloqués"
 
-#: actions/blockedfromgroup.php:100
+#. TRANS: Title for any but the first page with list of users blocked from a group.
+#. TRANS: %1$s is a group nickname, %2$d is a page number.
+#: actions/blockedfromgroup.php:106
 #, php-format
 msgid "%1$s blocked profiles, page %2$d"
 msgstr "%1$s profils bloqués, page %2$d"
 
-#: actions/blockedfromgroup.php:115
+#. TRANS: Instructions for list of users blocked from a group.
+#: actions/blockedfromgroup.php:122
 msgid "A list of the users blocked from joining this group."
 msgstr "Une liste des utilisateurs dont l’inscription à ce groupe est bloquée."
 
-#: actions/blockedfromgroup.php:288
+#. TRANS: Form legend for unblocking a user from a group.
+#: actions/blockedfromgroup.php:291
 msgid "Unblock user from group"
 msgstr "Débloquer l’utilisateur de ce groupe"
 
-#. TRANS: Title for the form to unblock a user.
-#: actions/blockedfromgroup.php:320 lib/unblockform.php:70
+#. TRANS: Button text for unblocking a user from a group.
+#: actions/blockedfromgroup.php:323
+msgctxt "BUTTON"
 msgid "Unblock"
 msgstr "Débloquer"
 
+#. TRANS: Tooltip for button for unblocking a user from a group.
 #. TRANS: Description of the form to unblock a user.
-#: actions/blockedfromgroup.php:320 lib/unblockform.php:82
+#: actions/blockedfromgroup.php:327 lib/unblockform.php:78
 msgid "Unblock this user"
 msgstr "Débloquer cet utilisateur"
 
 #. TRANS: Title for mini-posting window loaded from bookmarklet.
+#. TRANS: %s is the StatusNet site name.
 #: actions/bookmarklet.php:51
 #, php-format
 msgid "Post to %s"
 msgstr "Poster sur %s"
 
-#: actions/confirmaddress.php:75
+#. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action.
+#: actions/confirmaddress.php:74
 msgid "No confirmation code."
 msgstr "Aucun code de confirmation."
 
+#. TRANS: Client error displayed when providing a non-existing confirmation code in the contact address confirmation action.
 #: actions/confirmaddress.php:80
 msgid "Confirmation code not found."
 msgstr "Code de confirmation non trouvé."
 
-#: actions/confirmaddress.php:85
+#. TRANS: Client error displayed when not providing a confirmation code for another user in the contact address confirmation action.
+#: actions/confirmaddress.php:86
 msgid "That confirmation code is not for you!"
 msgstr "Ce code de confirmation n’est pas pour vous !"
 
-#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
-#: actions/confirmaddress.php:91
+#. TRANS: Server error for a unknow address type %s, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:92
 #, php-format
 msgid "Unrecognized address type %s."
 msgstr "Type d’adresse non reconnu : %s."
 
-#. TRANS: Client error for an already confirmed email/jabbel/sms address.
-#: actions/confirmaddress.php:96
+#. TRANS: Client error for an already confirmed email/jabber/sms address.
+#: actions/confirmaddress.php:97
 msgid "That address has already been confirmed."
 msgstr "Cette adresse a déjà été confirmée."
 
+#. TRANS: Server error displayed when a user update to the database fails in the contact address confirmation action.
 #. TRANS: Server error thrown on database error updating e-mail preferences.
 #. TRANS: Server error thrown on database error removing a registered e-mail address.
 #. TRANS: Server error thrown on database error updating IM preferences.
 #. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error displayed when "Other" settings in user profile could not be updated on the server.
+#. TRANS: Server error thrown when user profile settings could not be updated.
 #. TRANS: Server error thrown on database error updating SMS preferences.
 #. TRANS: Server error thrown on database error removing a registered SMS phone number.
-#: actions/confirmaddress.php:116 actions/emailsettings.php:331
-#: actions/emailsettings.php:477 actions/imsettings.php:283
-#: actions/imsettings.php:442 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/confirmaddress.php:118 actions/emailsettings.php:359
+#: actions/emailsettings.php:508 actions/imsettings.php:283
+#: actions/imsettings.php:442 actions/othersettings.php:184
+#: actions/profilesettings.php:326 actions/smssettings.php:308
 #: actions/smssettings.php:464
 msgid "Couldn't update user."
 msgstr "Impossible de mettre à jour l’utilisateur."
 
-#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
-#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
-#: actions/confirmaddress.php:128 actions/emailsettings.php:437
-#: actions/smssettings.php:422
-msgid "Couldn't delete email confirmation."
-msgstr "Impossible de supprimer le courriel de confirmation."
+#. TRANS: Server error displayed when an address confirmation code deletion from the
+#. TRANS: database fails in the contact address confirmation action.
+#: actions/confirmaddress.php:132
+msgid "Could not delete address confirmation."
+msgstr "Impossible de supprimer la confirmation de l’adresse de contact."
 
-#: actions/confirmaddress.php:146
+#. TRANS: Title for the contact address confirmation action.
+#: actions/confirmaddress.php:150
 msgid "Confirm address"
 msgstr "Confirmer l’adresse"
 
-#: actions/confirmaddress.php:161
+#. TRANS: Success message for the contact address confirmation action.
+#. TRANS: %s can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:166
 #, php-format
 msgid "The address \"%s\" has been confirmed for your account."
 msgstr "L'adresse \"%s\" a été validée pour votre compte."
 
-#: actions/conversation.php:99
+#. TRANS: Title for page with a conversion (multiple notices in context).
+#: actions/conversation.php:96
 msgid "Conversation"
 msgstr "Conversation"
 
-#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
+#. TRANS: Header on conversation page. Hidden by default (h2).
+#: actions/conversation.php:149 lib/mailbox.php:116 lib/noticelist.php:87
 #: lib/profileaction.php:229 lib/searchgroupnav.php:82
 msgid "Notices"
 msgstr "Avis"
 
-#: actions/deleteapplication.php:63
+#. TRANS: Client error displayed trying to delete an application while not logged in.
+#: actions/deleteapplication.php:62
 msgid "You must be logged in to delete an application."
 msgstr "Vous devez être connecté pour supprimer une application."
 
+#. TRANS: Client error displayed trying to delete an application that does not exist.
 #: actions/deleteapplication.php:71
 msgid "Application not found."
 msgstr "Application non trouvée."
 
-#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#. TRANS: Client error displayed trying to delete an application the current user does not own.
+#. TRANS: Client error displayed trying to edit an application while not being its owner.
+#: actions/deleteapplication.php:79 actions/editapplication.php:78
 #: actions/showapplication.php:94
 msgid "You are not the owner of this application."
 msgstr "Vous n’êtes pas le propriétaire de cette application."
 
 #. TRANS: Client error text when there is a problem with the session token.
-#: actions/deleteapplication.php:102 actions/editapplication.php:127
-#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1320
+#: actions/deleteapplication.php:102 actions/editapplication.php:131
+#: actions/newapplication.php:114 actions/showapplication.php:118
+#: lib/action.php:1409
 msgid "There was a problem with your session token."
 msgstr "Un problème est survenu avec votre jeton de session."
 
-#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+#. TRANS: Title for delete application page.
+#. TRANS: Fieldset legend on delete application page.
+#: actions/deleteapplication.php:124 actions/deleteapplication.php:149
 msgid "Delete application"
 msgstr "Supprimer l’application"
 
-#: actions/deleteapplication.php:149
+#. TRANS: Confirmation text on delete application page.
+#: actions/deleteapplication.php:152
 msgid ""
 "Are you sure you want to delete this application? This will clear all data "
 "about the application from the database, including all existing user "
@@ -1065,31 +1722,89 @@ msgstr ""
 "utilisateur existantes."
 
 #. TRANS: Submit button title for 'No' when deleting an application.
-#: actions/deleteapplication.php:158
+#: actions/deleteapplication.php:161
 msgid "Do not delete this application"
 msgstr "Ne pas supprimer cette application"
 
 #. TRANS: Submit button title for 'Yes' when deleting an application.
-#: actions/deleteapplication.php:164
+#: actions/deleteapplication.php:167
 msgid "Delete this application"
 msgstr "Supprimer cette application"
 
+#. TRANS: Client error when trying to delete group while not logged in.
+#: actions/deletegroup.php:64
+msgid "You must be logged in to delete a group."
+msgstr "Vous devez ouvrir une session pour supprimer un groupe."
+
+#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group.
+#: actions/deletegroup.php:94 actions/joingroup.php:88
+#: actions/leavegroup.php:88
+msgid "No nickname or ID."
+msgstr "Aucun pseudo ou ID."
+
+#. TRANS: Client error when trying to delete a group without having the rights to delete it.
+#: actions/deletegroup.php:107
+msgid "You are not allowed to delete this group."
+msgstr "Vous n’êtes pas autorisé à supprimer ce groupe."
+
+#. TRANS: Server error displayed if a group could not be deleted.
+#. TRANS: %s is the name of the group that could not be deleted.
+#: actions/deletegroup.php:150
+#, php-format
+msgid "Could not delete group %s."
+msgstr "Impossible de supprimer le groupe « %s »."
+
+#. TRANS: Message given after deleting a group.
+#. TRANS: %s is the deleted group's name.
+#: actions/deletegroup.php:159
+#, php-format
+msgid "Deleted group %s"
+msgstr "Groupe « %s » supprimé"
+
+#. TRANS: Title of delete group page.
+#. TRANS: Form legend for deleting a group.
+#: actions/deletegroup.php:176 actions/deletegroup.php:202
+msgid "Delete group"
+msgstr "Supprimer le groupe"
+
+#. TRANS: Warning in form for deleleting a group.
+#: actions/deletegroup.php:206
+msgid ""
+"Are you sure you want to delete this group? This will clear all data about "
+"the group from the database, without a backup. Public posts to this group "
+"will still appear in individual timelines."
+msgstr ""
+"Voulez-vous vraiment supprimer ce groupe ? Ceci effacera de la base de "
+"données toutes les données relatives à ce groupe, sans aucune sauvegarde. "
+"Les messages postés à ce groupe resteront toutefois visibles dans les fils "
+"d’actualités individuels."
+
+#. TRANS: Submit button title for 'No' when deleting a group.
+#: actions/deletegroup.php:224
+msgid "Do not delete this group"
+msgstr "Ne pas supprimer ce groupe"
+
+#. TRANS: Submit button title for 'Yes' when deleting a group.
+#: actions/deletegroup.php:231
+msgid "Delete this group"
+msgstr "Supprimer ce groupe"
+
+#. TRANS: Error message displayed trying to delete a notice while not logged in.
+#. TRANS: Client error displayed when trying to unblock a user from a group while not logged in.
+#. TRANS: Client error displayed trying a change a subscription while not logged in.
 #. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
-#: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62
-#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69
-#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
-#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#: actions/deletenotice.php:52 actions/disfavor.php:61 actions/favor.php:62
+#: actions/groupblock.php:61 actions/groupunblock.php:60 actions/logout.php:69
+#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:88
+#: actions/nudge.php:63 actions/subedit.php:33 actions/subscribe.php:96
 #: actions/tagother.php:33 actions/unsubscribe.php:52
 #: lib/adminpanelaction.php:71 lib/profileformaction.php:64
 #: lib/settingsaction.php:72
 msgid "Not logged in."
 msgstr "Non connecté."
 
-#: actions/deletenotice.php:71
-msgid "Can't delete this notice."
-msgstr "Impossible de supprimer cet avis."
-
-#: actions/deletenotice.php:103
+#. TRANS: Instructions for deleting a notice.
+#: actions/deletenotice.php:110
 msgid ""
 "You are about to permanently delete a notice. Once this is done, it cannot "
 "be undone."
@@ -1097,21 +1812,24 @@ msgstr ""
 "Vous êtes sur le point de supprimer définitivement un message. Une fois cela "
 "fait, il est impossible de l’annuler."
 
-#: actions/deletenotice.php:109 actions/deletenotice.php:141
+#. TRANS: Page title when deleting a notice.
+#. TRANS: Fieldset legend for the delete notice form.
+#: actions/deletenotice.php:117 actions/deletenotice.php:148
 msgid "Delete notice"
 msgstr "Supprimer cet avis"
 
-#: actions/deletenotice.php:144
+#. TRANS: Message for the delete notice form.
+#: actions/deletenotice.php:152
 msgid "Are you sure you want to delete this notice?"
 msgstr "Voulez-vous vraiment supprimer cet avis ?"
 
 #. TRANS: Submit button title for 'No' when deleting a notice.
-#: actions/deletenotice.php:151
+#: actions/deletenotice.php:159
 msgid "Do not delete this notice"
 msgstr "Ne pas supprimer cet avis"
 
 #. TRANS: Submit button title for 'Yes' when deleting a notice.
-#: actions/deletenotice.php:158 lib/noticelist.php:657
+#: actions/deletenotice.php:166 lib/noticelist.php:672
 msgid "Delete this notice"
 msgstr "Supprimer cet avis"
 
@@ -1142,62 +1860,72 @@ msgstr "Supprimer cet utilisateur"
 
 #. TRANS: Message used as title for design settings for the site.
 #. TRANS: Link description in user account settings menu.
-#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:134
 msgid "Design"
 msgstr "Conception"
 
 #: actions/designadminpanel.php:74
 msgid "Design settings for this StatusNet site"
-msgstr ""
+msgstr "Paramètres de conception pour ce site StatusNet"
 
-#: actions/designadminpanel.php:331
+#: actions/designadminpanel.php:335
 msgid "Invalid logo URL."
 msgstr "URL du logo invalide."
 
-#: actions/designadminpanel.php:335
+#: actions/designadminpanel.php:340
+msgid "Invalid SSL logo URL."
+msgstr "Adresse URL du logo SSL invalide."
+
+#: actions/designadminpanel.php:344
 #, php-format
 msgid "Theme not available: %s."
 msgstr "Le thème n’est pas disponible : %s."
 
-#: actions/designadminpanel.php:439
+#: actions/designadminpanel.php:448
 msgid "Change logo"
 msgstr "Modifier le logo"
 
-#: actions/designadminpanel.php:444
+#: actions/designadminpanel.php:453
 msgid "Site logo"
 msgstr "Logo du site"
 
-#: actions/designadminpanel.php:456
+#: actions/designadminpanel.php:457
+msgid "SSL logo"
+msgstr "Logo SSL"
+
+#: actions/designadminpanel.php:469
 msgid "Change theme"
 msgstr "Modifier le thème"
 
-#: actions/designadminpanel.php:473
+#: actions/designadminpanel.php:486
 msgid "Site theme"
 msgstr "Thème du site"
 
-#: actions/designadminpanel.php:474
+#: actions/designadminpanel.php:487
 msgid "Theme for the site."
 msgstr "Thème pour le site."
 
-#: actions/designadminpanel.php:480
+#: actions/designadminpanel.php:493
 msgid "Custom theme"
 msgstr "Thème personnalisé"
 
-#: actions/designadminpanel.php:484
+#: actions/designadminpanel.php:497
 msgid "You can upload a custom StatusNet theme as a .ZIP archive."
 msgstr ""
 "Vous pouvez importer un thème StatusNet personnalisé dans une archive .ZIP."
 
-#: actions/designadminpanel.php:499 lib/designsettings.php:101
+#. TRANS: Fieldset legend on profile design page.
+#: actions/designadminpanel.php:512 lib/designsettings.php:98
 msgid "Change background image"
 msgstr "Changer l’image d’arrière plan"
 
-#: actions/designadminpanel.php:504 actions/designadminpanel.php:587
-#: lib/designsettings.php:178
+#. TRANS: Label on profile design page for setting a profile page background colour.
+#: actions/designadminpanel.php:517 actions/designadminpanel.php:600
+#: lib/designsettings.php:183
 msgid "Background"
 msgstr "Arrière plan"
 
-#: actions/designadminpanel.php:509
+#: actions/designadminpanel.php:522
 #, php-format
 msgid ""
 "You can upload a background image for the site. The maximum file size is %1"
@@ -1207,76 +1935,84 @@ msgstr ""
 "maximale du fichier est de %1$s."
 
 #. TRANS: Used as radio button label to add a background image.
-#: actions/designadminpanel.php:540 lib/designsettings.php:139
+#: actions/designadminpanel.php:553
 msgid "On"
 msgstr "Activé"
 
 #. TRANS: Used as radio button label to not add a background image.
-#: actions/designadminpanel.php:557 lib/designsettings.php:155
+#: actions/designadminpanel.php:570
 msgid "Off"
 msgstr "Désactivé"
 
-#: actions/designadminpanel.php:558 lib/designsettings.php:156
+#. TRANS: Form guide for a set of radio buttons on the profile design page that will enable or disable
+#. TRANS: use of the uploaded profile image.
+#: actions/designadminpanel.php:571 lib/designsettings.php:159
 msgid "Turn background image on or off."
 msgstr "Activer ou désactiver l’image d’arrière plan."
 
-#: actions/designadminpanel.php:563 lib/designsettings.php:161
+#. TRANS: Checkbox label on profile design page that will cause the profile image to be tiled.
+#: actions/designadminpanel.php:576 lib/designsettings.php:165
 msgid "Tile background image"
 msgstr "Répéter l’image d’arrière plan"
 
-#: actions/designadminpanel.php:577 lib/designsettings.php:170
+#. TRANS: Fieldset legend on profile design page to change profile page colours.
+#: actions/designadminpanel.php:590 lib/designsettings.php:175
 msgid "Change colours"
 msgstr "Modifier les couleurs"
 
-#: actions/designadminpanel.php:600 lib/designsettings.php:191
+#. TRANS: Label on profile design page for setting a profile page content colour.
+#: actions/designadminpanel.php:613 lib/designsettings.php:197
 msgid "Content"
 msgstr "Contenu"
 
-#: actions/designadminpanel.php:613 lib/designsettings.php:204
+#. TRANS: Label on profile design page for setting a profile page sidebar colour.
+#: actions/designadminpanel.php:626 lib/designsettings.php:211
 msgid "Sidebar"
 msgstr "Barre latérale"
 
-#: actions/designadminpanel.php:626 lib/designsettings.php:217
+#. TRANS: Label on profile design page for setting a profile page text colour.
+#: actions/designadminpanel.php:639 lib/designsettings.php:225
 msgid "Text"
 msgstr "Texte"
 
-#: actions/designadminpanel.php:639 lib/designsettings.php:230
+#. TRANS: Label on profile design page for setting a profile page links colour.
+#: actions/designadminpanel.php:652 lib/designsettings.php:239
 msgid "Links"
 msgstr "Liens"
 
-#: actions/designadminpanel.php:664
+#: actions/designadminpanel.php:677
 msgid "Advanced"
 msgstr "Avancé"
 
-#: actions/designadminpanel.php:668
+#: actions/designadminpanel.php:681
 msgid "Custom CSS"
 msgstr "CSS personnalisé"
 
-#: actions/designadminpanel.php:689 lib/designsettings.php:247
+#. TRANS: Button text on profile design page to immediately reset all colour settings to default.
+#: actions/designadminpanel.php:702 lib/designsettings.php:257
 msgid "Use defaults"
 msgstr "Utiliser les valeurs par défaut"
 
-#: actions/designadminpanel.php:690 lib/designsettings.php:248
+#. TRANS: Title for button on profile design page to reset all colour settings to default.
+#: actions/designadminpanel.php:703 lib/designsettings.php:259
 msgid "Restore default designs"
 msgstr "Restaurer les conceptions par défaut"
 
-#: actions/designadminpanel.php:696 lib/designsettings.php:254
+#. TRANS: Title for button on profile design page to reset all colour settings to default without saving.
+#: actions/designadminpanel.php:709 lib/designsettings.php:267
 msgid "Reset back to default"
 msgstr "Revenir aux valeurs par défaut"
 
 #. TRANS: Submit button title.
-#: actions/designadminpanel.php:698 actions/licenseadminpanel.php:319
-#: actions/othersettings.php:126 actions/pathsadminpanel.php:351
-#: actions/profilesettings.php:174 actions/sessionsadminpanel.php:199
-#: actions/siteadminpanel.php:292 actions/sitenoticeadminpanel.php:195
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:226
-#: actions/tagother.php:154 actions/useradminpanel.php:295
-#: lib/applicationeditform.php:356 lib/designsettings.php:256
-#: lib/groupeditform.php:202
+#: actions/designadminpanel.php:711 actions/licenseadminpanel.php:319
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/snapshotadminpanel.php:245 actions/tagother.php:154
+#: lib/applicationeditform.php:357
 msgid "Save"
 msgstr "Enregistrer"
 
-#: actions/designadminpanel.php:699 lib/designsettings.php:257
+#. TRANS: Title for button on profile design page to save settings.
+#: actions/designadminpanel.php:712 lib/designsettings.php:272
 msgid "Save design"
 msgstr "Sauvegarder la conception"
 
@@ -1293,109 +2029,129 @@ msgstr "Ajouter aux favoris"
 msgid "No such document \"%s\""
 msgstr "Document « %s » non trouvé."
 
-#: actions/editapplication.php:54
-msgid "Edit Application"
-msgstr "Modifier l’application"
+#. TRANS: Title for "Edit application" form.
+#. TRANS: Form legend.
+#: actions/editapplication.php:54 lib/applicationeditform.php:129
+msgid "Edit application"
+msgstr "Modifier votre application"
 
+#. TRANS: Client error displayed trying to edit an application while not logged in.
 #: actions/editapplication.php:66
 msgid "You must be logged in to edit an application."
 msgstr "Vous devez être connecté pour modifier une application."
 
-#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
-#: actions/showapplication.php:87
+#. TRANS: Client error displayed trying to edit an application that does not exist.
+#: actions/editapplication.php:83 actions/showapplication.php:87
 msgid "No such application."
 msgstr "Application non trouvée."
 
-#: actions/editapplication.php:161
+#. TRANS: Instructions for "Edit application" form.
+#: actions/editapplication.php:167
 msgid "Use this form to edit your application."
 msgstr "Utilisez ce formulaire pour modifier votre application."
 
-#: actions/editapplication.php:177 actions/newapplication.php:159
+#. TRANS: Validation error shown when not providing a name in the "Edit application" form.
+#: actions/editapplication.php:184 actions/newapplication.php:163
 msgid "Name is required."
 msgstr "Le nom est requis."
 
-#: actions/editapplication.php:180 actions/newapplication.php:165
-msgid "Name is too long (max 255 chars)."
-msgstr "Le nom est trop long (maximum de 255 caractères)."
+#. TRANS: Validation error shown when providing too long a name in the "Edit application" form.
+#: actions/editapplication.php:188 actions/newapplication.php:169
+msgid "Name is too long (maximum 255 characters)."
+msgstr "Le nom est trop long (limité à 255 caractères maximum)."
 
-#: actions/editapplication.php:183 actions/newapplication.php:162
+#. TRANS: Validation error shown when providing a name for an application that already exists in the "Edit application" form.
+#: actions/editapplication.php:192 actions/newapplication.php:166
 msgid "Name already in use. Try another one."
 msgstr "Ce nom est déjà utilisé. Essayez-en un autre."
 
-#: actions/editapplication.php:186 actions/newapplication.php:168
+#. TRANS: Validation error shown when not providing a description in the "Edit application" form.
+#: actions/editapplication.php:196 actions/newapplication.php:172
 msgid "Description is required."
 msgstr "La description est requise."
 
-#: actions/editapplication.php:194
+#. TRANS: Validation error shown when providing too long a source URL in the "Edit application" form.
+#: actions/editapplication.php:208
 msgid "Source URL is too long."
 msgstr "L’URL source est trop longue."
 
-#: actions/editapplication.php:200 actions/newapplication.php:185
+#. TRANS: Validation error shown when providing an invalid source URL in the "Edit application" form.
+#: actions/editapplication.php:215 actions/newapplication.php:193
 msgid "Source URL is not valid."
 msgstr "L’URL source est invalide."
 
-#: actions/editapplication.php:203 actions/newapplication.php:188
+#. TRANS: Validation error shown when not providing an organisation in the "Edit application" form.
+#: actions/editapplication.php:219 actions/newapplication.php:196
 msgid "Organization is required."
 msgstr "L’organisation est requise."
 
-#: actions/editapplication.php:206 actions/newapplication.php:191
-msgid "Organization is too long (max 255 chars)."
-msgstr "L’organisation est trop longue (maximum de 255 caractères)."
+#. TRANS: Validation error shown when providing too long an arganisation name in the "Edit application" form.
+#: actions/editapplication.php:223 actions/newapplication.php:199
+msgid "Organization is too long (maximum 255 characters)."
+msgstr "L’organisation est trop longue (limitée à 255 caractères maximum)."
 
-#: actions/editapplication.php:209 actions/newapplication.php:194
+#: actions/editapplication.php:226 actions/newapplication.php:202
 msgid "Organization homepage is required."
 msgstr "La page d’accueil de l’organisation est requise."
 
-#: actions/editapplication.php:218 actions/newapplication.php:206
+#. TRANS: Validation error shown when providing too long a callback URL in the "Edit application" form.
+#: actions/editapplication.php:237 actions/newapplication.php:214
 msgid "Callback is too long."
 msgstr "Le rappel (Callback) est trop long."
 
-#: actions/editapplication.php:225 actions/newapplication.php:215
+#. TRANS: Validation error shown when providing an invalid callback URL in the "Edit application" form.
+#: actions/editapplication.php:245 actions/newapplication.php:223
 msgid "Callback URL is not valid."
 msgstr "L’URL de rappel (Callback) est invalide."
 
-#: actions/editapplication.php:261
+#. TRANS: Server error occuring when an application could not be updated from the "Edit application" form.
+#: actions/editapplication.php:282
 msgid "Could not update application."
 msgstr "Impossible de mettre à jour l’application."
 
-#: actions/editgroup.php:56
+#. TRANS: Title for form to edit a group. %s is a group nickname.
+#: actions/editgroup.php:55
 #, php-format
 msgid "Edit %s group"
 msgstr "Modifier le groupe %s"
 
+#. TRANS: Client error displayed trying to edit a group while not logged in.
+#. TRANS: Client error displayed trying to create a group while not logged in.
 #: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
 msgid "You must be logged in to create a group."
 msgstr "Vous devez ouvrir une session pour créer un groupe."
 
-#: actions/editgroup.php:107 actions/editgroup.php:172
+#. TRANS: Client error displayed trying to edit a group while not being a group admin.
+#: actions/editgroup.php:110 actions/editgroup.php:176
 #: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
 msgid "You must be an admin to edit the group."
 msgstr "Vous devez être administrateur pour modifier le groupe."
 
-#: actions/editgroup.php:158
+#. TRANS: Form instructions for group edit form.
+#: actions/editgroup.php:161
 msgid "Use this form to edit the group."
 msgstr "Remplissez ce formulaire pour modifier les options du groupe."
 
-#: actions/editgroup.php:205 actions/newgroup.php:145
-#, php-format
-msgid "description is too long (max %d chars)."
-msgstr "la description est trop longue (%d caractères maximum)."
-
-#: actions/editgroup.php:228 actions/newgroup.php:168
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#: actions/editgroup.php:239 actions/newgroup.php:179
 #, php-format
 msgid "Invalid alias: \"%s\""
 msgstr "Alias invalide : « %s »"
 
-#: actions/editgroup.php:258
+#. TRANS: Server error displayed when editing a group fails.
+#: actions/editgroup.php:272
 msgid "Could not update group."
 msgstr "Impossible de mettre à jour le groupe."
 
+#. TRANS: Server error displayed when group aliases could not be added.
 #. TRANS: Server exception thrown when creating group aliases failed.
-#: actions/editgroup.php:264 classes/User_group.php:514
+#: actions/editgroup.php:279 classes/User_group.php:529
 msgid "Could not create aliases."
 msgstr "Impossible de créer les alias."
 
-#: actions/editgroup.php:280
+#. TRANS: Group edit form success message.
+#: actions/editgroup.php:296
 msgid "Options saved."
 msgstr "Vos options ont été enregistrées."
 
@@ -1413,12 +2169,12 @@ msgstr "Configurez les courriels que vous souhaitez recevoir de %%site.name%%."
 
 #. TRANS: Form legend for e-mail settings form.
 #. TRANS: Field label for e-mail address input in e-mail settings form.
-#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#: actions/emailsettings.php:107 actions/emailsettings.php:133
 msgid "Email address"
 msgstr "Adresse électronique"
 
 #. TRANS: Form note in e-mail settings form.
-#: actions/emailsettings.php:112
+#: actions/emailsettings.php:113
 msgid "Current confirmed email address."
 msgstr "Adresse courriel actuellement confirmée."
 
@@ -1427,14 +2183,14 @@ msgstr "Adresse courriel actuellement confirmée."
 #. TRANS: Button label to remove a confirmed IM address.
 #. TRANS: Button label to remove a confirmed SMS address.
 #. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
-#: actions/emailsettings.php:115 actions/emailsettings.php:162
+#: actions/emailsettings.php:116 actions/emailsettings.php:183
 #: actions/imsettings.php:116 actions/smssettings.php:124
 #: actions/smssettings.php:180
 msgctxt "BUTTON"
 msgid "Remove"
-msgstr "Retirer"
+msgstr "Enlever"
 
-#: actions/emailsettings.php:122
+#: actions/emailsettings.php:123
 msgid ""
 "Awaiting confirmation on this address. Check your inbox (and spam box!) for "
 "a message with further instructions."
@@ -1442,29 +2198,19 @@ msgstr ""
 "En attente d’une confirmation pour cette adresse. Vérifiez votre boîte de "
 "réception (et celle de spam !) pour recevoir de nouvelles instructions."
 
-#. TRANS: Button label to cancel an e-mail address confirmation procedure.
-#. TRANS: Button label to cancel an IM address confirmation procedure.
-#. TRANS: Button label to cancel a SMS address confirmation procedure.
-#. TRANS: Button label in the "Edit application" form.
-#: actions/emailsettings.php:127 actions/imsettings.php:131
-#: actions/smssettings.php:137 lib/applicationeditform.php:350
-msgctxt "BUTTON"
-msgid "Cancel"
-msgstr "Annuler"
-
 #. TRANS: Instructions for e-mail address input form. Do not translate
 #. TRANS: "example.org". It is one of the domain names reserved for
 #. TRANS: use in examples by http://www.rfc-editor.org/rfc/rfc2606.txt.
 #. TRANS: Any other domain may be owned by a legitimate person or
 #. TRANS: organization.
-#: actions/emailsettings.php:139
+#: actions/emailsettings.php:140
 msgid "Email address, like \"UserName@example.org\""
 msgstr "Adresse de courriel (ex : nom@example.org)"
 
 #. TRANS: Button label for adding an e-mail address in e-mail settings form.
 #. TRANS: Button label for adding an IM address in IM settings form.
 #. TRANS: Button label for adding a SMS phone number in SMS settings form.
-#: actions/emailsettings.php:143 actions/imsettings.php:151
+#: actions/emailsettings.php:144 actions/imsettings.php:151
 #: actions/smssettings.php:162
 msgctxt "BUTTON"
 msgid "Add"
@@ -1472,112 +2218,119 @@ msgstr "Ajouter"
 
 #. TRANS: Form legend for incoming e-mail settings form.
 #. TRANS: Form legend for incoming SMS settings form.
-#: actions/emailsettings.php:151 actions/smssettings.php:171
+#: actions/emailsettings.php:152 actions/smssettings.php:171
 msgid "Incoming email"
 msgstr "Courriel entrant"
 
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:158
+msgid "I want to post notices by email."
+msgstr "Je veux envoyer mes avis par courriel."
+
 #. TRANS: Form instructions for incoming e-mail form in e-mail settings.
 #. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
-#: actions/emailsettings.php:159 actions/smssettings.php:178
+#: actions/emailsettings.php:180 actions/smssettings.php:178
 msgid "Send email to this address to post new notices."
 msgstr "Écrivez à cette adresse courriel pour poster de nouveaux avis."
 
-#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming e-mail address input form, when an address has already been assigned.
 #. TRANS: Instructions for incoming SMS e-mail address input form.
-#: actions/emailsettings.php:168 actions/smssettings.php:186
+#: actions/emailsettings.php:189 actions/smssettings.php:186
 msgid "Make a new email address for posting to; cancels the old one."
 msgstr "Nouvelle adresse courriel pour poster ; annule l’ancienne."
 
+#. TRANS: Instructions for incoming e-mail address input form.
+#: actions/emailsettings.php:193
+msgid ""
+"To send notices via email, we need to create a unique email address for you "
+"on this server:"
+msgstr ""
+
 #. TRANS: Button label for adding an e-mail address to send notices from.
 #. TRANS: Button label for adding an SMS e-mail address to send notices from.
-#: actions/emailsettings.php:172 actions/smssettings.php:189
+#: actions/emailsettings.php:199 actions/smssettings.php:189
 msgctxt "BUTTON"
 msgid "New"
 msgstr "Nouveau"
 
 #. TRANS: Form legend for e-mail preferences form.
-#: actions/emailsettings.php:178
+#: actions/emailsettings.php:208
 msgid "Email preferences"
 msgstr "Préférences de courrier électronique"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:184
+#: actions/emailsettings.php:216
 msgid "Send me notices of new subscriptions through email."
 msgstr "Avertissez-moi par courriel des nouveaux abonnements."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:190
+#: actions/emailsettings.php:222
 msgid "Send me email when someone adds my notice as a favorite."
 msgstr ""
 "Envoyez-moi un courriel quand un utilisateur ajoute un de mes avis à ses "
 "favoris."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:197
+#: actions/emailsettings.php:229
 msgid "Send me email when someone sends me a private message."
 msgstr "Envoyez-moi un courriel quand quelqu’un m’envoie un message personnel."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:203
+#: actions/emailsettings.php:235
 msgid "Send me email when someone sends me an \"@-reply\"."
 msgstr "Envoyez-moi un courriel quand quelqu’un m’envoie une réponse « @ »."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:209
+#: actions/emailsettings.php:241
 msgid "Allow friends to nudge me and send me an email."
 msgstr "Autoriser mes amis à m’envoyer des courriels et des clins d’œil."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:216
-msgid "I want to post notices by email."
-msgstr "Je veux envoyer mes avis par courriel."
-
-#. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:223
+#: actions/emailsettings.php:247
 msgid "Publish a MicroID for my email address."
 msgstr "Publier un MicroID pour mon adresse courriel."
 
 #. TRANS: Confirmation message for successful e-mail preferences save.
-#: actions/emailsettings.php:338
+#: actions/emailsettings.php:368
 msgid "Email preferences saved."
 msgstr "Préférences de courrier électronique enregistrées."
 
 #. TRANS: Message given saving e-mail address without having provided one.
-#: actions/emailsettings.php:357
+#: actions/emailsettings.php:388
 msgid "No email address."
 msgstr "Aucune adresse électronique."
 
 #. TRANS: Message given saving e-mail address that cannot be normalised.
-#: actions/emailsettings.php:365
+#: actions/emailsettings.php:396
 msgid "Cannot normalize that email address"
 msgstr "Impossible d’utiliser cette adresse courriel"
 
 #. TRANS: Message given saving e-mail address that not valid.
-#: actions/emailsettings.php:370 actions/register.php:208
+#: actions/emailsettings.php:401 actions/register.php:212
 #: actions/siteadminpanel.php:144
 msgid "Not a valid email address."
 msgstr "Adresse courriel invalide."
 
 #. TRANS: Message given saving e-mail address that is already set.
-#: actions/emailsettings.php:374
+#: actions/emailsettings.php:405
 msgid "That is already your email address."
 msgstr "Vous utilisez déjà cette adresse courriel."
 
 #. TRANS: Message given saving e-mail address that is already set for another user.
-#: actions/emailsettings.php:378
+#: actions/emailsettings.php:409
 msgid "That email address already belongs to another user."
 msgstr "Cette adresse courriel appartient déjà à un autre utilisateur."
 
 #. TRANS: Server error thrown on database error adding e-mail confirmation code.
 #. TRANS: Server error thrown on database error adding IM confirmation code.
 #. TRANS: Server error thrown on database error adding SMS confirmation code.
-#: actions/emailsettings.php:395 actions/imsettings.php:351
+#: actions/emailsettings.php:426 actions/imsettings.php:351
 #: actions/smssettings.php:373
 msgid "Couldn't insert confirmation code."
 msgstr "Impossible d’insérer le code de confirmation."
 
 #. TRANS: Message given saving valid e-mail address that is to be confirmed.
-#: actions/emailsettings.php:402
+#: actions/emailsettings.php:433
 msgid ""
 "A confirmation code was sent to the email address you added. Check your "
 "inbox (and spam box!) for the code and instructions on how to use it."
@@ -1588,50 +2341,56 @@ msgstr ""
 #. TRANS: Message given canceling e-mail address confirmation that is not pending.
 #. TRANS: Message given canceling IM address confirmation that is not pending.
 #. TRANS: Message given canceling SMS phone number confirmation that is not pending.
-#: actions/emailsettings.php:423 actions/imsettings.php:386
+#: actions/emailsettings.php:454 actions/imsettings.php:386
 #: actions/smssettings.php:408
 msgid "No pending confirmation to cancel."
 msgstr "Aucune confirmation à annuler."
 
 #. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
-#: actions/emailsettings.php:428
+#: actions/emailsettings.php:459
 msgid "That is the wrong email address."
 msgstr "Cette adresse de messagerie électronique est erronée."
 
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/emailsettings.php:468 actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr "Impossible de supprimer le courriel de confirmation."
+
 #. TRANS: Message given after successfully canceling e-mail address confirmation.
-#: actions/emailsettings.php:442
+#: actions/emailsettings.php:473
 msgid "Email confirmation cancelled."
 msgstr "Confirmation de courrier électronique annulée."
 
 #. TRANS: Message given trying to remove an e-mail address that is not
 #. TRANS: registered for the active user.
-#: actions/emailsettings.php:462
+#: actions/emailsettings.php:493
 msgid "That is not your email address."
 msgstr "Ceci n’est pas votre adresse courriel."
 
 #. TRANS: Message given after successfully removing a registered e-mail address.
-#: actions/emailsettings.php:483
+#: actions/emailsettings.php:514
 msgid "The email address was removed."
 msgstr "L’adresse électronique a été supprimée."
 
-#: actions/emailsettings.php:497 actions/smssettings.php:568
+#: actions/emailsettings.php:528 actions/smssettings.php:568
 msgid "No incoming email address."
 msgstr "Aucune adresse de courriel entrant."
 
 #. TRANS: Server error thrown on database error removing incoming e-mail address.
 #. TRANS: Server error thrown on database error adding incoming e-mail address.
-#: actions/emailsettings.php:508 actions/emailsettings.php:532
+#: actions/emailsettings.php:540 actions/emailsettings.php:565
 #: actions/smssettings.php:578 actions/smssettings.php:602
 msgid "Couldn't update user record."
 msgstr "Impossible de mettre à jour le dossier de l’utilisateur."
 
 #. TRANS: Message given after successfully removing an incoming e-mail address.
-#: actions/emailsettings.php:512 actions/smssettings.php:581
+#: actions/emailsettings.php:544 actions/smssettings.php:581
 msgid "Incoming email address removed."
 msgstr "L’adresse de courriel entrant a été supprimée."
 
 #. TRANS: Message given after successfully adding an incoming e-mail address.
-#: actions/emailsettings.php:536 actions/smssettings.php:605
+#: actions/emailsettings.php:569 actions/smssettings.php:605
 msgid "New incoming email address added."
 msgstr "Nouvelle adresse de courriel entrant ajoutée."
 
@@ -1639,11 +2398,11 @@ msgstr "Nouvelle adresse de courriel entrant ajoutée."
 msgid "This notice is already a favorite!"
 msgstr "Cet avis a déjà été ajouté à vos favoris !"
 
-#: actions/favor.php:92 lib/disfavorform.php:140
+#: actions/favor.php:92 lib/disfavorform.php:144
 msgid "Disfavor favorite"
 msgstr "Retirer ce favori"
 
-#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: actions/favorited.php:65 lib/popularnoticesection.php:62
 #: lib/publicgroupnav.php:93
 msgid "Popular notices"
 msgstr "Avis populaires"
@@ -1681,7 +2440,7 @@ msgstr ""
 "premier à ajouter un avis à vos favoris !"
 
 #: actions/favoritesrss.php:111 actions/showfavorites.php:77
-#: lib/personalgroupnav.php:115
+#: lib/personalgroupnav.php:118
 #, php-format
 msgid "%s's favorite notices"
 msgstr "Avis favoris de %s"
@@ -1750,7 +2509,7 @@ msgstr "Impossible de convertir le jeton de requête en jeton d’accès."
 msgid "Remote service uses unknown version of OMB protocol."
 msgstr "Le service distant utilise une version inconnue du protocole OMB."
 
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
+#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:317
 msgid "Error updating remote profile."
 msgstr "Erreur lors de la mise à jour du profil distant."
 
@@ -1778,19 +2537,23 @@ msgstr "Vous ne pouvez pas attribuer des rôles aux utilisateurs sur ce site."
 msgid "User already has this role."
 msgstr "L’utilisateur a déjà ce rôle."
 
+#. TRANS: Client error displayed when trying to unblock a user from a group without providing a profile.
+#. TRANS: Client error displayed trying a change a subscription without providing a profile.
 #: actions/groupblock.php:71 actions/groupunblock.php:71
-#: actions/makeadmin.php:71 actions/subedit.php:46
+#: actions/makeadmin.php:71 actions/subedit.php:49
 #: lib/profileformaction.php:79
 msgid "No profile specified."
 msgstr "Aucun profil n’a été spécifié."
 
-#: actions/groupblock.php:76 actions/groupunblock.php:76
-#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
+#. TRANS: Client error displayed when trying to unblock a user from a group without providing an existing profile.
+#. TRANS: Client error displayed trying a change a subscription for a non-existant profile ID.
+#: actions/groupblock.php:76 actions/groupunblock.php:77
+#: actions/makeadmin.php:76 actions/subedit.php:57 actions/tagother.php:46
 #: actions/unsubscribe.php:84 lib/profileformaction.php:86
 msgid "No profile with that ID."
 msgstr "Aucun profil ne correspond à cet identifiant."
 
-#: actions/groupblock.php:81 actions/groupunblock.php:81
+#: actions/groupblock.php:81 actions/groupunblock.php:82
 #: actions/makeadmin.php:81
 msgid "No group specified."
 msgstr "Aucun groupe n’a été spécifié."
@@ -1857,8 +2620,10 @@ msgstr ""
 "Personnalisez l’apparence de votre groupe avec une image d’arrière plan et "
 "une palette de couleurs de votre choix"
 
+#. TRANS: Error message displayed if design settings could not be saved.
+#. TRANS: Error message displayed if design settings could not be saved after clicking "Use defaults".
 #: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
-#: lib/designsettings.php:391 lib/designsettings.php:413
+#: lib/designsettings.php:405 lib/designsettings.php:427
 msgid "Couldn't update your design."
 msgstr "Impossible de mettre à jour votre conception."
 
@@ -1878,6 +2643,14 @@ msgstr ""
 "Vous pouvez choisir un logo pour votre groupe. La taille maximale du fichier "
 "est de %s."
 
+#: actions/grouplogo.php:236
+msgid "Upload"
+msgstr "Transfert"
+
+#: actions/grouplogo.php:289
+msgid "Crop"
+msgstr "Recadrer"
+
 #: actions/grouplogo.php:365
 msgid "Pick a square area of the image to be the logo."
 msgstr "Sélectionnez une zone de forme carrée sur l’image qui sera le logo."
@@ -1922,7 +2695,7 @@ msgstr "Bloquer"
 #: actions/groupmembers.php:403
 msgctxt "TOOLTIP"
 msgid "Block this user"
-msgstr ""
+msgstr "Bloquer cet utilisateur"
 
 #: actions/groupmembers.php:498
 msgid "Make user an admin of the group"
@@ -1940,15 +2713,6 @@ msgctxt "TOOLTIP"
 msgid "Make this user an admin"
 msgstr "Faire de cet utilisateur un administrateur"
 
-#. TRANS: Message is used as link title. %s is a user nickname.
-#. TRANS: Title in atom group notice feed. %s is a group name.
-#. TRANS: Title in atom user notice feed. %s is a user name.
-#: actions/grouprss.php:139 actions/userrss.php:94
-#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
-#, php-format
-msgid "%s timeline"
-msgstr "Activité de %s"
-
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
 #: actions/grouprss.php:142
 #, php-format
@@ -2022,15 +2786,18 @@ msgstr ""
 "Pourquoi ne pas [créer un compte](%%action.register%%) et [créer le groupe](%"
 "%action.newgroup%%) vous-même !"
 
-#: actions/groupunblock.php:91
+#. TRANS: Client error displayed when trying to unblock a user from a group without being an administrator for the group.
+#: actions/groupunblock.php:94
 msgid "Only an admin can unblock group members."
 msgstr "Seul un administrateur peut débloquer les membres du groupes."
 
-#: actions/groupunblock.php:95
+#. TRANS: Client error displayed when trying to unblock a non-blocked user from a group.
+#: actions/groupunblock.php:99
 msgid "User is not blocked from group."
 msgstr "Cet utilisateur n’est pas bloqué du groupe."
 
-#: actions/groupunblock.php:128 actions/unblock.php:86
+#. TRANS: Server error displayed when unblocking a user from a group fails because of an unknown error.
+#: actions/groupunblock.php:131 actions/unblock.php:86
 msgid "Error removing the block."
 msgstr "Erreur lors de l’annulation du blocage."
 
@@ -2123,7 +2890,7 @@ msgid "Publish a MicroID for my Jabber/GTalk address."
 msgstr "Publier un MicroID pour mon adresse Jabber/GTalk."
 
 #. TRANS: Confirmation message for successful IM preferences save.
-#: actions/imsettings.php:290 actions/othersettings.php:180
+#: actions/imsettings.php:290 actions/othersettings.php:190
 msgid "Preferences saved."
 msgstr "Préférences enregistrées"
 
@@ -2205,50 +2972,80 @@ msgstr ""
 "Cette boîte de réception regroupe les messages personnels qui vous sont "
 "envoyés."
 
-#: actions/invite.php:39
+#. TRANS: Client error displayed when trying to sent invites while they have been disabled.
+#: actions/invite.php:40
 msgid "Invites have been disabled."
 msgstr "Les invitations ont été désactivées."
 
-#: actions/invite.php:41
+#. TRANS: Client error displayed when trying to sent invites while not logged in.
+#. TRANS: %s is the StatusNet site name.
+#: actions/invite.php:44
 #, php-format
 msgid "You must be logged in to invite other users to use %s."
 msgstr ""
 "Vous devez ouvrir une session pour inviter d’autres utilisateurs dans %s."
 
-#: actions/invite.php:72
+#. TRANS: Form validation message when providing an e-mail address that does not validate.
+#. TRANS: %s is an invalid e-mail address.
+#: actions/invite.php:77
 #, php-format
-msgid "Invalid email address: %s"
-msgstr "Adresse courriel invalide : %s"
+msgid "Invalid email address: %s."
+msgstr "Adresse courriel invalide : %s."
 
-#: actions/invite.php:110
-msgid "Invitation(s) sent"
-msgstr "Invitation(s) envoyée(s)"
+#. TRANS: Page title when invitations have been sent.
+#: actions/invite.php:116
+msgid "Invitations sent"
+msgstr "Invitations envoyées"
 
-#: actions/invite.php:112
+#. TRANS: Page title when inviting potential users.
+#: actions/invite.php:119
 msgid "Invite new users"
 msgstr "Inviter de nouveaux utilisateurs"
 
-#: actions/invite.php:128
-msgid "You are already subscribed to these users:"
-msgstr "Vous êtes déjà abonné à ces utilisateurs :"
-
-#. TRANS: Whois output.
-#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:430
-#, php-format
+#. TRANS: Message displayed inviting users to use a StatusNet site while the inviting user
+#. TRANS: is already subscribed to one or more users with the given e-mail address(es).
+#. TRANS: Plural form is based on the number of reported already subscribed e-mail addresses.
+#. TRANS: Followed by a bullet list.
+#: actions/invite.php:139
+msgid "You are already subscribed to this user:"
+msgid_plural "You are already subscribed to these users:"
+msgstr[0] "Vous êtes déjà abonné à cet utilisateur :"
+msgstr[1] "Vous êtes déjà abonné à ces utilisateurs :"
+
+#. TRANS: Used as list item for already subscribed users (%1$s is nickname, %2$s is e-mail address).
+#. TRANS: Used as list item for already registered people (%1$s is nickname, %2$s is e-mail address).
+#: actions/invite.php:145 actions/invite.php:159
+#, php-format
+msgctxt "INVITE"
 msgid "%1$s (%2$s)"
 msgstr "%1$s (%2$s)"
 
-#: actions/invite.php:136
-msgid ""
+#. TRANS: Message displayed inviting users to use a StatusNet site while the invited user
+#. TRANS: already uses a this StatusNet site. Plural form is based on the number of
+#. TRANS: reported already present people. Followed by a bullet list.
+#: actions/invite.php:153
+msgid "This person is already a user and you were automatically subscribed:"
+msgid_plural ""
 "These people are already users and you were automatically subscribed to them:"
-msgstr "Vous avez été automatiquement abonné aux utilisateurs suivants :"
-
-#: actions/invite.php:144
-msgid "Invitation(s) sent to the following people:"
-msgstr "Invitation(s) envoyée(s) aux personnes suivantes :"
-
-#: actions/invite.php:150
+msgstr[0] ""
+"La personne suivante est déjà un utilisateur et vous y avez été "
+"automatiquement abonné :"
+msgstr[1] ""
+"Les personnes suivantes sont déjà des utilisateurs et vous y avez été "
+"automatiquement abonné :"
+
+#. TRANS: Message displayed inviting users to use a StatusNet site. Plural form is
+#. TRANS: based on the number of invitations sent. Followed by a bullet list of
+#. TRANS: e-mail addresses to which invitations were sent.
+#: actions/invite.php:167
+msgid "Invitation sent to the following person:"
+msgid_plural "Invitations sent to the following people:"
+msgstr[0] "Invitation envoyée à la personne suivante :"
+msgstr[1] "Invitations envoyées aux personnes suivantes :"
+
+#. TRANS: Generic message displayed after sending out one or more invitations to
+#. TRANS: people to join a StatusNet site.
+#: actions/invite.php:177
 msgid ""
 "You will be notified when your invitees accept the invitation and register "
 "on the site. Thanks for growing the community!"
@@ -2257,43 +3054,54 @@ msgstr ""
 "invitation et se seront inscrits sur le site. Merci de faire grandir notre "
 "communauté !"
 
-#: actions/invite.php:162
+#. TRANS: Form instructions.
+#: actions/invite.php:190
 msgid ""
 "Use this form to invite your friends and colleagues to use this service."
 msgstr ""
 "Remplissez ce formulaire pour inviter vos amis et collègues à utiliser ce "
 "service."
 
-#: actions/invite.php:187
+#. TRANS: Field label for a list of e-mail addresses.
+#: actions/invite.php:217
 msgid "Email addresses"
 msgstr "Adresses courriel"
 
-#: actions/invite.php:189
+#. TRANS: Tooltip for field label for a list of e-mail addresses.
+#: actions/invite.php:220
 msgid "Addresses of friends to invite (one per line)"
 msgstr "Adresses d’amis à inviter (un par ligne)"
 
-#: actions/invite.php:192
+#. TRANS: Field label for a personal message to send to invitees.
+#: actions/invite.php:224
 msgid "Personal message"
 msgstr "Message personnel"
 
-#: actions/invite.php:194
+#. TRANS: Tooltip for field label for a personal message to send to invitees.
+#: actions/invite.php:227
 msgid "Optionally add a personal message to the invitation."
 msgstr "Ajouter un message personnel à l’invitation (optionnel)."
 
 #. TRANS: Send button for inviting friends
-#: actions/invite.php:198
+#: actions/invite.php:231
 msgctxt "BUTTON"
 msgid "Send"
 msgstr "Envoyer"
 
-#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
-#: actions/invite.php:228
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral
+#. TRANS: singular 3rd-person pronoun in English. %1$s is the inviting user, $2$s is
+#. TRANS: the StatusNet sitename.
+#: actions/invite.php:263
 #, php-format
 msgid "%1$s has invited you to join them on %2$s"
 msgstr "%1$s vous invite à vous inscrire sur %2$s"
 
-#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
-#: actions/invite.php:231
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral
+#. TRANS: singular 3rd-person pronoun in English. %1$s is the inviting user, %2$s is the
+#. TRANS: StatusNet sitename, %3$s is the site URL, %4$s is the personal message from the
+#. TRANS: inviting user, %s%5 a link to the timeline for the inviting user, %s$6 is a link
+#. TRANS: to register with the StatusNet site.
+#: actions/invite.php:270
 #, php-format
 msgid ""
 "%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2356,10 +3164,6 @@ msgstr ""
 msgid "You must be logged in to join a group."
 msgstr "Vous devez ouvrir une session pour rejoindre un groupe."
 
-#: actions/joingroup.php:88 actions/leavegroup.php:88
-msgid "No nickname or ID."
-msgstr "Aucun pseudo ou ID."
-
 #: actions/joingroup.php:141
 #, php-format
 msgid "%1$s joined group %2$s"
@@ -2370,7 +3174,7 @@ msgid "You must be logged in to leave a group."
 msgstr "Vous devez ouvrir une session pour quitter un groupe."
 
 #. TRANS: Error text shown when trying to leave an existing group the user is not a member of.
-#: actions/leavegroup.php:100 lib/command.php:389
+#: actions/leavegroup.php:100 lib/command.php:386
 msgid "You are not a member of that group."
 msgstr "Vous n’êtes pas membre de ce groupe."
 
@@ -2383,45 +3187,47 @@ msgstr "%1$s a quitté le groupe %2$s"
 #: actions/licenseadminpanel.php:56
 msgctxt "TITLE"
 msgid "License"
-msgstr ""
+msgstr "Licence"
 
 #: actions/licenseadminpanel.php:67
 msgid "License for this StatusNet site"
-msgstr ""
+msgstr "Licence de ce site StatusNet"
 
 #: actions/licenseadminpanel.php:139
 msgid "Invalid license selection."
-msgstr ""
+msgstr "Sélection de licence invalide."
 
 #: actions/licenseadminpanel.php:149
 msgid ""
 "You must specify the owner of the content when using the All Rights Reserved "
 "license."
 msgstr ""
+"Vous devez spécifier le propriétaire du contenu lorsque vous utilisez la "
+"licence « Tous droits réservés »."
 
 #: actions/licenseadminpanel.php:156
-msgid "Invalid license title. Max length is 255 characters."
-msgstr ""
+msgid "Invalid license title. Maximum length is 255 characters."
+msgstr "Titre de licence invalide. La taille maximale est de 255 caractères."
 
 #: actions/licenseadminpanel.php:168
 msgid "Invalid license URL."
-msgstr ""
+msgstr "URL de licence invalide."
 
 #: actions/licenseadminpanel.php:171
 msgid "Invalid license image URL."
-msgstr ""
+msgstr "URL d’image de licence invalide."
 
 #: actions/licenseadminpanel.php:179
 msgid "License URL must be blank or a valid URL."
-msgstr ""
+msgstr "L’URL de la licence doit être vide ou valide."
 
 #: actions/licenseadminpanel.php:187
 msgid "License image must be blank or valid URL."
-msgstr ""
+msgstr "L’URL de l’image de la la licence doit être vide ou valide."
 
 #: actions/licenseadminpanel.php:239
 msgid "License selection"
-msgstr ""
+msgstr "Sélection d’une licence"
 
 #: actions/licenseadminpanel.php:245
 msgid "Private"
@@ -2429,59 +3235,59 @@ msgstr "Privé"
 
 #: actions/licenseadminpanel.php:246
 msgid "All Rights Reserved"
-msgstr ""
+msgstr "Tous droits réservés"
 
 #: actions/licenseadminpanel.php:247
 msgid "Creative Commons"
-msgstr ""
+msgstr "Creative Commons"
 
 #: actions/licenseadminpanel.php:252
 msgid "Type"
-msgstr ""
+msgstr "Type"
 
 #: actions/licenseadminpanel.php:254
 msgid "Select license"
-msgstr ""
+msgstr "Sélectionner une licence"
 
 #: actions/licenseadminpanel.php:268
 msgid "License details"
-msgstr ""
+msgstr "Détails de la licence"
 
 #: actions/licenseadminpanel.php:274
 msgid "Owner"
-msgstr ""
+msgstr "Propriétaire"
 
 #: actions/licenseadminpanel.php:275
 msgid "Name of the owner of the site's content (if applicable)."
-msgstr ""
+msgstr "Nom du propriétaire du contenu du site (si applicable)."
 
 #: actions/licenseadminpanel.php:283
 msgid "License Title"
-msgstr ""
+msgstr "Titre de la licence"
 
 #: actions/licenseadminpanel.php:284
 msgid "The title of the license."
-msgstr ""
+msgstr "Le titre de la licence."
 
 #: actions/licenseadminpanel.php:292
 msgid "License URL"
-msgstr ""
+msgstr "URL de la licence"
 
 #: actions/licenseadminpanel.php:293
 msgid "URL for more information about the license."
-msgstr ""
+msgstr "URL où obtenir plus d'informations sur la licence."
 
 #: actions/licenseadminpanel.php:300
 msgid "License Image URL"
-msgstr ""
+msgstr "URL de l’image de la licence"
 
 #: actions/licenseadminpanel.php:301
 msgid "URL for an image to display with the license."
-msgstr ""
+msgstr "URL d’une image à afficher avec la licence."
 
 #: actions/licenseadminpanel.php:319
 msgid "Save license settings"
-msgstr ""
+msgstr "Enregistrer les paramètres de licence"
 
 #: actions/login.php:102 actions/otp.php:62 actions/register.php:144
 msgid "Already logged in."
@@ -2505,11 +3311,11 @@ msgstr "Ouvrir une session"
 msgid "Login to site"
 msgstr "Ouverture de session"
 
-#: actions/login.php:258 actions/register.php:485
+#: actions/login.php:258 actions/register.php:491
 msgid "Remember me"
 msgstr "Se souvenir de moi"
 
-#: actions/login.php:259 actions/register.php:487
+#: actions/login.php:259 actions/register.php:493
 msgid "Automatically login in the future; not for shared computers!"
 msgstr ""
 "Ouvrir automatiquement ma session à l’avenir (déconseillé pour les "
@@ -2565,73 +3371,77 @@ msgstr "Impossible de rendre %1$s administrateur du groupe %2$s."
 msgid "No current status."
 msgstr "Aucun statut actuel."
 
+#. TRANS: This is the title of the form for adding a new application.
 #: actions/newapplication.php:52
-msgid "New Application"
+msgid "New application"
 msgstr "Nouvelle application"
 
-#: actions/newapplication.php:64
+#. TRANS: Client error displayed trying to add a new application while not logged in.
+#: actions/newapplication.php:65
 msgid "You must be logged in to register an application."
 msgstr "Vous devez être connecté pour enregistrer une application."
 
-#: actions/newapplication.php:143
+#: actions/newapplication.php:147
 msgid "Use this form to register a new application."
 msgstr "Utilisez ce formulaire pour inscrire une nouvelle application."
 
-#: actions/newapplication.php:176
+#: actions/newapplication.php:184
 msgid "Source URL is required."
 msgstr "L’URL source est requise."
 
-#: actions/newapplication.php:258 actions/newapplication.php:267
+#: actions/newapplication.php:266 actions/newapplication.php:275
 msgid "Could not create application."
 msgstr "Impossible de créer l’application."
 
+#. TRANS: Title for form to create a group.
 #: actions/newgroup.php:53
 msgid "New group"
 msgstr "Nouveau groupe"
 
+#. TRANS: Form instructions for group create form.
 #: actions/newgroup.php:110
 msgid "Use this form to create a new group."
 msgstr "Remplissez les champs ci-dessous pour créer un nouveau groupe :"
 
-#: actions/newmessage.php:71 actions/newmessage.php:231
+#: actions/newmessage.php:71 actions/newmessage.php:234
 msgid "New message"
 msgstr "Nouveau message"
 
 #. TRANS: Error text shown when trying to send a direct message to a user without a mutual subscription (each user must be subscribed to the other).
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:502
+#: actions/newmessage.php:121 actions/newmessage.php:164 lib/command.php:501
 msgid "You can't send a message to this user."
 msgstr "Vous ne pouvez pas envoyer de messages à cet utilisateur."
 
 #. TRANS: Command exception text shown when trying to send a direct message to another user without content.
 #. TRANS: Command exception text shown when trying to reply to a notice without providing content for the reply.
-#: actions/newmessage.php:144 actions/newnotice.php:138 lib/command.php:481
-#: lib/command.php:582
+#: actions/newmessage.php:144 actions/newnotice.php:140 lib/command.php:478
+#: lib/command.php:581
 msgid "No content!"
 msgstr "Aucun contenu !"
 
-#: actions/newmessage.php:158
+#: actions/newmessage.php:161
 msgid "No recipient specified."
 msgstr "Aucun destinataire n’a été spécifié."
 
 #. TRANS: Error text shown when trying to send a direct message to self.
-#: actions/newmessage.php:164 lib/command.php:506
+#: actions/newmessage.php:167 lib/command.php:505
 msgid ""
 "Don't send a message to yourself; just say it to yourself quietly instead."
 msgstr ""
 "N’envoyez pas de message à vous-même ; dites-le plutôt dans votre tête..."
 
-#: actions/newmessage.php:181
+#: actions/newmessage.php:184
 msgid "Message sent"
 msgstr "Message envoyé"
 
 #. TRANS: Message given have sent a direct message to another user.
 #. TRANS: %s is the name of the other user.
-#: actions/newmessage.php:185 lib/command.php:514
+#: actions/newmessage.php:188 lib/command.php:513
 #, php-format
 msgid "Direct message to %s sent."
 msgstr "Message direct envoyé à %s."
 
-#: actions/newmessage.php:210 actions/newnotice.php:261 lib/channel.php:189
+#: actions/newmessage.php:213 actions/newnotice.php:264
 msgid "Ajax Error"
 msgstr "Erreur Ajax"
 
@@ -2639,7 +3449,7 @@ msgstr "Erreur Ajax"
 msgid "New notice"
 msgstr "Nouvel avis"
 
-#: actions/newnotice.php:227
+#: actions/newnotice.php:230
 msgid "Notice posted"
 msgstr "Avis publié"
 
@@ -2692,7 +3502,8 @@ msgstr "mises à jour correspondant au(x) terme(s) « %1$s » sur %2$s !"
 
 #: actions/nudge.php:85
 msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email "
+"address yet."
 msgstr ""
 "Cet utilisateur n’accepte pas les clins d’œil ou n’a pas encore validé son "
 "adresse électronique."
@@ -2705,74 +3516,102 @@ msgstr "Clin d’œil envoyé"
 msgid "Nudge sent!"
 msgstr "Clin d’œil envoyé !"
 
-#: actions/oauthappssettings.php:59
+#. TRANS: Message displayed to an anonymous user trying to view OAuth application list.
+#: actions/oauthappssettings.php:60
 msgid "You must be logged in to list your applications."
 msgstr "Vous devez être connecté pour lister vos applications."
 
-#: actions/oauthappssettings.php:74
+#. TRANS: Page title for OAuth applications
+#: actions/oauthappssettings.php:76
 msgid "OAuth applications"
 msgstr "Applications OAuth"
 
-#: actions/oauthappssettings.php:85
+#. TRANS: Page instructions for OAuth applications
+#: actions/oauthappssettings.php:88
 msgid "Applications you have registered"
 msgstr "Applications que vous avez enregistré"
 
-#: actions/oauthappssettings.php:135
+#. TRANS: Empty list message on page with OAuth applications.
+#: actions/oauthappssettings.php:141
 #, php-format
 msgid "You have not registered any applications yet."
 msgstr "Vous n’avez encore enregistré aucune application."
 
-#: actions/oauthconnectionssettings.php:72
+#. TRANS: Title for OAuth connection settings.
+#: actions/oauthconnectionssettings.php:71
 msgid "Connected applications"
 msgstr "Applications connectées."
 
+#. TRANS: Instructions for OAuth connection settings.
 #: actions/oauthconnectionssettings.php:83
-msgid "You have allowed the following applications to access your account."
+msgid "The following connections exist for your account."
 msgstr ""
+"Vous avez autorisé les applications suivantes à se connecter à votre compte."
 
-#: actions/oauthconnectionssettings.php:175
+#. TRANS: Client error when trying to revoke access for an application while not being a user of it.
+#: actions/oauthconnectionssettings.php:168
 msgid "You are not a user of that application."
 msgstr "Vous n’êtes pas un utilisateur de cette application."
 
-#: actions/oauthconnectionssettings.php:186
+#. TRANS: Client error when revoking access has failed for some reason.
+#. TRANS: %s is the application ID revoking access failed for.
+#: actions/oauthconnectionssettings.php:183
 #, php-format
-msgid "Unable to revoke access for app: %s."
-msgstr "Impossible d’annuler l’accès de l’application %s."
+msgid "Unable to revoke access for application: %s."
+msgstr "Impossible de révoquer l’accès par l’application : %s."
 
-#: actions/oauthconnectionssettings.php:198
+#. TRANS: Success message after revoking access for an application.
+#. TRANS: %1$s is the application name, %2$s is the first part of the user token.
+#: actions/oauthconnectionssettings.php:202
+#, php-format
+msgid ""
+"You have successfully revoked access for %1$s and the access token starting "
+"with %2$s."
+msgstr ""
+"Vous avez avec succès révoqué l’accès par l’application %1$s, ainsi que le "
+"jeton personnel d’accès commençant par %2$s."
+
+#. TRANS: Empty list message when no applications have been authorised yet.
+#: actions/oauthconnectionssettings.php:213
 msgid "You have not authorized any applications to use your account."
 msgstr "Vous n’avez autorisé aucune application à utiliser votre compte."
 
-#: actions/oauthconnectionssettings.php:211
-msgid "Developers can edit the registration settings for their applications "
+#. TRANS: Note for developers in the OAuth connection settings form.
+#. TRANS: This message contains a Markdown link. Do not separate "](".
+#. TRANS: %s is the URL to the OAuth settings.
+#: actions/oauthconnectionssettings.php:233
+#, php-format
+msgid ""
+"Are you a developer? [Register an OAuth client application](%s) to use with "
+"this instance of StatusNet."
 msgstr ""
-"Les programmeurs peuvent modifier les paramètres d’enregistrement pour leurs "
-"applications "
+"Êtes-vous un développeur ? [Inscrivez une application cliente OAuth](%s) à "
+"utiliser avec cette instance de StatusNet."
 
 #: actions/oembed.php:80 actions/shownotice.php:100
 msgid "Notice has no profile."
 msgstr "L’avis n’a pas de profil."
 
-#: actions/oembed.php:87 actions/shownotice.php:176
+#: actions/oembed.php:83 actions/shownotice.php:172
 #, php-format
 msgid "%1$s's status on %2$s"
 msgstr "Statut de %1$s sur %2$s"
 
 #. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
-#: actions/oembed.php:159
+#: actions/oembed.php:168
 #, php-format
 msgid "Content type %s not supported."
 msgstr "Type de contenu %s non supporté."
 
 #. TRANS: Error message displaying attachments. %s is the site's base URL.
-#: actions/oembed.php:163
+#: actions/oembed.php:172
 #, php-format
 msgid "Only %s URLs over plain HTTP please."
 msgstr "Veuillez n'utiliser que des URL HTTP complètes en %s."
 
 #. TRANS: Client error on an API request with an unsupported data format.
-#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1206
-#: lib/apiaction.php:1233 lib/apiaction.php:1356
+#: actions/oembed.php:193 actions/oembed.php:212 lib/apiaction.php:1206
+#: lib/apiaction.php:1233 lib/apiaction.php:1362
 msgid "Not a supported data format."
 msgstr "Format de données non supporté."
 
@@ -2784,36 +3623,45 @@ msgstr "Recherche de personnes"
 msgid "Notice Search"
 msgstr "Recherche d’avis"
 
-#: actions/othersettings.php:60
+#: actions/othersettings.php:59
 msgid "Other settings"
 msgstr "Autres paramètres"
 
+#. TRANS: Instructions for tab "Other" in user profile settings.
 #: actions/othersettings.php:71
 msgid "Manage various other options."
 msgstr "Autres options à configurer"
 
-#: actions/othersettings.php:108
+#. TRANS: Used as a suffix for free URL shorteners in a dropdown list in the tab "Other" of a
+#. TRANS: user's profile settings. This message has one space at the beginning. Use your
+#. TRANS: language's word separator here if it has one (most likely a single space).
+#: actions/othersettings.php:111
 msgid " (free service)"
 msgstr " (service gratuit)"
 
-#: actions/othersettings.php:116
+#. TRANS: Label for dropdown with URL shortener services.
+#: actions/othersettings.php:120
 msgid "Shorten URLs with"
 msgstr "Raccourcir les URL avec"
 
-#: actions/othersettings.php:117
+#. TRANS: Tooltip for for dropdown with URL shortener services.
+#: actions/othersettings.php:122
 msgid "Automatic shortening service to use."
 msgstr "Sélectionnez un service de réduction d’URL."
 
-#: actions/othersettings.php:122
+#. TRANS: Label for checkbox.
+#: actions/othersettings.php:128
 msgid "View profile designs"
 msgstr "Afficher les conceptions de profils"
 
-#: actions/othersettings.php:123
+#. TRANS: Tooltip for checkbox.
+#: actions/othersettings.php:130
 msgid "Show or hide profile designs."
 msgstr "Afficher ou masquer les paramètres de conception."
 
-#: actions/othersettings.php:153
-msgid "URL shortening service is too long (max 50 chars)."
+#. TRANS: Form validation error for form "Other settings" in user profile.
+#: actions/othersettings.php:162
+msgid "URL shortening service is too long (maximum 50 characters)."
 msgstr "Le service de réduction d’URL est trop long (50 caractères maximum)."
 
 #: actions/otp.php:69
@@ -2853,7 +3701,7 @@ msgstr ""
 
 #: actions/passwordsettings.php:58
 msgid "Change password"
-msgstr "Modifier le mot de passe"
+msgstr "Changer de mot de passe"
 
 #: actions/passwordsettings.php:69
 msgid "Change your password."
@@ -2876,7 +3724,7 @@ msgid "6 or more characters"
 msgstr "6 caractères ou plus"
 
 #: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:440
+#: actions/register.php:441
 msgid "Confirm"
 msgstr "Confirmer"
 
@@ -2888,11 +3736,11 @@ msgstr "Identique au mot de passe ci-dessus"
 msgid "Change"
 msgstr "Modifier"
 
-#: actions/passwordsettings.php:154 actions/register.php:237
+#: actions/passwordsettings.php:154 actions/register.php:238
 msgid "Password must be 6 or more characters."
 msgstr "Votre mot de passe doit contenir au moins 6 caractères."
 
-#: actions/passwordsettings.php:157 actions/register.php:240
+#: actions/passwordsettings.php:157 actions/register.php:241
 msgid "Passwords don't match."
 msgstr "Les mots de passe ne correspondent pas."
 
@@ -2912,156 +3760,273 @@ msgstr "Impossible de sauvegarder le nouveau mot de passe."
 msgid "Password saved."
 msgstr "Mot de passe enregistré."
 
+#. TRANS: Title for Paths admin panel.
 #. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:371
+#: actions/pathsadminpanel.php:58 lib/adminpanelaction.php:371
 msgid "Paths"
 msgstr "Chemins"
 
-#: actions/pathsadminpanel.php:70
+#. TRANS: Form instructions for Path admin panel.
+#: actions/pathsadminpanel.php:69
 msgid "Path and server settings for this StatusNet site"
-msgstr ""
+msgstr "Paramètres de chemin et serveur pour ce site StatusNet"
 
-#: actions/pathsadminpanel.php:157
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the directory that could not be read from.
+#: actions/pathsadminpanel.php:155
 #, php-format
 msgid "Theme directory not readable: %s."
 msgstr "Dossier des thème non lisible : %s."
 
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the avatar directory that could not be written to.
 #: actions/pathsadminpanel.php:163
 #, php-format
 msgid "Avatar directory not writable: %s."
 msgstr "Dossier des avatars non inscriptible : %s."
 
-#: actions/pathsadminpanel.php:169
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the background directory that could not be written to.
+#: actions/pathsadminpanel.php:171
 #, php-format
 msgid "Background directory not writable: %s."
 msgstr "Dossier des arrière plans non inscriptible : %s."
 
-#: actions/pathsadminpanel.php:177
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the locales directory that could not be read from.
+#: actions/pathsadminpanel.php:181
 #, php-format
 msgid "Locales directory not readable: %s."
 msgstr "Dossier des paramètres régionaux non lisible : %s."
 
-#: actions/pathsadminpanel.php:183
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the SSL server URL that is too long.
+#: actions/pathsadminpanel.php:189
 msgid "Invalid SSL server. The maximum length is 255 characters."
 msgstr "Serveur SSL invalide. La longueur maximale est de 255 caractères."
 
-#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:235 actions/siteadminpanel.php:58
 msgid "Site"
 msgstr "Site"
 
-#: actions/pathsadminpanel.php:238
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:241 actions/pathsadminpanel.php:279
+#: actions/pathsadminpanel.php:370 actions/pathsadminpanel.php:425
 msgid "Server"
 msgstr "Serveur"
 
-#: actions/pathsadminpanel.php:238
+#: actions/pathsadminpanel.php:242
 msgid "Site's server hostname."
 msgstr "Nom d’hôte du serveur du site."
 
-#: actions/pathsadminpanel.php:242
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:248 actions/pathsadminpanel.php:288
+#: actions/pathsadminpanel.php:379 actions/pathsadminpanel.php:434
 msgid "Path"
 msgstr "Chemin"
 
-#: actions/pathsadminpanel.php:242
-msgid "Site path"
-msgstr "Chemin du site"
+#: actions/pathsadminpanel.php:249
+msgid "Site path."
+msgstr "Chemin du site."
 
-#: actions/pathsadminpanel.php:246
-msgid "Path to locales"
-msgstr "Chemin vers les paramètres régionaux"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:255
+msgid "Locale directory"
+msgstr "Dossier des données de localisation"
 
-#: actions/pathsadminpanel.php:246
-msgid "Directory path to locales"
-msgstr "Chemin de dossier vers les paramètres régionaux"
+#: actions/pathsadminpanel.php:256
+msgid "Directory path to locales."
+msgstr "Chemin du dossier vers les paramètres régionaux."
 
-#: actions/pathsadminpanel.php:250
+#. TRANS: Checkbox label in Paths admin panel.
+#: actions/pathsadminpanel.php:263
 msgid "Fancy URLs"
 msgstr "Jolies URL"
 
-#: actions/pathsadminpanel.php:252
+#: actions/pathsadminpanel.php:265
 msgid "Use fancy (more readable and memorable) URLs?"
 msgstr "Utiliser des jolies URL (plus lisibles et faciles à mémoriser) ?"
 
-#: actions/pathsadminpanel.php:259
+#: actions/pathsadminpanel.php:272
 msgid "Theme"
 msgstr "Thème"
 
-#: actions/pathsadminpanel.php:264
-msgid "Theme server"
-msgstr "Serveur de thèmes"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:281
+msgid "Server for themes."
+msgstr "Serveur pour les thèmes."
 
-#: actions/pathsadminpanel.php:268
-msgid "Theme path"
-msgstr "Chemin des thèmes"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:290
+msgid "Web path to themes."
+msgstr "Chemin d'accès Internet aux thèmes."
 
-#: actions/pathsadminpanel.php:272
-msgid "Theme directory"
-msgstr "Dossier des thèmes"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:297 actions/pathsadminpanel.php:388
+#: actions/pathsadminpanel.php:443 actions/pathsadminpanel.php:495
+msgid "SSL server"
+msgstr "Serveur SSL"
 
-#: actions/pathsadminpanel.php:279
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:299
+msgid "SSL server for themes (default: SSL server)."
+msgstr "Serveur SSL pour les thèmes (par défaut : serveur SSL)."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:306 actions/pathsadminpanel.php:397
+#: actions/pathsadminpanel.php:452
+msgid "SSL path"
+msgstr "Chemin d’accès SSL"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:308
+msgid "SSL path to themes (default: /theme/)."
+msgstr "Chemin d’accès SSL aux thèmes (par défaut : /theme/)."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:315 actions/pathsadminpanel.php:406
+#: actions/pathsadminpanel.php:461
+msgid "Directory"
+msgstr "Répertoire"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:317
+msgid "Directory where themes are located."
+msgstr "Chemin du répertoire où les thèmes sont stockés."
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:326
 msgid "Avatars"
 msgstr "Avatars"
 
-#: actions/pathsadminpanel.php:284
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:333
 msgid "Avatar server"
 msgstr "Serveur d’avatar"
 
-#: actions/pathsadminpanel.php:288
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:335
+msgid "Server for avatars."
+msgstr "Serveur pour les avatars."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:342
 msgid "Avatar path"
 msgstr "Chemin des avatars"
 
-#: actions/pathsadminpanel.php:292
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:344
+msgid "Web path to avatars."
+msgstr "Chemin d’accès Internet vers les avatars."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:351
 msgid "Avatar directory"
 msgstr "Dossier des avatars"
 
-#: actions/pathsadminpanel.php:301
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:353
+msgid "Directory where avatars are located."
+msgstr "Le répertoire où les avatars sont stockés."
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:364
 msgid "Backgrounds"
 msgstr "Arrière plans"
 
-#: actions/pathsadminpanel.php:305
-msgid "Background server"
-msgstr "Serveur des arrière plans"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:372
+msgid "Server for backgrounds."
+msgstr "Serveur pour les fonds d’écran."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:381
+msgid "Web path to backgrounds."
+msgstr "Chemin d’accès Internet vers les fonds d’écran."
 
-#: actions/pathsadminpanel.php:309
-msgid "Background path"
-msgstr "Chemin des arrière plans"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:390
+msgid "Server for backgrounds on SSL pages."
+msgstr "Serveur pour les fonds d’écran sur les pages SSL."
 
-#: actions/pathsadminpanel.php:313
-msgid "Background directory"
-msgstr "Dossier des arrière plans"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:399
+msgid "Web path to backgrounds on SSL pages."
+msgstr "Chemin d’accès Internet vers les fonds d’écran sur les pages SSL."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:408
+msgid "Directory where backgrounds are located."
+msgstr "Le répertoire où les fonds d’écran sont stockés."
+
+#. TRANS: Fieldset legens in Paths admin panel.
+#. TRANS: DT element label in attachment list.
+#: actions/pathsadminpanel.php:419 lib/attachmentlist.php:99
+msgid "Attachments"
+msgstr "Pièces jointes"
 
-#: actions/pathsadminpanel.php:320
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:427
+msgid "Server for attachments."
+msgstr "Serveur pour les pièces jointes."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:436
+msgid "Web path to attachments."
+msgstr "Chemin d’accès Internet vers les pièces jointes."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:445
+msgid "Server for attachments on SSL pages."
+msgstr "Serveur pour les pièces jointes sur les pages SSL."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:454
+msgid "Web path to attachments on SSL pages."
+msgstr "Chemin d’accès Internet vers les pièces jointes sur les pages SSL."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:463
+msgid "Directory where attachments are located."
+msgstr "Le répertoire où les pièces jointes sont stockées."
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:472
 msgid "SSL"
 msgstr "SSL"
 
-#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:477 actions/snapshotadminpanel.php:202
 msgid "Never"
 msgstr "Jamais"
 
-#: actions/pathsadminpanel.php:324
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:479
 msgid "Sometimes"
 msgstr "Quelquefois"
 
-#: actions/pathsadminpanel.php:325
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:481
 msgid "Always"
 msgstr "Toujours"
 
-#: actions/pathsadminpanel.php:329
+#: actions/pathsadminpanel.php:485
 msgid "Use SSL"
 msgstr "Utiliser SSL"
 
-#: actions/pathsadminpanel.php:330
-msgid "When to use SSL"
-msgstr "Quand utiliser SSL"
-
-#: actions/pathsadminpanel.php:335
-msgid "SSL server"
-msgstr "Serveur SSL"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:487
+msgid "When to use SSL."
+msgstr "Quand utiliser SSL."
 
-#: actions/pathsadminpanel.php:336
-msgid "Server to direct SSL requests to"
-msgstr "Serveur vers lequel rediriger les requêtes SSL"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:497
+msgid "Server to direct SSL requests to."
+msgstr "Serveur vers lequel diriger les requêtes SSL."
 
-#: actions/pathsadminpanel.php:352
+#. TRANS: Button title text to store form data in the Paths admin panel.
+#: actions/pathsadminpanel.php:514
 msgid "Save paths"
 msgstr "Enregistrer les chemins."
 
@@ -3100,141 +4065,184 @@ msgstr ""
 "La licence des avis « %1$s » n’est pas compatible avec la licence du site « %2"
 "$s »."
 
-#: actions/profilesettings.php:60
+#. TRANS: Page title for profile settings.
+#: actions/profilesettings.php:61
 msgid "Profile settings"
 msgstr "Paramètres du profil"
 
-#: actions/profilesettings.php:71
+#. TRANS: Usage instructions for profile settings.
+#: actions/profilesettings.php:73
 msgid ""
 "You can update your personal profile info here so people know more about you."
 msgstr ""
 "Vous pouvez mettre à jour les informations de votre profil pour qu’on en "
 "sache plus à votre sujet."
 
-#: actions/profilesettings.php:99
+#. TRANS: Profile settings form legend.
+#: actions/profilesettings.php:102
 msgid "Profile information"
 msgstr "Information de profil"
 
-#: actions/profilesettings.php:108 lib/groupeditform.php:154
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
-msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces"
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:113
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces."
+msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces."
 
-#: actions/profilesettings.php:111 actions/register.php:455
-#: actions/showgroup.php:256 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:150
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for full group name (dt). Text hidden by default.
+#: actions/profilesettings.php:117 actions/register.php:456
+#: actions/showgroup.php:252 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:152
 msgid "Full name"
 msgstr "Nom complet"
 
+#. TRANS: Field label in form for profile settings.
 #. TRANS: Form input field label.
-#: actions/profilesettings.php:115 actions/register.php:460
-#: lib/applicationeditform.php:235 lib/groupeditform.php:161
+#: actions/profilesettings.php:122 actions/register.php:461
+#: lib/applicationeditform.php:236 lib/groupeditform.php:161
 msgid "Homepage"
 msgstr "Site personnel"
 
-#: actions/profilesettings.php:117 actions/register.php:462
-msgid "URL of your homepage, blog, or profile on another site"
-msgstr "Adresse de votre site Web, blogue, ou profil dans un autre site"
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:125
+msgid "URL of your homepage, blog, or profile on another site."
+msgstr ""
+"Adresse URL de votre page personnelle, blogue ou profil sur un autre site."
 
-#: actions/profilesettings.php:122 actions/register.php:468
+#. TRANS: Tooltip for field label in form for profile settings. Plural
+#. TRANS: is decided by the number of characters available for the
+#. TRANS: biography (%d).
+#: actions/profilesettings.php:133 actions/register.php:472
 #, php-format
-msgid "Describe yourself and your interests in %d chars"
-msgstr "Décrivez vous et vos intérêts en %d caractères"
+msgid "Describe yourself and your interests in %d character"
+msgid_plural "Describe yourself and your interests in %d characters"
+msgstr[0] "Décrivez-vous avec vos intérêts en %d caractère"
+msgstr[1] "Décrivez-vous avec vos intérêts en %d caractères"
 
-#: actions/profilesettings.php:125 actions/register.php:471
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:139 actions/register.php:477
 msgid "Describe yourself and your interests"
 msgstr "Décrivez vous et vos interêts"
 
-#: actions/profilesettings.php:127 actions/register.php:473
+#. TRANS: Text area label in form for profile settings where users can provide.
+#. TRANS: their biography.
+#: actions/profilesettings.php:143 actions/register.php:479
 msgid "Bio"
 msgstr "Bio"
 
-#: actions/profilesettings.php:132 actions/register.php:478
-#: actions/showgroup.php:265 actions/tagother.php:112
-#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:165
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for group location (dt). Text hidden by default.
+#: actions/profilesettings.php:149 actions/register.php:484
+#: actions/showgroup.php:262 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:180
+#: lib/userprofile.php:167
 msgid "Location"
 msgstr "Emplacement"
 
-#: actions/profilesettings.php:134 actions/register.php:480
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:152 actions/register.php:486
 msgid "Where you are, like \"City, State (or Region), Country\""
 msgstr "Indiquez votre emplacement, ex.: « Ville, État (ou région), Pays »"
 
-#: actions/profilesettings.php:138
+#. TRANS: Checkbox label in form for profile settings.
+#: actions/profilesettings.php:157
 msgid "Share my current location when posting notices"
 msgstr "Partager ma localisation lorsque je poste des avis"
 
-#: actions/profilesettings.php:145 actions/tagother.php:149
+#. TRANS: Field label in form for profile settings.
+#: actions/profilesettings.php:165 actions/tagother.php:149
 #: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+#: lib/subscriptionlist.php:108 lib/userprofile.php:212
 msgid "Tags"
-msgstr "Marques"
+msgstr "Balises"
 
-#: actions/profilesettings.php:147
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:168
 msgid ""
 "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
 msgstr ""
 "Marques pour vous-même (lettres, chiffres, -, ., et _), séparées par des "
 "virgules ou des espaces"
 
-#: actions/profilesettings.php:151
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:173
 msgid "Language"
 msgstr "Langue"
 
-#: actions/profilesettings.php:152
+#. TRANS: Tooltip for dropdown list label in form for profile settings.
+#: actions/profilesettings.php:175
 msgid "Preferred language"
 msgstr "Langue préférée"
 
-#: actions/profilesettings.php:161
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:185
 msgid "Timezone"
 msgstr "Fuseau horaire"
 
-#: actions/profilesettings.php:162
+#. TRANS: Tooltip for dropdown list label in form for profile settings.
+#: actions/profilesettings.php:187
 msgid "What timezone are you normally in?"
 msgstr "Quel est votre fuseau horaire habituel ?"
 
-#: actions/profilesettings.php:167
+#. TRANS: Checkbox label in form for profile settings.
+#: actions/profilesettings.php:193
 msgid ""
 "Automatically subscribe to whoever subscribes to me (best for non-humans)"
 msgstr ""
 "M’abonner automatiquement à tous ceux qui s’abonnent à moi (recommandé pour "
 "les utilisateurs non-humains)"
 
-#: actions/profilesettings.php:228 actions/register.php:230
+#. TRANS: Validation error in form for profile settings.
+#. TRANS: Plural form is used based on the maximum number of allowed
+#. TRANS: characters for the biography (%d).
+#: actions/profilesettings.php:262 actions/register.php:229
 #, php-format
-msgid "Bio is too long (max %d chars)."
-msgstr "La bio est trop longue (%d caractères maximum)."
+msgid "Bio is too long (maximum %d character)."
+msgid_plural "Bio is too long (maximum %d characters)."
+msgstr[0] "La biographie est trop longue (limitée à %d caractère maximum)."
+msgstr[1] "La biographie est trop longue (limitée à %d caractères maximum)."
 
-#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+#. TRANS: Validation error in form for profile settings.
+#: actions/profilesettings.php:273 actions/siteadminpanel.php:151
 msgid "Timezone not selected."
 msgstr "Aucun fuseau horaire n’a été choisi."
 
-#: actions/profilesettings.php:241
-msgid "Language is too long (max 50 chars)."
-msgstr "La langue est trop longue (50 caractères maximum)."
+#. TRANS: Validation error in form for profile settings.
+#: actions/profilesettings.php:281
+msgid "Language is too long (maximum 50 characters)."
+msgstr "La langue est trop longue (limitée à 50 caractères maximum)."
 
-#: actions/profilesettings.php:253 actions/tagother.php:178
+#. TRANS: Validation error in form for profile settings.
+#. TRANS: %s is an invalid tag.
+#: actions/profilesettings.php:295 actions/tagother.php:178
 #, php-format
 msgid "Invalid tag: \"%s\""
 msgstr "Marque invalide : « %s »"
 
-#: actions/profilesettings.php:306
+#. TRANS: Server error thrown when user profile settings could not be updated to
+#. TRANS: automatically subscribe to any subscriber.
+#: actions/profilesettings.php:351
 msgid "Couldn't update user for autosubscribe."
 msgstr "Impossible de mettre à jour l’auto-abonnement."
 
-#: actions/profilesettings.php:363
+#. TRANS: Server error thrown when user profile location preference settings could not be updated.
+#: actions/profilesettings.php:409
 msgid "Couldn't save location prefs."
 msgstr "Impossible d’enregistrer les préférences de localisation."
 
-#: actions/profilesettings.php:375
+#. TRANS: Server error thrown when user profile settings could not be saved.
+#: actions/profilesettings.php:422
 msgid "Couldn't save profile."
 msgstr "Impossible d’enregistrer le profil."
 
-#: actions/profilesettings.php:383
+#. TRANS: Server error thrown when user profile settings tags could not be saved.
+#: actions/profilesettings.php:431
 msgid "Couldn't save tags."
 msgstr "Impossible d’enregistrer les marques."
 
+#. TRANS: Confirmation shown when user profile settings are saved.
 #. TRANS: Message after successful saving of administrative settings.
-#: actions/profilesettings.php:391 lib/adminpanelaction.php:138
+#: actions/profilesettings.php:440 lib/adminpanelaction.php:138
 msgid "Settings saved."
 msgstr "Préférences enregistrées."
 
@@ -3313,26 +4321,39 @@ msgstr ""
 "%%site.name%% est un service de [micro-blogging](http://fr.wikipedia.org/"
 "wiki/Microblog) basé sur le logiciel libre [StatusNet](http://status.net/)."
 
+#. TRANS: Title for public tag cloud.
 #: actions/publictagcloud.php:57
 msgid "Public tag cloud"
 msgstr "Nuage de marques public"
 
-#: actions/publictagcloud.php:63
+#. TRANS: Instructions (more used like an explanation/header).
+#. TRANS: %s is the StatusNet sitename.
+#: actions/publictagcloud.php:65
 #, php-format
-msgid "These are most popular recent tags on %s "
-msgstr "Dernières marques les plus populaires sur %s "
+msgid "These are most popular recent tags on %s"
+msgstr "Ces étiquettes récentes sont les plus populaires sur %s"
 
-#: actions/publictagcloud.php:69
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/publictagcloud.php:74
 #, php-format
 msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
 msgstr ""
 "Personne n’a encore posté d’avis avec une [marque (hashtag)](%%doc.tags%%)."
 
-#: actions/publictagcloud.php:72
+#. TRANS: Message shown to a logged in user for the public tag cloud
+#. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag.
+#: actions/publictagcloud.php:79
 msgid "Be the first to post one!"
 msgstr "Soyez le premier à en poster une !"
 
-#: actions/publictagcloud.php:75
+#. TRANS: Message shown to a anonymous user for the public tag cloud
+#. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag.
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/publictagcloud.php:87
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to post "
@@ -3341,7 +4362,7 @@ msgstr ""
 "Pourquoi ne pas [créer un compte](%%action.register%%) et être le premier à "
 "en poster un !"
 
-#: actions/publictagcloud.php:134
+#: actions/publictagcloud.php:146
 msgid "Tag cloud"
 msgstr "Nuage de marques"
 
@@ -3457,14 +4478,14 @@ msgid "Unexpected password reset."
 msgstr "Réinitialisation inattendue du mot de passe."
 
 #: actions/recoverpassword.php:365
-msgid "Password must be 6 chars or more."
+msgid "Password must be 6 characters or more."
 msgstr "Le mot de passe doit contenir au moins 6 caractères."
 
 #: actions/recoverpassword.php:369
 msgid "Password and confirmation do not match."
 msgstr "Le mot de passe et sa confirmation ne correspondent pas."
 
-#: actions/recoverpassword.php:388 actions/register.php:255
+#: actions/recoverpassword.php:388 actions/register.php:256
 msgid "Error setting user."
 msgstr "Erreur lors de la configuration de l’utilisateur."
 
@@ -3473,7 +4494,7 @@ msgid "New password successfully saved. You are now logged in."
 msgstr ""
 "Nouveau mot de passe créé avec succès. Votre session est maintenant ouverte."
 
-#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+#: actions/register.php:92 actions/register.php:196 actions/register.php:413
 msgid "Sorry, only invited people can register."
 msgstr "Désolé ! Seules les personnes invitées peuvent s’inscrire."
 
@@ -3485,7 +4506,7 @@ msgstr "Désolé, code d’invitation invalide."
 msgid "Registration successful"
 msgstr "Compte créé avec succès"
 
-#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:512 lib/logingroupnav.php:85
 msgid "Register"
 msgstr "Créer un compte"
 
@@ -3493,19 +4514,19 @@ msgstr "Créer un compte"
 msgid "Registration not allowed."
 msgstr "Inscription non autorisée."
 
-#: actions/register.php:205
+#: actions/register.php:209
 msgid "You can't register if you don't agree to the license."
 msgstr "Vous ne pouvez pas vous inscrire si vous n’acceptez pas la licence."
 
-#: actions/register.php:219
+#: actions/register.php:218
 msgid "Email address already exists."
 msgstr "Cette adresse courriel est déjà utilisée."
 
-#: actions/register.php:250 actions/register.php:272
+#: actions/register.php:251 actions/register.php:273
 msgid "Invalid username or password."
 msgstr "Identifiant ou mot de passe incorrect."
 
-#: actions/register.php:350
+#: actions/register.php:351
 msgid ""
 "With this form you can create a new account. You can then post notices and "
 "link up to friends and colleagues. "
@@ -3513,36 +4534,41 @@ msgstr ""
 "Avec ce formulaire vous pouvez créer un nouveau compte. Vous pourrez ensuite "
 "poster des avis and et vous relier à des amis et collègues. "
 
-#: actions/register.php:432
+#: actions/register.php:433
 msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
 msgstr ""
 "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces. Requis."
 
-#: actions/register.php:437
+#: actions/register.php:438
 msgid "6 or more characters. Required."
 msgstr "6 caractères ou plus. Requis."
 
-#: actions/register.php:441
+#: actions/register.php:442
 msgid "Same as password above. Required."
 msgstr "Identique au mot de passe ci-dessus. Requis."
 
 #. TRANS: Link description in user account settings menu.
-#: actions/register.php:445 actions/register.php:449
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
+#: actions/register.php:446 actions/register.php:450
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:127
 msgid "Email"
 msgstr "Courriel"
 
-#: actions/register.php:446 actions/register.php:450
+#: actions/register.php:447 actions/register.php:451
 msgid "Used only for updates, announcements, and password recovery"
 msgstr ""
 "Utilisé uniquement pour les mises à jour, les notifications, et la "
 "récupération de mot de passe"
 
-#: actions/register.php:457
+#: actions/register.php:458
 msgid "Longer name, preferably your \"real\" name"
 msgstr "Nom plus long, votre \"vrai\" nom de préférence"
 
-#: actions/register.php:518
+#: actions/register.php:463
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr ""
+"Adresse URL de votre page personnelle, blogue ou profil sur un autre site"
+
+#: actions/register.php:524
 #, php-format
 msgid ""
 "I understand that content and data of %1$s are private and confidential."
@@ -3550,23 +4576,23 @@ msgstr ""
 "Je comprends que le contenu et les données de %1$s sont privés et "
 "confidentiels."
 
-#: actions/register.php:528
+#: actions/register.php:534
 #, php-format
 msgid "My text and files are copyright by %1$s."
 msgstr "Mon texte et les fichiers sont protégés par copyright par %1$s."
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
-#: actions/register.php:532
+#: actions/register.php:538
 msgid "My text and files remain under my own copyright."
 msgstr "Mon texte et les fichiers restent sous mon propre droit d'auteur."
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
-#: actions/register.php:535
+#: actions/register.php:541
 msgid "All rights reserved."
 msgstr "Tous droits réservés."
 
 #. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
-#: actions/register.php:540
+#: actions/register.php:546
 #, php-format
 msgid ""
 "My text and files are available under %s except this private data: password, "
@@ -3576,7 +4602,7 @@ msgstr ""
 "données personnelles : mot de passe, adresse électronique, adresse de "
 "messagerie instantanée, numéro de téléphone."
 
-#: actions/register.php:583
+#: actions/register.php:589
 #, php-format
 msgid ""
 "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3610,7 +4636,7 @@ msgstr ""
 "Merci pour votre inscription ! Nous vous souhaitons d’apprécier notre "
 "service."
 
-#: actions/register.php:607
+#: actions/register.php:613
 msgid ""
 "(You should receive a message by email momentarily, with instructions on how "
 "to confirm your email address.)"
@@ -3655,7 +4681,7 @@ msgid "URL of your profile on another compatible microblogging service"
 msgstr "URL de votre profil sur un autre service de micro-blogging compatible"
 
 #: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:406
+#: lib/userprofile.php:411
 msgid "Subscribe"
 msgstr "S’abonner"
 
@@ -3692,7 +4718,7 @@ msgstr "Vous ne pouvez pas reprendre votre propre avis."
 msgid "You already repeated that notice."
 msgstr "Vous avez déjà repris cet avis."
 
-#: actions/repeat.php:114 lib/noticelist.php:676
+#: actions/repeat.php:114 lib/noticelist.php:691
 msgid "Repeated"
 msgstr "Repris"
 
@@ -3701,7 +4727,7 @@ msgid "Repeated!"
 msgstr "Repris !"
 
 #: actions/replies.php:126 actions/repliesrss.php:68
-#: lib/personalgroupnav.php:105
+#: lib/personalgroupnav.php:108
 #, php-format
 msgid "Replies to %s"
 msgstr "Réponses à %s"
@@ -3789,7 +4815,7 @@ msgstr "Sessions"
 
 #: actions/sessionsadminpanel.php:65
 msgid "Session settings for this StatusNet site"
-msgstr ""
+msgstr "Paramètres de session pour ce site StatusNet"
 
 #: actions/sessionsadminpanel.php:175
 msgid "Handle sessions"
@@ -3831,17 +4857,18 @@ msgid "Name"
 msgstr "Nom"
 
 #. TRANS: Form input field label.
-#: actions/showapplication.php:178 lib/applicationeditform.php:226
+#: actions/showapplication.php:178 lib/applicationeditform.php:227
 msgid "Organization"
 msgstr "Organisation"
 
 #. TRANS: Form input field label.
 #: actions/showapplication.php:187 actions/version.php:200
-#: lib/applicationeditform.php:207 lib/groupeditform.php:172
+#: lib/applicationeditform.php:208 lib/groupeditform.php:175
 msgid "Description"
 msgstr "Description"
 
-#: actions/showapplication.php:192 actions/showgroup.php:436
+#. TRANS: Header for group statistics on a group page (h2).
+#: actions/showapplication.php:192 actions/showgroup.php:448
 #: lib/profileaction.php:187
 msgid "Statistics"
 msgstr "Statistiques"
@@ -3859,6 +4886,11 @@ msgstr "Actions de l’application"
 msgid "Reset key & secret"
 msgstr "Réinitialiser la clé et le secret"
 
+#: actions/showapplication.php:252 lib/deletegroupform.php:121
+#: lib/deleteuserform.php:66 lib/noticelist.php:672
+msgid "Delete"
+msgstr "Supprimer"
+
 #: actions/showapplication.php:261
 msgid "Application info"
 msgstr "Informations sur l’application"
@@ -3952,77 +4984,104 @@ msgstr ""
 msgid "This is a way to share what you like."
 msgstr "C’est un moyen de partager ce que vous aimez."
 
-#: actions/showgroup.php:82
+#. TRANS: Page title for first group page. %s is a group name.
+#: actions/showgroup.php:75
 #, php-format
 msgid "%s group"
 msgstr "Groupe %s"
 
-#: actions/showgroup.php:84
+#. TRANS: Page title for any but first group page.
+#. TRANS: %1$s is a group name, $2$s is a page number.
+#: actions/showgroup.php:79
 #, php-format
 msgid "%1$s group, page %2$d"
 msgstr "Groupe %1$s, page %2$d"
 
-#: actions/showgroup.php:227
+#. TRANS: Group profile header (h2). Text hidden by default.
+#: actions/showgroup.php:220
 msgid "Group profile"
 msgstr "Profil du groupe"
 
-#: actions/showgroup.php:272 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:178
+#. TRANS: Label for group URL (dt). Text hidden by default.
+#: actions/showgroup.php:270 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:180
 msgid "URL"
 msgstr "URL"
 
-#: actions/showgroup.php:283 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:195
+#. TRANS: Label for group description or group note (dt). Text hidden by default.
+#: actions/showgroup.php:282 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:197
 msgid "Note"
 msgstr "Note"
 
-#: actions/showgroup.php:293 lib/groupeditform.php:184
+#. TRANS: Label for group aliases (dt). Text hidden by default.
+#: actions/showgroup.php:293 lib/groupeditform.php:187
 msgid "Aliases"
 msgstr "Alias"
 
-#: actions/showgroup.php:302
+#. TRANS: Group actions header (h2). Text hidden by default.
+#: actions/showgroup.php:304
 msgid "Group actions"
 msgstr "Actions du groupe"
 
-#: actions/showgroup.php:338
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:345
 #, php-format
 msgid "Notice feed for %s group (RSS 1.0)"
 msgstr "Fil des avis du groupe %s (RSS 1.0)"
 
-#: actions/showgroup.php:344
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:352
 #, php-format
 msgid "Notice feed for %s group (RSS 2.0)"
 msgstr "Fil des avis du groupe %s (RSS 2.0)"
 
-#: actions/showgroup.php:350
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:359
 #, php-format
 msgid "Notice feed for %s group (Atom)"
 msgstr "Fil des avis du groupe %s (Atom)"
 
-#: actions/showgroup.php:355
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:365
 #, php-format
 msgid "FOAF for %s group"
 msgstr "ami d’un ami pour le groupe %s"
 
-#: actions/showgroup.php:393 actions/showgroup.php:445
+#. TRANS: Header for mini list of group members on a group page (h2).
+#: actions/showgroup.php:402
 msgid "Members"
 msgstr "Membres"
 
-#: actions/showgroup.php:398 lib/profileaction.php:117
+#. TRANS: Description for mini list of group members on a group page when the group has no members.
+#: actions/showgroup.php:408 lib/profileaction.php:117
 #: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
 #: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
 msgid "(None)"
 msgstr "(aucun)"
 
-#: actions/showgroup.php:404
+#. TRANS: Link to all group members from mini list of group members if group has more than n members.
+#: actions/showgroup.php:417
 msgid "All members"
 msgstr "Tous les membres"
 
-#: actions/showgroup.php:439
+#. TRANS: Label for creation date in statistics on group page.
+#: actions/showgroup.php:453
+msgctxt "LABEL"
 msgid "Created"
 msgstr "Créé"
 
-#: actions/showgroup.php:455
+#. TRANS: Label for member count in statistics on group page.
+#: actions/showgroup.php:461
+msgctxt "LABEL"
+msgid "Members"
+msgstr "Membres"
+
+#. TRANS: Notice on group pages for anonymous users for StatusNet sites that accept new registrations.
+#. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name,
+#. TRANS: %%%%action.register%%%% is the URL for registration, %%%%doc.help%%%% is a URL to help.
+#. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link).
+#: actions/showgroup.php:476
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4038,7 +5097,10 @@ msgstr ""
 "action.register%%%%) pour devenir membre de ce groupe et bien plus ! ([En "
 "lire plus](%%%%doc.help%%%%))"
 
-#: actions/showgroup.php:461
+#. TRANS: Notice on group pages for anonymous users for StatusNet sites that accept no new registrations.
+#. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name,
+#. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link).
+#: actions/showgroup.php:486
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4051,26 +5113,33 @@ msgstr ""
 "logiciel libre [StatusNet](http://status.net/). Ses membres partagent des "
 "messages courts à propos de leur vie et leurs intérêts. "
 
-#: actions/showgroup.php:489
+#. TRANS: Header for list of group administrators on a group page (h2).
+#: actions/showgroup.php:515
 msgid "Admins"
 msgstr "Administrateurs"
 
-#: actions/showmessage.php:81
+#. TRANS: Client error displayed requesting a single message that does not exist.
+#: actions/showmessage.php:79
 msgid "No such message."
 msgstr "Message introuvable."
 
-#: actions/showmessage.php:98
+#. TRANS: Client error displayed requesting a single direct message the requesting user was not a party in.
+#: actions/showmessage.php:97
 msgid "Only the sender and recipient may read this message."
 msgstr ""
 "Ce message personnel ne peut être lu que par son expéditeur et son "
 "destinataire."
 
-#: actions/showmessage.php:108
+#. TRANS: Page title for single direct message display when viewing user is the sender.
+#. TRANS: %1$s is the addressed user's nickname, $2$s is a timestamp.
+#: actions/showmessage.php:110
 #, php-format
 msgid "Message to %1$s on %2$s"
 msgstr "Message adressé à %1$s le %2$s"
 
-#: actions/showmessage.php:113
+#. TRANS: Page title for single message display.
+#. TRANS: %1$s is the sending user's nickname, $2$s is a timestamp.
+#: actions/showmessage.php:118
 #, php-format
 msgid "Message from %1$s on %2$s"
 msgstr "Message reçu de %1$s le %2$s"
@@ -4079,48 +5148,68 @@ msgstr "Message reçu de %1$s le %2$s"
 msgid "Notice deleted."
 msgstr "Avis supprimé."
 
-#: actions/showstream.php:73
+#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag.
+#: actions/showstream.php:70
+#, php-format
+msgid "%1$s tagged %2$s"
+msgstr "%1$s a marqué « %2$s »"
+
+#. TRANS: Page title showing tagged notices in one user's stream.
+#. TRANS: %1$s is the username, %2$s is the hash tag, %1$d is the page number.
+#: actions/showstream.php:74
 #, php-format
-msgid " tagged %s"
-msgstr "   marqué %s"
+msgid "%1$s tagged %2$s, page %3$d"
+msgstr "%1$s a marqué « %2$s » la page %3$d"
 
-#: actions/showstream.php:79
+#. TRANS: Extended page title showing tagged notices in one user's stream.
+#. TRANS: %1$s is the username, %2$d is the page number.
+#: actions/showstream.php:82
 #, php-format
 msgid "%1$s, page %2$d"
 msgstr "%1$s, page %2$d"
 
-#: actions/showstream.php:122
+#. TRANS: Title for link to notice feed.
+#. TRANS: %1$s is a user nickname, %2$s is a hashtag.
+#: actions/showstream.php:127
 #, php-format
 msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
 msgstr "Fil des avis pour %1$s marqués %2$s (RSS 1.0)"
 
-#: actions/showstream.php:129
+#. TRANS: Title for link to notice feed.
+#. TRANS: %s is a user nickname.
+#: actions/showstream.php:136
 #, php-format
 msgid "Notice feed for %s (RSS 1.0)"
 msgstr "Flux des avis de %s (RSS 1.0)"
 
-#: actions/showstream.php:136
+#. TRANS: Title for link to notice feed.
+#. TRANS: %s is a user nickname.
+#: actions/showstream.php:145
 #, php-format
 msgid "Notice feed for %s (RSS 2.0)"
 msgstr "Flux des avis de %s (RSS 2.0)"
 
-#: actions/showstream.php:143
+#: actions/showstream.php:152
 #, php-format
 msgid "Notice feed for %s (Atom)"
 msgstr "Flux des avis de %s (Atom)"
 
-#: actions/showstream.php:148
+#. TRANS: Title for link to notice feed. FOAF stands for Friend of a Friend.
+#. TRANS: More information at http://www.foaf-project.org. %s is a user nickname.
+#: actions/showstream.php:159
 #, php-format
 msgid "FOAF for %s"
 msgstr "ami d’un ami pour %s"
 
-#: actions/showstream.php:200
+#. TRANS: First sentence of empty list message for a stream. $1%s is a user nickname.
+#: actions/showstream.php:211
 #, php-format
-msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+msgid "This is the timeline for %1$s, but %1$s hasn't posted anything yet."
 msgstr ""
-"Ceci est la chronologie de %1$s mais %2$s n’a rien publié pour le moment."
+"Ceci est la chronologie de %1$s mais %1$s n’a rien publié pour le moment."
 
-#: actions/showstream.php:205
+#. TRANS: Second sentence of empty list message for a stream for the user themselves.
+#: actions/showstream.php:217
 msgid ""
 "Seen anything interesting recently? You haven't posted any notices yet, now "
 "would be a good time to start :)"
@@ -4128,7 +5217,9 @@ msgstr ""
 "Avez-vous vu quelque chose d’intéressant récemment ? Vous n’avez pas publié "
 "d’avis pour le moment, vous pourriez commencer maintenant :)"
 
-#: actions/showstream.php:207
+#. TRANS: Second sentence of empty  list message for a non-self stream. %1$s is a user nickname, %2$s is a part of a URL.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:221
 #, php-format
 msgid ""
 "You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
@@ -4137,7 +5228,9 @@ msgstr ""
 "Vous pouvez essayer de faire un clin d’œil à %1$s ou de [poster quelque "
 "chose à son intention](%%%%action.newnotice%%%%?status_textarea=%2$s)."
 
-#: actions/showstream.php:243
+#. TRANS: Announcement for anonymous users showing a stream if site registrations are open.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:264
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4151,7 +5244,9 @@ msgstr ""
 "register%%%%) pour suivre les avis de **%s** et bien plus ! ([En lire plus](%"
 "%%%doc.help%%%%))"
 
-#: actions/showstream.php:248
+#. TRANS: Announcement for anonymous users showing a stream if site registrations are closed or invite only.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:271
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4162,7 +5257,8 @@ msgstr ""
 "wikipedia.org/wiki/Microblog)  basé sur le logiciel libre [StatusNet](http://"
 "status.net/). "
 
-#: actions/showstream.php:305
+#. TRANS: Link to the author of a repeated notice. %s is a linked nickname.
+#: actions/showstream.php:328
 #, php-format
 msgid "Repeat of %s"
 msgstr "Reprises de %s"
@@ -4276,32 +5372,42 @@ msgstr ""
 "Combien de temps (en secondes) les utilisateurs doivent attendre pour poster "
 "la même chose de nouveau."
 
-#: actions/sitenoticeadminpanel.php:56
+#. TRANS: Page title for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:55
 msgid "Site Notice"
 msgstr "Avis du site"
 
-#: actions/sitenoticeadminpanel.php:67
+#. TRANS: Instructions for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:66
 msgid "Edit site-wide message"
 msgstr "Modifier un message portant sur tout le site"
 
-#: actions/sitenoticeadminpanel.php:103
+#. TRANS: Server error displayed when saving a site-wide notice was impossible.
+#: actions/sitenoticeadminpanel.php:101
 msgid "Unable to save site notice."
 msgstr "Impossible d'enregistrer l'avis du site."
 
-#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars."
-msgstr "La longueur maximale pour l'avis du site est de 255 caractères."
+#. TRANS: Client error displayed when a site-wide notice was longer than allowed.
+#: actions/sitenoticeadminpanel.php:112
+msgid "Maximum length for the site-wide notice is 255 characters."
+msgstr ""
+"La longueur maximale pour l’avis publié sur l’ensemble du site est de 255 "
+"caractères."
 
+#. TRANS: Label for site-wide notice text field in admin panel.
 #: actions/sitenoticeadminpanel.php:176
 msgid "Site notice text"
 msgstr "Texte de l'avis du site"
 
-#: actions/sitenoticeadminpanel.php:178
-msgid "Site-wide notice text (255 chars max; HTML okay)"
+#. TRANS: Tooltip for site-wide notice text field in admin panel.
+#: actions/sitenoticeadminpanel.php:179
+msgid "Site-wide notice text (255 characters maximum; HTML allowed)"
 msgstr ""
-"Texte de l'avis portant sur tout le site (max. 255 caractères ; HTML activé)"
+"Texte de l’avis publié sur l’ensemble du site (maximum 255 caractères ; HTML "
+"autorisé)"
 
-#: actions/sitenoticeadminpanel.php:198
+#. TRANS: Title for button to save site notice in admin panel.
+#: actions/sitenoticeadminpanel.php:201
 msgid "Save site notice"
 msgstr "Enregistrer l'avis du site"
 
@@ -4521,12 +5627,14 @@ msgstr "Les instantanés seront envoyés à cette URL"
 msgid "Save snapshot settings"
 msgstr "Sauvegarder les paramètres des instantanés"
 
-#: actions/subedit.php:70
+#. TRANS: Client error displayed trying a change a subscription for a non-subscribed profile.
+#: actions/subedit.php:75
 msgid "You are not subscribed to that profile."
 msgstr "Vous n’êtes pas abonné(e) à ce profil."
 
+#. TRANS: Server error displayed when updating a subscription fails with a database error.
 #. TRANS: Exception thrown when a subscription could not be stored on the server.
-#: actions/subedit.php:83 classes/Subscription.php:136
+#: actions/subedit.php:89 classes/Subscription.php:141
 msgid "Could not save subscription."
 msgstr "Impossible d’enregistrer l’abonnement."
 
@@ -4534,10 +5642,6 @@ msgstr "Impossible d’enregistrer l’abonnement."
 msgid "This action only accepts POST requests."
 msgstr "Cette action n'accepte que les requêtes de type POST."
 
-#: actions/subscribe.php:107
-msgid "No such profile."
-msgstr "Profil non-trouvé."
-
 #: actions/subscribe.php:117
 msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
 msgstr ""
@@ -4548,39 +5652,55 @@ msgstr ""
 msgid "Subscribed"
 msgstr "Abonné"
 
-#: actions/subscribers.php:50
+#. TRANS: Header for list of subscribers for a user (first page).
+#. TRANS: %s is the user's nickname.
+#: actions/subscribers.php:51
 #, php-format
 msgid "%s subscribers"
 msgstr "Abonnés à %s"
 
-#: actions/subscribers.php:52
+#. TRANS: Header for list of subscribers for a user (not first page).
+#. TRANS: %1$s is the user's nickname, $2$d is the page number.
+#: actions/subscribers.php:55
 #, php-format
 msgid "%1$s subscribers, page %2$d"
 msgstr "Abonnés à %1$s - page %2$d"
 
-#: actions/subscribers.php:63
+#. TRANS: Page notice for page with an overview of all subscribers
+#. TRANS: of the logged in user's own profile.
+#: actions/subscribers.php:68
 msgid "These are the people who listen to your notices."
 msgstr "Ces personnes suivent vos avis."
 
-#: actions/subscribers.php:67
+#. TRANS: Page notice for page with an overview of all subscribers of a user other
+#. TRANS: than the logged in user. %s is the user nickname.
+#: actions/subscribers.php:74
 #, php-format
 msgid "These are the people who listen to %s's notices."
 msgstr "Ces personnes suivent les avis de %s."
 
-#: actions/subscribers.php:108
+#. TRANS: Subscriber list text when the logged in user has no subscribers.
+#: actions/subscribers.php:116
 msgid ""
 "You have no subscribers. Try subscribing to people you know and they might "
-"return the favor"
+"return the favor."
 msgstr ""
 "Vous n’avez pas d’abonnés. Essayez de vous abonner à des gens que vous "
-"connaissez et ils pourraient vous retourner la faveur."
+"connaissez et ils pourraient vous rendre la faveur."
 
-#: actions/subscribers.php:110
+#. TRANS: Subscriber list text when looking at the subscribers for a of a user other
+#. TRANS: than the logged in user that has no subscribers. %s is the user nickname.
+#: actions/subscribers.php:120
 #, php-format
 msgid "%s has no subscribers. Want to be the first?"
 msgstr "%s n’a pas d’abonnés. Voulez-vous être le premier ?"
 
-#: actions/subscribers.php:114
+#. TRANS: Subscriber list text when looking at the subscribers for a of a user that has none
+#. TRANS: as an anonymous user. %s is the user nickname.
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/subscribers.php:129
 #, php-format
 msgid ""
 "%s has no subscribers. Why not [register an account](%%%%action.register%%%"
@@ -4589,26 +5709,31 @@ msgstr ""
 "%s n’a pas d’abonnés. Vous pourriez [créer un compte](%%%%action.register%%%"
 "%) et être le premier ?"
 
-#: actions/subscriptions.php:52
-#, php-format
-msgid "%s subscriptions"
-msgstr "Abonnements de %s"
-
-#: actions/subscriptions.php:54
+#. TRANS: Header for subscriptions overview for a user (not first page).
+#. TRANS: %1$s is a user nickname, %2$d is the page number.
+#: actions/subscriptions.php:55
 #, php-format
 msgid "%1$s subscriptions, page %2$d"
 msgstr "Abonnements de %1$s - page %2$d"
 
-#: actions/subscriptions.php:65
+#. TRANS: Page notice for page with an overview of all subscriptions
+#. TRANS: of the logged in user's own profile.
+#: actions/subscriptions.php:68
 msgid "These are the people whose notices you listen to."
 msgstr "Vous suivez les avis de ces personnes."
 
-#: actions/subscriptions.php:69
+#. TRANS: Page notice for page with an overview of all subscriptions of a user other
+#. TRANS: than the logged in user. %s is the user nickname.
+#: actions/subscriptions.php:74
 #, php-format
 msgid "These are the people whose notices %s listens to."
 msgstr "Les avis de ces personnes sont suivis par %s."
 
-#: actions/subscriptions.php:126
+#. TRANS: Subscription list text when the logged in user has no subscriptions.
+#. TRANS: This message contains Markdown URLs. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/subscriptions.php:135
 #, php-format
 msgid ""
 "You're not listening to anyone's notices right now, try subscribing to "
@@ -4624,16 +5749,27 @@ msgstr ""
 "êtes un [utilisateur de Twitter](%%action.twittersettings%%), vous pouvez "
 "vous abonner automatiquement aux gens auquels vous êtes déjà abonné là-bas."
 
-#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#. TRANS: Subscription list text when looking at the subscriptions for a of a user other
+#. TRANS: than the logged in user that has no subscriptions. %s is the user nickname.
+#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none
+#. TRANS: as an anonymous user. %s is the user nickname.
+#: actions/subscriptions.php:143 actions/subscriptions.php:149
 #, php-format
 msgid "%s is not listening to anyone."
 msgstr "%s ne suit actuellement personne."
 
-#: actions/subscriptions.php:208
+#: actions/subscriptions.php:178
+#, fuzzy, php-format
+msgid "Subscription feed for %s (Atom)"
+msgstr "Flux des avis de %s (Atom)"
+
+#. TRANS: Checkbox label for enabling Jabber messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:242
 msgid "Jabber"
 msgstr "Jabber"
 
-#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
+#. TRANS: Checkbox label for enabling SMS messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:257
 msgid "SMS"
 msgstr "SMS"
 
@@ -4671,7 +5807,7 @@ msgid "User profile"
 msgstr "Profil de l’utilisateur"
 
 #: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:103
+#: lib/userprofile.php:107
 msgid "Photo"
 msgstr "Photo"
 
@@ -4736,79 +5872,95 @@ msgstr ""
 "avec la licence du site « %2$s »."
 
 #. TRANS: User admin panel title
-#: actions/useradminpanel.php:60
+#: actions/useradminpanel.php:58
 msgctxt "TITLE"
 msgid "User"
 msgstr "Utilisateur"
 
-#: actions/useradminpanel.php:71
+#. TRANS: Instruction for user admin panel.
+#: actions/useradminpanel.php:69
 msgid "User settings for this StatusNet site"
-msgstr ""
+msgstr "Paramètres des utilisateurs pour ce site StatusNet"
 
-#: actions/useradminpanel.php:150
+#. TRANS: Form validation error in user admin panel when a non-numeric character limit was set.
+#: actions/useradminpanel.php:147
 msgid "Invalid bio limit. Must be numeric."
 msgstr "Limite de bio invalide : doit être numérique."
 
-#: actions/useradminpanel.php:156
-msgid "Invalid welcome text. Max length is 255 characters."
+#. TRANS: Form validation error in user admin panel when welcome text is too long.
+#: actions/useradminpanel.php:154
+msgid "Invalid welcome text. Maximum length is 255 characters."
 msgstr "Texte de bienvenue invalide. La taille maximale est de 255 caractères."
 
+#. TRANS: Client error displayed when trying to set a non-existing user as default subscription for new
+#. TRANS: users in user admin panel. %1$s is the invalid nickname.
 #: actions/useradminpanel.php:166
 #, php-format
-msgid "Invalid default subscripton: '%1$s' is not user."
+msgid "Invalid default subscripton: '%1$s' is not user."
 msgstr "Abonnement par défaut invalide : « %1$s » n’est pas un utilisateur."
 
 #. TRANS: Link description in user account settings menu.
-#: actions/useradminpanel.php:219 lib/accountsettingsaction.php:111
-#: lib/personalgroupnav.php:109
+#: actions/useradminpanel.php:215 lib/accountsettingsaction.php:106
+#: lib/personalgroupnav.php:112
 msgid "Profile"
 msgstr "Profil"
 
-#: actions/useradminpanel.php:223
+#. TRANS: Field label in user admin panel for setting the character limit for the bio field.
+#: actions/useradminpanel.php:220
 msgid "Bio Limit"
 msgstr "Limite de bio"
 
-#: actions/useradminpanel.php:224
+#. TRANS: Tooltip in user admin panel for setting the character limit for the bio field.
+#: actions/useradminpanel.php:222
 msgid "Maximum length of a profile bio in characters."
 msgstr "Longueur maximale de la bio d’un profil en caractères."
 
-#: actions/useradminpanel.php:232
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:231
 msgid "New users"
 msgstr "Nouveaux utilisateurs"
 
+#. TRANS: Field label in user admin panel for setting new user welcome text.
 #: actions/useradminpanel.php:236
 msgid "New user welcome"
 msgstr "Accueil des nouveaux utilisateurs"
 
-#: actions/useradminpanel.php:237
-msgid "Welcome text for new users (Max 255 chars)."
+#. TRANS: Tooltip in user admin panel for setting new user welcome text.
+#: actions/useradminpanel.php:238
+msgid "Welcome text for new users (maximum 255 characters)."
 msgstr ""
 "Texte de bienvenue pour les nouveaux utilisateurs (maximum 255 caractères)."
 
-#: actions/useradminpanel.php:242
+#. TRANS: Field label in user admin panel for setting default subscription for new users.
+#: actions/useradminpanel.php:244
 msgid "Default subscription"
 msgstr "Abonnements par défaut"
 
-#: actions/useradminpanel.php:243
+#. TRANS: Tooltip in user admin panel for setting default subscription for new users.
+#: actions/useradminpanel.php:246
 msgid "Automatically subscribe new users to this user."
 msgstr "Abonner automatiquement les nouveaux utilisateurs à cet utilisateur."
 
-#: actions/useradminpanel.php:252
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:256
 msgid "Invitations"
 msgstr "Invitations"
 
-#: actions/useradminpanel.php:257
+#. TRANS: Field label for checkbox in user admin panel for allowing users to invite friend using site e-mail.
+#: actions/useradminpanel.php:262
 msgid "Invitations enabled"
 msgstr "Invitations activées"
 
-#: actions/useradminpanel.php:259
+#. TRANS: Tooltip for checkbox in user admin panel for allowing users to invite friend using site e-mail.
+#: actions/useradminpanel.php:265
 msgid "Whether to allow users to invite new users."
 msgstr ""
 "S’il faut autoriser les utilisateurs à inviter de nouveaux utilisateurs."
 
-#: actions/useradminpanel.php:295
+#. TRANS: Title for button to save user settings in user admin panel.
+#: actions/useradminpanel.php:302
 msgid "Save user settings"
-msgstr ""
+msgstr "Sauvegarder les paramètres utilisateur"
 
 #: actions/userauthorization.php:105
 msgid "Authorize subscription"
@@ -4915,11 +6067,13 @@ msgstr "Impossible de lire l’URL de l’avatar « %s »."
 msgid "Wrong image type for avatar URL ‘%s’."
 msgstr "Format d’image invalide pour l’URL de l’avatar « %s »."
 
-#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+#. TRANS: Page title for profile design page.
+#: actions/userdesignsettings.php:76 lib/designsettings.php:63
 msgid "Profile design"
 msgstr "Conception de profil"
 
-#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+#. TRANS: Instructions for profile design page.
+#: actions/userdesignsettings.php:87 lib/designsettings.php:74
 msgid ""
 "Customize the way your profile looks with a background image and a colour "
 "palette of your choice."
@@ -4959,7 +6113,7 @@ msgstr ""
 #. TRANS: Message is used as a subtitle in atom user notice feed.
 #. TRANS: %1$s is a user name, %2$s is a site name.
 #: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
-#: lib/atomusernoticefeed.php:76
+#: lib/atomusernoticefeed.php:75
 #, php-format
 msgid "Updates from %1$s on %2$s!"
 msgstr "Statuts de %1$s dans %2$s!"
@@ -5020,7 +6174,7 @@ msgid "Plugins"
 msgstr "Extensions"
 
 #. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
-#: actions/version.php:198 lib/action.php:805
+#: actions/version.php:198 lib/action.php:885
 msgid "Version"
 msgstr "Version"
 
@@ -5028,81 +6182,114 @@ msgstr "Version"
 msgid "Author(s)"
 msgstr "Auteur(s)"
 
-#: classes/Fave.php:147 lib/favorform.php:140
+#. TRANS: Activity title when marking a notice as favorite.
+#: classes/Fave.php:151 lib/favorform.php:143
 msgid "Favor"
 msgstr "Ajouter à mes favoris"
 
-#: classes/Fave.php:148
+#. TRANS: Ntofication given when a user marks a notice as favorite.
+#. TRANS: %1$s is a user nickname or full name, %2$s is a notice URI.
+#: classes/Fave.php:154
 #, php-format
-msgid "%s marked notice %s as a favorite."
-msgstr ""
+msgid "%1$s marked notice %2$s as a favorite."
+msgstr "%1$s a marqué l’avis %2$s comme favori."
 
 #. TRANS: Server exception thrown when a URL cannot be processed.
-#: classes/File.php:143
+#: classes/File.php:156
 #, php-format
 msgid "Cannot process URL '%s'"
 msgstr "Impossible de traiter l’URL « %s »"
 
 #. TRANS: Server exception thrown when... Robin thinks something is impossible!
-#: classes/File.php:175
+#: classes/File.php:188
 msgid "Robin thinks something is impossible."
 msgstr "Robin pense que quelque chose est impossible."
 
 #. TRANS: Message given if an upload is larger than the configured maximum.
 #. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
-#: classes/File.php:190
+#. TRANS: %1$s is used for plural.
+#: classes/File.php:204
 #, php-format
 msgid ""
+"No file may be larger than %1$d byte and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgid_plural ""
 "No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
 "Try to upload a smaller version."
-msgstr ""
-"Un fichier ne peut pas peser plus de %1$d octets et le fichier que vous avez "
-"envoyé pesait %2$d octets. Essayez d’importer une version moins lourde."
+msgstr[0] ""
+"Un fichier ne peut pas occuper plus de %1$d octet et le fichier que vous "
+"avez envoyé occupait %2$d octets. Essayez de téléverser une version moins "
+"lourde."
+msgstr[1] ""
+"Un fichier ne peut pas occuper plus de %1$d octets et le fichier que vous "
+"avez envoyé occupait %2$d octets. Essayez de téléverser une version moins "
+"lourde."
 
 #. TRANS: Message given if an upload would exceed user quota.
-#. TRANS: %d (number) is the user quota in bytes.
-#: classes/File.php:202
+#. TRANS: %d (number) is the user quota in bytes and is used for plural.
+#: classes/File.php:217
 #, php-format
-msgid "A file this large would exceed your user quota of %d bytes."
-msgstr "Un fichier aussi gros dépasserai votre quota utilisateur de %d octets."
+msgid "A file this large would exceed your user quota of %d byte."
+msgid_plural "A file this large would exceed your user quota of %d bytes."
+msgstr[0] ""
+"Un fichier aussi gros dépasserait votre quota utilisateur de %d octet."
+msgstr[1] ""
+"Un fichier aussi gros dépasserait votre quota utilisateur de %d octets."
 
 #. TRANS: Message given id an upload would exceed a user's monthly quota.
-#. TRANS: $d (number) is the monthly user quota in bytes.
-#: classes/File.php:211
+#. TRANS: $d (number) is the monthly user quota in bytes and is used for plural.
+#: classes/File.php:229
 #, php-format
-msgid "A file this large would exceed your monthly quota of %d bytes."
-msgstr "Un fichier aussi gros dépasserai votre quota mensuel de %d octets."
+msgid "A file this large would exceed your monthly quota of %d byte."
+msgid_plural "A file this large would exceed your monthly quota of %d bytes."
+msgstr[0] "Un fichier aussi gros dépasserait votre quota mensuel de %d octet."
+msgstr[1] "Un fichier aussi gros dépasserait votre quota mensuel de %d octets."
 
 #. TRANS: Client exception thrown if a file upload does not have a valid name.
-#: classes/File.php:248 classes/File.php:263
+#: classes/File.php:276 classes/File.php:291
 msgid "Invalid filename."
 msgstr "Nom de fichier non valide."
 
 #. TRANS: Exception thrown when joining a group fails.
-#: classes/Group_member.php:42
+#: classes/Group_member.php:51
 msgid "Group join failed."
 msgstr "L’inscription au groupe a échoué."
 
 #. TRANS: Exception thrown when trying to leave a group the user is not a member of.
-#: classes/Group_member.php:55
+#: classes/Group_member.php:64
 msgid "Not part of group."
 msgstr "N’appartient pas au groupe."
 
 #. TRANS: Exception thrown when trying to leave a group fails.
-#: classes/Group_member.php:63
+#: classes/Group_member.php:72
 msgid "Group leave failed."
 msgstr "La désinscription du groupe a échoué."
 
-#: classes/Group_member.php:108 lib/joinform.php:114
+#. TRANS: Exception thrown providing an invalid profile ID.
+#. TRANS: %s is the invalid profile ID.
+#: classes/Group_member.php:85
+#, php-format
+msgid "Profile ID %s is invalid."
+msgstr "L’identifiant de profil « %s » est invalide."
+
+#. TRANS: Exception thrown providing an invalid group ID.
+#. TRANS: %s is the invalid group ID.
+#: classes/Group_member.php:98
+#, php-format
+msgid "Group ID %s is invalid."
+msgstr "L’identifiant de groupe %s est invalide."
+
+#. TRANS: Activity title.
+#: classes/Group_member.php:147 lib/joinform.php:114
 msgid "Join"
 msgstr "Rejoindre"
 
 #. TRANS: Success message for subscribe to group attempt through OStatus.
 #. TRANS: %1$s is the member name, %2$s is the subscribed group's name.
-#: classes/Group_member.php:112
+#: classes/Group_member.php:151
 #, php-format
 msgid "%1$s has joined group %2$s."
-msgstr ""
+msgstr "%1$s a rejoint le groupe %2$s."
 
 #. TRANS: Server exception thrown when updating a local group fails.
 #: classes/Local_group.php:42
@@ -5122,17 +6309,17 @@ msgid "No database name or DSN found anywhere."
 msgstr "Aucun nom de base de données ou DSN trouvé nulle part."
 
 #. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
-#: classes/Message.php:46
+#: classes/Message.php:45
 msgid "You are banned from sending direct messages."
 msgstr "Il vous est interdit d’envoyer des messages directs."
 
 #. TRANS: Message given when a message could not be stored on the server.
-#: classes/Message.php:63
+#: classes/Message.php:69
 msgid "Could not insert message."
 msgstr "Impossible d’insérer le message."
 
 #. TRANS: Message given when a message could not be updated on the server.
-#: classes/Message.php:74
+#: classes/Message.php:80
 msgid "Could not update message with new URI."
 msgstr "Impossible de mettre à jour le message avec un nouvel URI."
 
@@ -5150,17 +6337,17 @@ msgid "Database error inserting hashtag: %s"
 msgstr "Erreur de base de donnée en insérant la marque (hashtag) : %s"
 
 #. TRANS: Client exception thrown if a notice contains too many characters.
-#: classes/Notice.php:265
+#: classes/Notice.php:270
 msgid "Problem saving notice. Too long."
 msgstr "Problème lors de l’enregistrement de l’avis ; trop long."
 
 #. TRANS: Client exception thrown when trying to save a notice for an unknown user.
-#: classes/Notice.php:270
+#: classes/Notice.php:275
 msgid "Problem saving notice. Unknown user."
 msgstr "Erreur lors de l’enregistrement de l’avis. Utilisateur inconnu."
 
 #. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
-#: classes/Notice.php:276
+#: classes/Notice.php:281
 msgid ""
 "Too many notices too fast; take a breather and post again in a few minutes."
 msgstr ""
@@ -5168,7 +6355,7 @@ msgstr ""
 "minutes."
 
 #. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
-#: classes/Notice.php:283
+#: classes/Notice.php:288
 msgid ""
 "Too many duplicate messages too quickly; take a breather and post again in a "
 "few minutes."
@@ -5177,36 +6364,50 @@ msgstr ""
 "dans quelques minutes."
 
 #. TRANS: Client exception thrown when a user tries to post while being banned.
-#: classes/Notice.php:291
+#: classes/Notice.php:296
 msgid "You are banned from posting notices on this site."
 msgstr "Il vous est interdit de poster des avis sur ce site."
 
 #. TRANS: Server exception thrown when a notice cannot be saved.
 #. TRANS: Server exception thrown when a notice cannot be updated.
-#: classes/Notice.php:358 classes/Notice.php:385
+#: classes/Notice.php:363 classes/Notice.php:390
 msgid "Problem saving notice."
 msgstr "Problème lors de l’enregistrement de l’avis."
 
 #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
-#: classes/Notice.php:906
-msgid "Bad type provided to saveKnownGroups"
-msgstr "Le type renseigné pour saveKnownGroups n’est pas valable"
+#: classes/Notice.php:913
+msgid "Bad type provided to saveKnownGroups."
+msgstr "Le type renseigné pour la méthode saveKnownGroups() est incorrect."
 
 #. TRANS: Server exception thrown when an update for a group inbox fails.
-#: classes/Notice.php:1005
+#: classes/Notice.php:1012
 msgid "Problem saving group inbox."
 msgstr "Problème lors de l’enregistrement de la boîte de réception du groupe."
 
+#. TRANS: Server exception thrown when a reply cannot be saved.
+#. TRANS: %1$d is a notice ID, %2$d is the ID of the mentioned user.
+#: classes/Notice.php:1126
+#, php-format
+msgid "Could not save reply for %1$d, %2$d."
+msgstr "Impossible d’enregistrer la réponse à %1$d, %2$d."
+
 #. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
 #. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
-#: classes/Notice.php:1824
+#: classes/Notice.php:1645
 #, php-format
 msgid "RT @%1$s %2$s"
 msgstr "RT @%1$s %2$s"
 
+#. TRANS: Full name of a profile or group followed by nickname in parens
+#: classes/Profile.php:172 classes/User_group.php:247
+#, php-format
+msgctxt "FANCYNAME"
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
 #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
 #. TRANS: %1$s is the role name, %2$s is the user ID (number).
-#: classes/Profile.php:737
+#: classes/Profile.php:798
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
 msgstr ""
@@ -5215,7 +6416,7 @@ msgstr ""
 
 #. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
 #. TRANS: %1$s is the role name, %2$s is the user ID (number).
-#: classes/Profile.php:746
+#: classes/Profile.php:807
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
 msgstr ""
@@ -5233,110 +6434,123 @@ msgid "Unable to save tag."
 msgstr "Impossible d’enregistrer l’étiquette."
 
 #. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
-#: classes/Subscription.php:75 lib/oauthstore.php:466
+#: classes/Subscription.php:77 lib/oauthstore.php:482
 msgid "You have been banned from subscribing."
 msgstr "Il vous a été interdit de vous abonner."
 
 #. TRANS: Exception thrown when trying to subscribe while already subscribed.
-#: classes/Subscription.php:80
+#: classes/Subscription.php:82
 msgid "Already subscribed!"
 msgstr "Déjà abonné !"
 
 #. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
-#: classes/Subscription.php:85
+#: classes/Subscription.php:87
 msgid "User has blocked you."
 msgstr "Cet utilisateur vous a bloqué."
 
 #. TRANS: Exception thrown when trying to unsibscribe without a subscription.
-#: classes/Subscription.php:171
+#: classes/Subscription.php:176
 msgid "Not subscribed!"
 msgstr "Pas abonné !"
 
 #. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
-#: classes/Subscription.php:178
+#: classes/Subscription.php:183
 msgid "Could not delete self-subscription."
 msgstr "Impossible de supprimer l’abonnement à soi-même."
 
 #. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
-#: classes/Subscription.php:206
+#: classes/Subscription.php:211
 msgid "Could not delete subscription OMB token."
 msgstr "Impossible de supprimer le jeton OMB de l'abonnement."
 
 #. TRANS: Exception thrown when a subscription could not be deleted on the server.
-#: classes/Subscription.php:218
+#: classes/Subscription.php:223
 msgid "Could not delete subscription."
 msgstr "Impossible de supprimer l’abonnement"
 
-#: classes/Subscription.php:254
+#. TRANS: Activity tile when subscribing to another person.
+#: classes/Subscription.php:265
 msgid "Follow"
-msgstr ""
+msgstr "Suivre"
 
-#: classes/Subscription.php:255
+#. TRANS: Notification given when one person starts following another.
+#. TRANS: %1$s is the subscriber, %2$s is the subscribed.
+#: classes/Subscription.php:268
 #, php-format
-msgid "%s is now following %s."
-msgstr ""
+msgid "%1$s is now following %2$s."
+msgstr "%1$s suit à présent %2$s."
 
 #. TRANS: Notice given on user registration.
 #. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
-#: classes/User.php:384
+#: classes/User.php:395
 #, php-format
 msgid "Welcome to %1$s, @%2$s!"
 msgstr "Bienvenue à %1$s, @%2$s !"
 
+#. TRANS: Server exception.
+#: classes/User.php:923
+msgid "No single user defined for single-user mode."
+msgstr "Aucun utilisateur unique défini pour le mode mono-utilisateur."
+
+#. TRANS: Server exception.
+#: classes/User.php:927
+msgid "Single-user mode code called when not enabled."
+msgstr "Code en mode mono-utilisateur appelé quand ce n’est pas autorisé."
+
 #. TRANS: Server exception thrown when creating a group failed.
-#: classes/User_group.php:496
+#: classes/User_group.php:511
 msgid "Could not create group."
 msgstr "Impossible de créer le groupe."
 
 #. TRANS: Server exception thrown when updating a group URI failed.
-#: classes/User_group.php:506
+#: classes/User_group.php:521
 msgid "Could not set group URI."
 msgstr "Impossible de définir l'URI du groupe."
 
 #. TRANS: Server exception thrown when setting group membership failed.
-#: classes/User_group.php:529
+#: classes/User_group.php:544
 msgid "Could not set group membership."
 msgstr "Impossible d’établir l’inscription au groupe."
 
 #. TRANS: Server exception thrown when saving local group information failed.
-#: classes/User_group.php:544
+#: classes/User_group.php:559
 msgid "Could not save local group info."
 msgstr "Impossible d’enregistrer les informations du groupe local."
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:109
+#: lib/accountsettingsaction.php:104
 msgid "Change your profile settings"
 msgstr "Modifier vos paramètres de profil"
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:116
+#: lib/accountsettingsaction.php:111
 msgid "Upload an avatar"
 msgstr "Ajouter un avatar"
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:123
+#: lib/accountsettingsaction.php:118
 msgid "Change your password"
 msgstr "Modifier votre mot de passe"
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:130
+#: lib/accountsettingsaction.php:125
 msgid "Change email handling"
 msgstr "Modifier le traitement des courriels"
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:137
+#: lib/accountsettingsaction.php:132
 msgid "Design your profile"
 msgstr "Concevez votre profil"
 
 #. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:144
+#: lib/accountsettingsaction.php:139
 msgid "Other options"
 msgstr "Autres options"
 
 #. TRANS: Link description in user account settings menu.
-#: lib/accountsettingsaction.php:146
+#: lib/accountsettingsaction.php:141
 msgid "Other"
-msgstr "Autres "
+msgstr "Autres"
 
 #. TRANS: Page title. %1$s is the title, %2$s is the site name.
 #: lib/action.php:148
@@ -5349,185 +6563,201 @@ msgstr "%1$s - %2$s"
 msgid "Untitled page"
 msgstr "Page sans nom"
 
+#. TRANS: Localized tooltip for '...' expansion button on overlong remote messages.
+#: lib/action.php:312
+msgctxt "TOOLTIP"
+msgid "Show more"
+msgstr "Voir davantage"
+
 #. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
-#: lib/action.php:449
+#: lib/action.php:531
 msgid "Primary site navigation"
 msgstr "Navigation primaire du site"
 
 #. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:455
+#: lib/action.php:537
 msgctxt "TOOLTIP"
 msgid "Personal profile and friends timeline"
 msgstr "Profil personnel et flux des amis"
 
 #. TRANS: Main menu option when logged in for access to personal profile and friends timeline
-#: lib/action.php:458
+#: lib/action.php:540
 msgctxt "MENU"
 msgid "Personal"
 msgstr "Personnel"
 
 #. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:460
+#: lib/action.php:542
 msgctxt "TOOLTIP"
 msgid "Change your email, avatar, password, profile"
 msgstr "Modifier votre adresse électronique, avatar, mot de passe, profil"
 
+#. TRANS: Main menu option when logged in for access to user settings
+#: lib/action.php:545
+msgid "Account"
+msgstr "Compte"
+
 #. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:465
+#: lib/action.php:547
 msgctxt "TOOLTIP"
 msgid "Connect to services"
 msgstr "Se connecter aux services"
 
 #. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
-#: lib/action.php:468
+#: lib/action.php:550
 msgid "Connect"
 msgstr "Connexion"
 
 #. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:471
+#: lib/action.php:553
 msgctxt "TOOLTIP"
 msgid "Change site configuration"
 msgstr "Modifier la configuration du site"
 
 #. TRANS: Main menu option when logged in and site admin for access to site configuration
 #. TRANS: Menu item in the group navigation page. Only shown for group administrators.
-#: lib/action.php:474 lib/groupnav.php:117
+#: lib/action.php:556 lib/groupnav.php:117
 msgctxt "MENU"
 msgid "Admin"
 msgstr "Administrer"
 
 #. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:478
+#: lib/action.php:560
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Invite friends and colleagues to join you on %s"
 msgstr "Inviter des amis et collègues à vous rejoindre sur %s"
 
 #. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
-#: lib/action.php:481
+#: lib/action.php:563
 msgctxt "MENU"
 msgid "Invite"
 msgstr "Inviter"
 
 #. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:487
+#: lib/action.php:569
 msgctxt "TOOLTIP"
 msgid "Logout from the site"
 msgstr "Fermer la session"
 
 #. TRANS: Main menu option when logged in to log out the current user
-#: lib/action.php:490
+#: lib/action.php:572
 msgctxt "MENU"
 msgid "Logout"
 msgstr "Déconnexion"
 
 #. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:495
+#: lib/action.php:577
 msgctxt "TOOLTIP"
 msgid "Create an account"
 msgstr "Créer un compte"
 
 #. TRANS: Main menu option when not logged in to register a new account
-#: lib/action.php:498
+#: lib/action.php:580
 msgctxt "MENU"
 msgid "Register"
 msgstr "S’inscrire"
 
 #. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:501
+#: lib/action.php:583
 msgctxt "TOOLTIP"
 msgid "Login to the site"
 msgstr "Ouvrir une session"
 
-#: lib/action.php:504
+#. TRANS: Main menu option when not logged in to log in
+#: lib/action.php:586
 msgctxt "MENU"
 msgid "Login"
 msgstr "Connexion"
 
 #. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:507
+#: lib/action.php:589
 msgctxt "TOOLTIP"
 msgid "Help me!"
 msgstr "À l’aide !"
 
-#: lib/action.php:510
+#. TRANS: Main menu option for help on the StatusNet site
+#: lib/action.php:592
 msgctxt "MENU"
 msgid "Help"
 msgstr "Aide"
 
 #. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:513
+#: lib/action.php:595
 msgctxt "TOOLTIP"
 msgid "Search for people or text"
 msgstr "Rechercher des personnes ou du texte"
 
-#: lib/action.php:516
+#. TRANS: Main menu option when logged in or when the StatusNet instance is not private
+#: lib/action.php:598
 msgctxt "MENU"
 msgid "Search"
 msgstr "Rechercher"
 
 #. TRANS: DT element for site notice. String is hidden in default CSS.
 #. TRANS: Menu item for site administration
-#: lib/action.php:538 lib/adminpanelaction.php:387
+#: lib/action.php:620 lib/adminpanelaction.php:387
 msgid "Site notice"
 msgstr "Notice du site"
 
 #. TRANS: DT element for local views block. String is hidden in default CSS.
-#: lib/action.php:605
+#: lib/action.php:687
 msgid "Local views"
 msgstr "Vues locales"
 
 #. TRANS: DT element for page notice. String is hidden in default CSS.
-#: lib/action.php:675
+#: lib/action.php:757
 msgid "Page notice"
 msgstr "Avis de la page"
 
 #. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
-#: lib/action.php:778
+#: lib/action.php:858
 msgid "Secondary site navigation"
 msgstr "Navigation secondaire du site"
 
 #. TRANS: Secondary navigation menu option leading to help on StatusNet.
-#: lib/action.php:784
+#: lib/action.php:864
 msgid "Help"
 msgstr "Aide"
 
 #. TRANS: Secondary navigation menu option leading to text about StatusNet site.
-#: lib/action.php:787
+#: lib/action.php:867
 msgid "About"
 msgstr "À propos"
 
 #. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
-#: lib/action.php:790
+#: lib/action.php:870
 msgid "FAQ"
 msgstr "FAQ"
 
 #. TRANS: Secondary navigation menu option leading to Terms of Service.
-#: lib/action.php:795
+#: lib/action.php:875
 msgid "TOS"
 msgstr "CGU"
 
 #. TRANS: Secondary navigation menu option leading to privacy policy.
-#: lib/action.php:799
+#: lib/action.php:879
 msgid "Privacy"
 msgstr "Confidentialité"
 
-#. TRANS: Secondary navigation menu option.
-#: lib/action.php:802
+#. TRANS: Secondary navigation menu option. Leads to information about StatusNet and its license.
+#: lib/action.php:882
 msgid "Source"
 msgstr "Source"
 
-#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
-#: lib/action.php:808
+#. TRANS: Secondary navigation menu option leading to e-mail contact information on the
+#. TRANS: StatusNet site, where to report bugs, ...
+#: lib/action.php:889
 msgid "Contact"
 msgstr "Contact"
 
-#: lib/action.php:810
+#. TRANS: Secondary navigation menu option. Leads to information about embedding a timeline widget.
+#: lib/action.php:892
 msgid "Badge"
 msgstr "Insigne"
 
 #. TRANS: DT element for StatusNet software license.
-#: lib/action.php:839
+#: lib/action.php:921
 msgid "StatusNet software license"
 msgstr "Licence du logiciel StatusNet"
 
@@ -5535,7 +6765,7 @@ msgstr "Licence du logiciel StatusNet"
 #. TRANS: Text between [] is a link description, text between () is the link itself.
 #. TRANS: Make sure there is no whitespace between "]" and "(".
 #. TRANS: "%%site.broughtby%%" is the value of the variable site.broughtby
-#: lib/action.php:846
+#: lib/action.php:928
 #, php-format
 msgid ""
 "**%%site.name%%** is a microblogging service brought to you by [%%site."
@@ -5545,7 +6775,7 @@ msgstr ""
 "%site.broughtby%%](%%site.broughtbyurl%%)."
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
-#: lib/action.php:849
+#: lib/action.php:931
 #, php-format
 msgid "**%%site.name%%** is a microblogging service."
 msgstr "**%%site.name%%** est un service de micro-blogging."
@@ -5554,7 +6784,7 @@ msgstr "**%%site.name%%** est un service de micro-blogging."
 #. TRANS: Make sure there is no whitespace between "]" and "(".
 #. TRANS: Text between [] is a link description, text between () is the link itself.
 #. TRANS: %s is the version of StatusNet that is being used.
-#: lib/action.php:856
+#: lib/action.php:938
 #, php-format
 msgid ""
 "It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -5566,20 +6796,20 @@ msgstr ""
 "(http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
 
 #. TRANS: DT element for StatusNet site content license.
-#: lib/action.php:872
+#: lib/action.php:954
 msgid "Site content license"
 msgstr "Licence du contenu du site"
 
 #. TRANS: Content license displayed when license is set to 'private'.
 #. TRANS: %1$s is the site name.
-#: lib/action.php:879
+#: lib/action.php:961
 #, php-format
 msgid "Content and data of %1$s are private and confidential."
 msgstr "Le contenu et les données de %1$s sont privés et confidentiels."
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved'.
 #. TRANS: %1$s is the copyright owner.
-#: lib/action.php:886
+#: lib/action.php:968
 #, php-format
 msgid "Content and data copyright by %1$s. All rights reserved."
 msgstr ""
@@ -5587,7 +6817,7 @@ msgstr ""
 "réservés."
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
-#: lib/action.php:890
+#: lib/action.php:972
 msgid "Content and data copyright by contributors. All rights reserved."
 msgstr ""
 "Le contenu et les données sont sous le droit d’auteur du contributeur. Tous "
@@ -5595,46 +6825,51 @@ msgstr ""
 
 #. TRANS: license message in footer.
 #. TRANS: %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
-#: lib/action.php:904
+#: lib/action.php:1004
 #, php-format
 msgid "All %1$s content and data are available under the %2$s license."
 msgstr ""
 "Tous les contenus %1$s et les données sont disponibles sous la licence %2$s."
 
 #. TRANS: DT element for pagination (previous/next, etc.).
-#: lib/action.php:1248
+#: lib/action.php:1340
 msgid "Pagination"
 msgstr "Pagination"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: present than the currently displayed information.
-#: lib/action.php:1259
+#: lib/action.php:1351
 msgid "After"
 msgstr "Après"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: past than the currently displayed information.
-#: lib/action.php:1269
+#: lib/action.php:1361
 msgid "Before"
 msgstr "Avant"
 
 #. TRANS: Client exception thrown when a feed instance is a DOMDocument.
-#: lib/activity.php:122
+#: lib/activity.php:125
 msgid "Expecting a root feed element but got a whole XML document."
 msgstr "Attendait un élément racine mais a reçu tout un document XML."
 
+#: lib/activity.php:360
+#, fuzzy
+msgid "Post"
+msgstr "Photo"
+
 #. TRANS: Client exception thrown when there is no source attribute.
-#: lib/activityutils.php:203
+#: lib/activityutils.php:200
 msgid "Can't handle remote content yet."
 msgstr "Impossible de gérer le contenu distant pour le moment."
 
 #. TRANS: Client exception thrown when there embedded XML content is found that cannot be processed yet.
-#: lib/activityutils.php:240
+#: lib/activityutils.php:237
 msgid "Can't handle embedded XML content yet."
 msgstr "Impossible de gérer le contenu XML embarqué pour le moment."
 
 #. TRANS: Client exception thrown when base64 encoded content is found that cannot be processed yet.
-#: lib/activityutils.php:245
+#: lib/activityutils.php:242
 msgid "Can't handle embedded Base64 content yet."
 msgstr "Impossible de gérer le contenu en Base64 embarqué pour le moment."
 
@@ -5693,7 +6928,7 @@ msgid "User configuration"
 msgstr "Configuration utilisateur"
 
 #. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:355 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:355 lib/personalgroupnav.php:118
 msgid "User"
 msgstr "Utilisateur"
 
@@ -5725,7 +6960,7 @@ msgstr "Configuration des instantanés"
 #. TRANS: Menu item title/tooltip
 #: lib/adminpanelaction.php:401
 msgid "Set site license"
-msgstr ""
+msgstr "Définir la licence du site"
 
 #. TRANS: Client error 401.
 #: lib/apiauth.php:111
@@ -5735,229 +6970,276 @@ msgstr ""
 "vous n’y avez accès qu’en lecture."
 
 #. TRANS: OAuth exception thrown when no application is found for a given consumer key.
-#: lib/apiauth.php:175
+#: lib/apiauth.php:177
 msgid "No application for that consumer key."
 msgstr "Aucune demande trouvée pour cette clé de consommateur."
 
 #. TRANS: OAuth exception given when an incorrect access token was given for a user.
-#: lib/apiauth.php:212
+#: lib/apiauth.php:219
 msgid "Bad access token."
 msgstr "Jeton d’accès erroné."
 
 #. TRANS: OAuth exception given when no user was found for a given token (no token was found).
-#: lib/apiauth.php:217
+#: lib/apiauth.php:224
 msgid "No user for that token."
 msgstr "Aucun utilisateur associé à ce jeton."
 
 #. TRANS: Client error thrown when authentication fails becaus a user clicked "Cancel".
 #. TRANS: Client error thrown when authentication fails.
-#: lib/apiauth.php:258 lib/apiauth.php:290
+#: lib/apiauth.php:266 lib/apiauth.php:293
 msgid "Could not authenticate you."
 msgstr "Impossible de vous authentifier."
 
+#. TRANS: Server error displayed when trying to create an anynymous OAuth consumer.
+#: lib/apioauthstore.php:45
+msgid "Could not create anonymous consumer."
+msgstr "Impossible de créer un consommateur anonyme."
+
+#. TRANS: Server error displayed when trying to create an anynymous OAuth application.
+#: lib/apioauthstore.php:69
+msgid "Could not create anonymous OAuth application."
+msgstr "Impossible de créer l’application OAuth anonyme."
+
+#. TRANS: Exception thrown when no token association could be found.
+#: lib/apioauthstore.php:151
+msgid ""
+"Could not find a profile and application associated with the request token."
+msgstr ""
+"Impossible de trouver le profil et l’application associés au jeton de "
+"requête."
+
+#. TRANS: Exception thrown when no access token can be issued.
+#: lib/apioauthstore.php:186
+msgid "Could not issue access token."
+msgstr "Impossible d’émettre le jeton d’accès."
+
+#. TRANS: Server error displayed when a database error occurs.
+#: lib/apioauthstore.php:243
+msgid "Database error inserting OAuth application user."
+msgstr ""
+"Erreur de base de donnée en insérant l’utilisateur de l’application OAuth"
+
 #. TRANS: Exception thrown when an attempt is made to revoke an unknown token.
-#: lib/apioauthstore.php:178
+#: lib/apioauthstore.php:285
 msgid "Tried to revoke unknown token."
 msgstr "Révocation essayée d’un jeton inconnu."
 
 #. TRANS: Exception thrown when an attempt is made to remove a revoked token.
-#: lib/apioauthstore.php:182
+#: lib/apioauthstore.php:290
 msgid "Failed to delete revoked token."
 msgstr "Impossible de supprimer un jeton révoqué."
 
-#. TRANS: Form legend.
-#: lib/applicationeditform.php:129
-msgid "Edit application"
-msgstr "Modifier votre application"
-
 #. TRANS: Form guide.
 #: lib/applicationeditform.php:178
 msgid "Icon for this application"
 msgstr "Icône pour cette application"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:200
+#. TRANS: %d is the number of available characters for the description.
+#: lib/applicationeditform.php:201
 #, php-format
-msgid "Describe your application in %d characters"
-msgstr "Décrivez votre application en %d caractères"
+msgid "Describe your application in %d character"
+msgid_plural "Describe your application in %d characters"
+msgstr[0] "Décrivez votre application en %d caractère"
+msgstr[1] "Décrivez votre application en %d caractères"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:204
+#: lib/applicationeditform.php:205
 msgid "Describe your application"
 msgstr "Décrivez votre application"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:215
+#: lib/applicationeditform.php:216
 msgid "URL of the homepage of this application"
 msgstr "URL de la page d’accueil de cette application"
 
 #. TRANS: Form input field label.
-#: lib/applicationeditform.php:217
+#: lib/applicationeditform.php:218
 msgid "Source URL"
 msgstr "URL source"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:224
+#: lib/applicationeditform.php:225
 msgid "Organization responsible for this application"
 msgstr "Organisation responsable de cette application"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:233
+#: lib/applicationeditform.php:234
 msgid "URL for the homepage of the organization"
 msgstr "URL de la page d’accueil de l’organisation"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:242
+#: lib/applicationeditform.php:243
 msgid "URL to redirect to after authentication"
 msgstr "URL vers laquelle rediriger après l’authentification"
 
 #. TRANS: Radio button label for application type
-#: lib/applicationeditform.php:270
+#: lib/applicationeditform.php:271
 msgid "Browser"
 msgstr "Navigateur"
 
 #. TRANS: Radio button label for application type
-#: lib/applicationeditform.php:287
+#: lib/applicationeditform.php:288
 msgid "Desktop"
 msgstr "Bureau"
 
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:289
+#: lib/applicationeditform.php:290
 msgid "Type of application, browser or desktop"
 msgstr "Type d’application, navigateur ou bureau"
 
 #. TRANS: Radio button label for access type.
-#: lib/applicationeditform.php:313
+#: lib/applicationeditform.php:314
 msgid "Read-only"
 msgstr "Lecture seule"
 
 #. TRANS: Radio button label for access type.
-#: lib/applicationeditform.php:333
+#: lib/applicationeditform.php:334
 msgid "Read-write"
 msgstr "Lecture-écriture"
 
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:335
+#: lib/applicationeditform.php:336
 msgid "Default access for this application: read-only, or read-write"
 msgstr ""
 "Accès par défaut pour cette application : en lecture seule ou en lecture-"
 "écriture"
 
 #. TRANS: Submit button title.
-#: lib/applicationeditform.php:352
+#: lib/applicationeditform.php:353
 msgid "Cancel"
 msgstr "Annuler"
 
+#: lib/applicationlist.php:247
+msgid " by "
+msgstr " par "
+
 #. TRANS: Application access type
-#: lib/applicationlist.php:135
+#: lib/applicationlist.php:260
 msgid "read-write"
 msgstr "lecture-écriture"
 
 #. TRANS: Application access type
-#: lib/applicationlist.php:137
+#: lib/applicationlist.php:262
 msgid "read-only"
 msgstr "lecture seule"
 
-#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
-#: lib/applicationlist.php:143
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type ("read-write" or "read-only")
+#: lib/applicationlist.php:268
 #, php-format
 msgid "Approved %1$s - \"%2$s\" access."
 msgstr "Accès « %2$s » approuvé le %1$s."
 
+#. TRANS: Access token in the application list.
+#. TRANS: %s are the first 7 characters of the access token.
+#: lib/applicationlist.php:282
+#, php-format
+msgid "Access token starting with: %s"
+msgstr "Jeton d’accès qui commence par : %s"
+
 #. TRANS: Button label
-#: lib/applicationlist.php:158
+#: lib/applicationlist.php:298
 msgctxt "BUTTON"
 msgid "Revoke"
 msgstr "Révoquer"
 
-#. TRANS: DT element label in attachment list.
-#: lib/attachmentlist.php:88
-msgid "Attachments"
-msgstr "Pièces jointes"
+#: lib/atom10feed.php:112
+msgid "author element must contain a name element."
+msgstr "l’élément « author » doit contenir un élément « name »."
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:265
+#: lib/attachmentlist.php:294
 msgid "Author"
 msgstr "Auteur"
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:279
+#: lib/attachmentlist.php:308
 msgid "Provider"
 msgstr "Fournisseur"
 
 #. TRANS: Title.
-#: lib/attachmentnoticesection.php:68
+#: lib/attachmentnoticesection.php:67
 msgid "Notices where this attachment appears"
 msgstr "Avis sur lesquels cette pièce jointe apparaît."
 
 #. TRANS: Title.
-#: lib/attachmenttagcloudsection.php:49
+#: lib/attachmenttagcloudsection.php:48
 msgid "Tags for this attachment"
 msgstr "Marques de cette pièce jointe"
 
-#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
-msgid "Password changing failed"
-msgstr "La modification du mot de passe a échoué"
+#. TRANS: Exception thrown when a password change fails.
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:227
+msgid "Password changing failed."
+msgstr "La modification du mot de passe a échoué."
 
-#: lib/authenticationplugin.php:236
-msgid "Password changing is not allowed"
-msgstr "La modification du mot de passe n’est pas autorisée"
+#. TRANS: Exception thrown when a password change attempt fails because it is not allowed.
+#: lib/authenticationplugin.php:238
+msgid "Password changing is not allowed."
+msgstr "La modification du mot de passe n’est pas autorisée."
 
 #. TRANS: Title for the form to block a user.
-#: lib/blockform.php:70
+#: lib/blockform.php:68
 msgid "Block"
 msgstr "Bloquer"
 
-#: lib/channel.php:157 lib/channel.php:177
+#. TRANS: Title for command results.
+#: lib/channel.php:160 lib/channel.php:181
 msgid "Command results"
 msgstr "Résultats de la commande"
 
-#: lib/channel.php:229 lib/mailhandler.php:142
+#. TRANS: Title for command results.
+#: lib/channel.php:194
+msgid "AJAX error"
+msgstr "Erreur AJAX"
+
+#. TRANS: E-mail subject when a command has completed.
+#: lib/channel.php:233 lib/mailhandler.php:143
 msgid "Command complete"
 msgstr "Commande complétée"
 
-#: lib/channel.php:240
+#. TRANS: E-mail subject when a command has failed.
+#: lib/channel.php:244
 msgid "Command failed"
 msgstr "Échec de la commande"
 
 #. TRANS: Command exception text shown when a notice ID is requested that does not exist.
-#: lib/command.php:84 lib/command.php:108
+#: lib/command.php:82 lib/command.php:106
 msgid "Notice with that id does not exist."
 msgstr "Aucun avis avec cet identifiant n’existe."
 
 #. TRANS: Command exception text shown when a last user notice is requested and it does not exist.
 #. TRANS: Error text shown when a last user notice is requested and it does not exist.
-#: lib/command.php:101 lib/command.php:630
+#: lib/command.php:99 lib/command.php:630
 msgid "User has no last notice."
 msgstr "Aucun avis récent pour cet utilisateur."
 
 #. TRANS: Message given requesting a profile for a non-existing user.
 #. TRANS: %s is the nickname of the user for which the profile could not be found.
-#: lib/command.php:130
+#: lib/command.php:128
 #, php-format
 msgid "Could not find a user with nickname %s."
 msgstr "Impossible de trouver un utilisateur avec le pseudo %s."
 
 #. TRANS: Message given getting a non-existing user.
 #. TRANS: %s is the nickname of the user that could not be found.
-#: lib/command.php:150
+#: lib/command.php:148
 #, php-format
 msgid "Could not find a local user with nickname %s."
 msgstr "Impossible de trouver un utilisateur local portant le pseudo %s."
 
 #. TRANS: Error text shown when an unimplemented command is given.
-#: lib/command.php:185
+#: lib/command.php:183
 msgid "Sorry, this command is not yet implemented."
 msgstr "Désolé, cette commande n’a pas encore été implémentée."
 
 #. TRANS: Command exception text shown when a user tries to nudge themselves.
-#: lib/command.php:231
+#: lib/command.php:229
 msgid "It does not make a lot of sense to nudge yourself!"
 msgstr "Ça n’a pas de sens de se faire un clin d’œil à soi-même !"
 
 #. TRANS: Message given having nudged another user.
 #. TRANS: %s is the nickname of the user that was nudged.
-#: lib/command.php:240
+#: lib/command.php:238
 #, php-format
 msgid "Nudge sent to %s."
 msgstr "Clin d’œil envoyé à %s."
@@ -5966,7 +7248,7 @@ msgstr "Clin d’œil envoyé à %s."
 #. TRANS: %1$s is the number of other user the user is subscribed to.
 #. TRANS: %2$s is the number of users that are subscribed to the user.
 #. TRANS: %3$s is the number of notices the user has sent.
-#: lib/command.php:270
+#: lib/command.php:268
 #, php-format
 msgid ""
 "Subscriptions: %1$s\n"
@@ -5978,52 +7260,63 @@ msgstr ""
 "Messages : %3$s"
 
 #. TRANS: Text shown when a notice has been marked as favourite successfully.
-#: lib/command.php:314
+#: lib/command.php:312
 msgid "Notice marked as fave."
 msgstr "Avis ajouté aux favoris."
 
 #. TRANS: Message given having added a user to a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: lib/command.php:360
+#: lib/command.php:357
 #, php-format
 msgid "%1$s joined group %2$s."
 msgstr "%1$s a rejoint le groupe %2$s."
 
 #. TRANS: Message given having removed a user from a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: lib/command.php:408
+#: lib/command.php:405
 #, php-format
 msgid "%1$s left group %2$s."
 msgstr "%1$s a quitté le groupe %2$s."
 
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: lib/command.php:426
+#, php-format
+msgctxt "WHOIS"
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
 #. TRANS: Whois output. %s is the full name of the queried user.
-#: lib/command.php:434
+#: lib/command.php:430
 #, php-format
 msgid "Fullname: %s"
 msgstr "Nom complet : %s"
 
 #. TRANS: Whois output. %s is the location of the queried user.
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/command.php:438 lib/mail.php:268
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is a location.
+#: lib/command.php:434 lib/mail.php:278
 #, php-format
 msgid "Location: %s"
 msgstr "Emplacement : %s"
 
 #. TRANS: Whois output. %s is the homepage of the queried user.
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/command.php:442 lib/mail.php:271
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is a homepage.
+#: lib/command.php:438 lib/mail.php:282
 #, php-format
 msgid "Homepage: %s"
 msgstr "Site Web : %s"
 
 #. TRANS: Whois output. %s is the bio information of the queried user.
-#: lib/command.php:446
+#: lib/command.php:442
 #, php-format
 msgid "About: %s"
 msgstr "À propos : %s"
 
 #. TRANS: Command exception text shown when trying to send a direct message to a remote user (a user not registered at the current server).
-#: lib/command.php:474
+#. TRANS: %s is a remote profile.
+#: lib/command.php:471
 #, php-format
 msgid ""
 "%s is a remote profile; you can only send direct messages to users on the "
@@ -6032,118 +7325,126 @@ msgstr ""
 "%s est un profil distant ; vous ne pouvez envoyer de messages directs qu'aux "
 "utilisateurs du même serveur."
 
-#. TRANS: Message given if content is too long.
+#. TRANS: Message given if content is too long. %1$sd is used for plural.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:491 lib/xmppmanager.php:403
+#: lib/command.php:488
 #, php-format
-msgid "Message too long - maximum is %1$d characters, you sent %2$d."
-msgstr ""
+msgid "Message too long - maximum is %1$d character, you sent %2$d."
+msgid_plural "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr[0] ""
+"Message trop long ! La taille maximale est de %1$d caractère ; vous en avez "
+"entré %2$d."
+msgstr[1] ""
 "Message trop long ! La taille maximale est de %1$d caractères ; vous en avez "
 "entré %2$d."
 
 #. TRANS: Error text shown sending a direct message fails with an unknown reason.
-#: lib/command.php:517
+#: lib/command.php:516
 msgid "Error sending direct message."
 msgstr "Une erreur est survenue pendant l’envoi de votre message."
 
 #. TRANS: Message given having repeated a notice from another user.
 #. TRANS: %s is the name of the user for which the notice was repeated.
-#: lib/command.php:554
+#: lib/command.php:553
 #, php-format
 msgid "Notice from %s repeated."
 msgstr "Avis de %s repris."
 
 #. TRANS: Error text shown when repeating a notice fails with an unknown reason.
-#: lib/command.php:557
+#: lib/command.php:556
 msgid "Error repeating notice."
 msgstr "Erreur lors de la reprise de l’avis."
 
-#. TRANS: Message given if content of a notice for a reply is too long.
+#. TRANS: Message given if content of a notice for a reply is too long. %1$d is used for plural.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:592
+#: lib/command.php:591
 #, php-format
-msgid "Notice too long - maximum is %1$d characters, you sent %2$d."
-msgstr ""
-"Avis trop long ! La taille maximale est de %1$d caractères ; vous en avez "
+msgid "Notice too long - maximum is %1$d character, you sent %2$d."
+msgid_plural "Notice too long - maximum is %1$d characters, you sent %2$d."
+msgstr[0] ""
+"Avis trop long — La taille maximale est de %1$d caractère ; vous en avez "
+"entré %2$d."
+msgstr[1] ""
+"Avis trop long — La taille maximale est de %1$d caractères ; vous en avez "
 "entré %2$d."
 
 #. TRANS: Text shown having sent a reply to a notice successfully.
 #. TRANS: %s is the nickname of the user of the notice the reply was sent to.
-#: lib/command.php:603
+#: lib/command.php:604
 #, php-format
 msgid "Reply to %s sent."
 msgstr "Réponse à %s envoyée."
 
 #. TRANS: Error text shown when a reply to a notice fails with an unknown reason.
-#: lib/command.php:606
+#: lib/command.php:607
 msgid "Error saving notice."
 msgstr "Problème lors de l’enregistrement de l’avis."
 
 #. TRANS: Error text shown when no username was provided when issuing a subscribe command.
-#: lib/command.php:655
+#: lib/command.php:654
 msgid "Specify the name of the user to subscribe to."
 msgstr "Indiquez le nom de l’utilisateur auquel vous souhaitez vous abonner."
 
 #. TRANS: Command exception text shown when trying to subscribe to an OMB profile using the subscribe command.
-#: lib/command.php:664
+#: lib/command.php:663
 msgid "Can't subscribe to OMB profiles by command."
 msgstr "Impossible de s'inscrire aux profils OMB par cette commande."
 
 #. TRANS: Text shown after having subscribed to another user successfully.
 #. TRANS: %s is the name of the user the subscription was requested for.
-#: lib/command.php:672
+#: lib/command.php:671
 #, php-format
 msgid "Subscribed to %s."
 msgstr "Abonné à %s."
 
 #. TRANS: Error text shown when no username was provided when issuing an unsubscribe command.
 #. TRANS: Error text shown when no username was provided when issuing the command.
-#: lib/command.php:694 lib/command.php:804
+#: lib/command.php:692 lib/command.php:803
 msgid "Specify the name of the user to unsubscribe from."
 msgstr ""
 "Indiquez le nom de l’utilisateur duquel vous souhaitez vous désabonner."
 
 #. TRANS: Text shown after having unsubscribed from another user successfully.
 #. TRANS: %s is the name of the user the unsubscription was requested for.
-#: lib/command.php:705
+#: lib/command.php:703
 #, php-format
 msgid "Unsubscribed from %s."
 msgstr "Désabonné de %s."
 
 #. TRANS: Error text shown when issuing the command "off" with a setting which has not yet been implemented.
 #. TRANS: Error text shown when issuing the command "on" with a setting which has not yet been implemented.
-#: lib/command.php:724 lib/command.php:750
+#: lib/command.php:723 lib/command.php:749
 msgid "Command not yet implemented."
 msgstr "Cette commande n’a pas encore été implémentée."
 
 #. TRANS: Text shown when issuing the command "off" successfully.
-#: lib/command.php:728
+#: lib/command.php:727
 msgid "Notification off."
 msgstr "Avertissements désactivés."
 
 #. TRANS: Error text shown when the command "off" fails for an unknown reason.
-#: lib/command.php:731
+#: lib/command.php:730
 msgid "Can't turn off notification."
 msgstr "Impossible de désactiver les avertissements."
 
 #. TRANS: Text shown when issuing the command "on" successfully.
-#: lib/command.php:754
+#: lib/command.php:753
 msgid "Notification on."
 msgstr "Avertissements activés."
 
 #. TRANS: Error text shown when the command "on" fails for an unknown reason.
-#: lib/command.php:757
+#: lib/command.php:756
 msgid "Can't turn on notification."
 msgstr "Impossible d’activer les avertissements."
 
 #. TRANS: Error text shown when issuing the login command while login is disabled.
-#: lib/command.php:771
+#: lib/command.php:770
 msgid "Login command is disabled."
 msgstr "La commande d’ouverture de session est désactivée."
 
 #. TRANS: Text shown after issuing the login command successfully.
 #. TRANS: %s is a logon link..
-#: lib/command.php:784
+#: lib/command.php:783
 #, php-format
 msgid "This link is useable only once and is valid for only 2 minutes: %s."
 msgstr ""
@@ -6152,20 +7453,20 @@ msgstr ""
 
 #. TRANS: Text shown after issuing the lose command successfully (stop another user from following the current user).
 #. TRANS: %s is the name of the user the unsubscription was requested for.
-#: lib/command.php:813
+#: lib/command.php:812
 #, php-format
 msgid "Unsubscribed %s."
 msgstr "Désabonné de %s."
 
 #. TRANS: Text shown after requesting other users a user is subscribed to without having any subscriptions.
-#: lib/command.php:831
+#: lib/command.php:830
 msgid "You are not subscribed to anyone."
 msgstr "Vous n’êtes abonné(e) à personne."
 
 #. TRANS: Text shown after requesting other users a user is subscribed to.
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribed users.
-#: lib/command.php:836
+#: lib/command.php:835
 msgid "You are subscribed to this person:"
 msgid_plural "You are subscribed to these people:"
 msgstr[0] "Vous êtes abonné à cette personne :"
@@ -6173,14 +7474,14 @@ msgstr[1] "Vous êtes abonné à ces personnes :"
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user
 #. TRANS: (followers) without having any subscribers.
-#: lib/command.php:858
+#: lib/command.php:857
 msgid "No one is subscribed to you."
 msgstr "Personne ne s’est abonné à vous."
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user (followers).
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribing users.
-#: lib/command.php:863
+#: lib/command.php:862
 msgid "This person is subscribed to you:"
 msgid_plural "These people are subscribed to you:"
 msgstr[0] "Cette personne est abonnée à vous :"
@@ -6188,21 +7489,21 @@ msgstr[1] "Ces personnes sont abonnées à vous :"
 
 #. TRANS: Text shown after requesting groups a user is subscribed to without having
 #. TRANS: any group subscriptions.
-#: lib/command.php:885
+#: lib/command.php:884
 msgid "You are not a member of any groups."
 msgstr "Vous n’êtes membre d’aucun groupe."
 
 #. TRANS: Text shown after requesting groups a user is subscribed to.
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribed groups.
-#: lib/command.php:890
+#: lib/command.php:889
 msgid "You are a member of this group:"
 msgid_plural "You are a member of these groups:"
 msgstr[0] "Vous êtes membre de ce groupe :"
 msgstr[1] "Vous êtes membre de ces groupes :"
 
 #. TRANS: Help text for commands. Do not translate the command names themselves; they are fixed strings.
-#: lib/command.php:905
+#: lib/command.php:904
 msgid ""
 "Commands:\n"
 "on - turn on notifications\n"
@@ -6283,51 +7584,73 @@ msgstr ""
 "tracks - pas encore implémenté.\n"
 "tracking - pas encore implémenté.\n"
 
-#: lib/common.php:135
-msgid "No configuration file found. "
-msgstr "Aucun fichier de configuration n’a été trouvé. "
+#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
+#: lib/common.php:147
+msgid "No configuration file found."
+msgstr "Aucun fichier de configuration n’a été trouvé."
 
-#: lib/common.php:136
-msgid "I looked for configuration files in the following places: "
+#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
+#. TRANS: Is followed by a list of directories (separated by HTML breaks).
+#: lib/common.php:150
+msgid "I looked for configuration files in the following places:"
 msgstr ""
-"J’ai cherché des fichiers de configuration dans les emplacements suivants : "
+"Les fichiers de configuration ont été cherchés aux emplacements suivants :"
 
-#: lib/common.php:138
+#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
+#: lib/common.php:153
 msgid "You may wish to run the installer to fix this."
 msgstr "Vous pouvez essayer de lancer l’installeur pour régler ce problème."
 
-#: lib/common.php:139
+#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
+#. TRANS: The text is link text that leads to the installer page.
+#: lib/common.php:157
 msgid "Go to the installer."
 msgstr "Aller au programme d’installation"
 
-#: lib/connectsettingsaction.php:110
+#. TRANS: Menu item for Instant Messaging settings.
+#: lib/connectsettingsaction.php:106
+msgctxt "MENU"
 msgid "IM"
 msgstr "IM"
 
-#: lib/connectsettingsaction.php:111
+#. TRANS: Tooltip for Instant Messaging menu item.
+#: lib/connectsettingsaction.php:108
 msgid "Updates by instant messenger (IM)"
 msgstr "Suivi des avis par messagerie instantanée"
 
-#: lib/connectsettingsaction.php:116
+#. TRANS: Menu item for Short Message Service settings.
+#: lib/connectsettingsaction.php:113
+msgctxt "MENU"
+msgid "SMS"
+msgstr "SMS"
+
+#. TRANS: Tooltip for Short Message Service menu item.
+#: lib/connectsettingsaction.php:115
 msgid "Updates by SMS"
 msgstr "Suivi des avis par SMS"
 
+#. TRANS: Menu item for OuAth connection settings.
 #: lib/connectsettingsaction.php:120
+msgctxt "MENU"
 msgid "Connections"
 msgstr "Connexions"
 
-#: lib/connectsettingsaction.php:121
+#. TRANS: Tooltip for connected applications (Connections through OAuth) menu item.
+#: lib/connectsettingsaction.php:122
 msgid "Authorized connected applications"
 msgstr "Applications autorisées connectées"
 
-#: lib/dberroraction.php:60
+#: lib/dberroraction.php:59
 msgid "Database error"
 msgstr "Erreur de la base de données"
 
-#: lib/designsettings.php:105
+#. TRANS: Label in form on profile design page.
+#. TRANS: Field contains file name on user's computer that could be that user's custom profile background image.
+#: lib/designsettings.php:104
 msgid "Upload file"
 msgstr "Importer un fichier"
 
+#. TRANS: Instructions for form on profile design page.
 #: lib/designsettings.php:109
 msgid ""
 "You can upload your personal background image. The maximum file size is 2MB."
@@ -6335,37 +7658,57 @@ msgstr ""
 "Vous pouvez importer votre image d’arrière plan personnelle. La taille "
 "maximale du fichier est de 2 Mo."
 
-#: lib/designsettings.php:418
+#. TRANS: Radio button on profile design page that will enable use of the uploaded profile image.
+#: lib/designsettings.php:139
+msgctxt "RADIO"
+msgid "On"
+msgstr "Activé"
+
+#. TRANS: Radio button on profile design page that will disable use of the uploaded profile image.
+#: lib/designsettings.php:156
+msgctxt "RADIO"
+msgid "Off"
+msgstr "Désactivé"
+
+#. TRANS: Button text on profile design page to reset all colour settings to default without saving.
+#: lib/designsettings.php:264
+msgctxt "BUTTON"
+msgid "Reset"
+msgstr "Réinitialiser"
+
+#. TRANS: Success message displayed if design settings were saved after clicking "Use defaults".
+#: lib/designsettings.php:433
 msgid "Design defaults restored."
 msgstr "Les paramètre par défaut de la conception ont été restaurés."
 
-#: lib/disfavorform.php:114 lib/disfavorform.php:140
+#: lib/disfavorform.php:114 lib/disfavorform.php:144
 msgid "Disfavor this notice"
 msgstr "Retirer des favoris"
 
-#: lib/favorform.php:114 lib/favorform.php:140
+#: lib/favorform.php:114 lib/favorform.php:143
 msgid "Favor this notice"
 msgstr "Ajouter aux favoris"
 
-#: lib/feed.php:85
+#: lib/feed.php:84
 msgid "RSS 1.0"
 msgstr "RSS 1.0"
 
-#: lib/feed.php:87
+#: lib/feed.php:86
 msgid "RSS 2.0"
 msgstr "RSS 2.0"
 
-#: lib/feed.php:89
+#: lib/feed.php:88
 msgid "Atom"
 msgstr "Atom"
 
-#: lib/feed.php:91
+#: lib/feed.php:90
 msgid "FOAF"
 msgstr "Ami d’un ami"
 
-#: lib/feedlist.php:64
+#. TRANS: Header for feed links (h2).
+#: lib/feedlist.php:66
 msgid "Feeds"
-msgstr ""
+msgstr "Flux d’informations"
 
 #: lib/galleryaction.php:121
 msgid "Filter tags"
@@ -6396,9 +7739,13 @@ msgstr "Aller"
 msgid "Grant this user the \"%s\" role"
 msgstr "Accorder le rôle « %s » à cet utilisateur"
 
+#: lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces"
+
 #: lib/groupeditform.php:163
-msgid "URL of the homepage or blog of the group or topic"
-msgstr "URL du site Web ou blogue du groupe ou sujet "
+msgid "URL of the homepage or blog of the group or topic."
+msgstr "Adresse URL du site web ou blogue pour le groupe ou sujet."
 
 #: lib/groupeditform.php:168
 msgid "Describe the group or topic"
@@ -6406,22 +7753,32 @@ msgstr "Description du groupe ou du sujet"
 
 #: lib/groupeditform.php:170
 #, php-format
-msgid "Describe the group or topic in %d characters"
-msgstr "Description du groupe ou du sujet en %d caractères"
+msgid "Describe the group or topic in %d character or less"
+msgid_plural "Describe the group or topic in %d characters or less"
+msgstr[0] "Description du groupe ou du sujet, en %d caractère ou moins"
+msgstr[1] "Description du groupe ou du sujet, en %d caractères ou moins"
 
-#: lib/groupeditform.php:179
+#: lib/groupeditform.php:182
 msgid ""
-"Location for the group, if any, like \"City, State (or Region), Country\""
+"Location for the group, if any, like \"City, State (or Region), Country\"."
 msgstr ""
-"Emplacement du groupe, s’il y a lieu, de la forme « Ville, État ou région, "
-"Pays »"
+"Emplacement du groupe, s’il y a lieu, de la forme « Ville, État (ou région), "
+"pays »"
 
-#: lib/groupeditform.php:187
+#: lib/groupeditform.php:190
 #, php-format
-msgid "Extra nicknames for the group, comma- or space- separated, max %d"
-msgstr ""
-"Pseudos supplémentaires pour le groupe, séparés par des virgules ou des "
-"espaces, %d au maximum"
+msgid ""
+"Extra nicknames for the group, separated with commas or spaces. Maximum %d "
+"alias allowed."
+msgid_plural ""
+"Extra nicknames for the group, separated with commas or spaces. Maximum %d "
+"aliases allowed."
+msgstr[0] ""
+"Pseudonymes supplémentaires pour le groupe, séparés par des virgules ou des "
+"espaces. Un maximum de %d synonyme est autorisé."
+msgstr[1] ""
+"Pseudonymes supplémentaires pour le groupe, séparés par des virgules ou des "
+"espaces. Un maximum de %d synonymes est autorisé."
 
 #. TRANS: Menu item in the group navigation page.
 #: lib/groupnav.php:86
@@ -6495,15 +7852,19 @@ msgctxt "TOOLTIP"
 msgid "Add or edit %s design"
 msgstr "Ajouter ou modifier l’apparence du groupe « %s »"
 
+#. TRANS: Title for groups with the most members section.
 #: lib/groupsbymemberssection.php:71
 msgid "Groups with most members"
 msgstr "Groupes avec le plus de membres"
 
+#. TRANS: Title for groups with the most posts section.
 #: lib/groupsbypostssection.php:71
 msgid "Groups with most posts"
 msgstr "Groupes avec le plus d’éléments publiés"
 
-#: lib/grouptagcloudsection.php:56
+#. TRANS: Title for group tag cloud section.
+#. TRANS: %s is a group name.
+#: lib/grouptagcloudsection.php:57
 #, php-format
 msgid "Tags in %s group's notices"
 msgstr "Marques dans les avis du groupe %s"
@@ -6518,39 +7879,57 @@ msgstr ""
 msgid "Unsupported image file format."
 msgstr "Format de fichier d’image non supporté."
 
-#: lib/imagefile.php:88
+#. TRANS: Exception thrown when too large a file is uploaded.
+#. TRANS: %s is the maximum file size, for example "500b", "10kB" or "2MB".
+#: lib/imagefile.php:90
 #, php-format
 msgid "That file is too big. The maximum file size is %s."
 msgstr "Ce fichier est trop grand. La taille maximale est %s."
 
-#: lib/imagefile.php:93
+#: lib/imagefile.php:95
 msgid "Partial upload."
 msgstr "Transfert partiel."
 
 #. TRANS: Client exception thrown when a file upload operation has failed with an unknown reason.
-#: lib/imagefile.php:101 lib/mediafile.php:179
+#: lib/imagefile.php:103 lib/mediafile.php:228
 msgid "System error uploading file."
 msgstr "Erreur système lors du transfert du fichier."
 
-#: lib/imagefile.php:109
+#: lib/imagefile.php:111
 msgid "Not an image or corrupt file."
 msgstr "Ceci n’est pas une image, ou c’est un fichier corrompu."
 
-#: lib/imagefile.php:122
+#: lib/imagefile.php:160
 msgid "Lost our file."
 msgstr "Fichier perdu."
 
-#: lib/imagefile.php:163 lib/imagefile.php:224
+#: lib/imagefile.php:197 lib/imagefile.php:237
 msgid "Unknown file type"
 msgstr "Type de fichier inconnu"
 
-#: lib/imagefile.php:244
-msgid "MB"
-msgstr "Mo"
+#. TRANS: Number of megabytes. %d is the number.
+#: lib/imagefile.php:283
+#, php-format
+msgid "%dMB"
+msgid_plural "%dMB"
+msgstr[0] "%d&nbsp;Mo"
+msgstr[1] "%d&nbsp;Mo"
+
+#. TRANS: Number of kilobytes. %d is the number.
+#: lib/imagefile.php:287
+#, php-format
+msgid "%dkB"
+msgid_plural "%dkB"
+msgstr[0] "%d&nbsp;Ko"
+msgstr[1] "%d&nbsp;Ko"
 
-#: lib/imagefile.php:246
-msgid "kB"
-msgstr "Ko"
+#. TRANS: Number of bytes. %d is the number.
+#: lib/imagefile.php:290
+#, php-format
+msgid "%dB"
+msgid_plural "%dB"
+msgstr[0] "%d&nbsp;o"
+msgstr[1] "%d&nbsp;o"
 
 #: lib/jabber.php:387
 #, php-format
@@ -6574,49 +7953,54 @@ msgstr "Ouvrez une session avec un identifiant et un mot de passe"
 msgid "Sign up for a new account"
 msgstr "Créer un nouveau compte"
 
-#. TRANS: Subject for address confirmation email
+#. TRANS: Subject for address confirmation email.
 #: lib/mail.php:174
 msgid "Email address confirmation"
 msgstr "Confirmation de l’adresse courriel"
 
 #. TRANS: Body for address confirmation email.
-#: lib/mail.php:177
+#. TRANS: %1$s is the addressed user's nickname, %2$s is the StatusNet sitename,
+#. TRANS: %3$s is the URL to confirm at.
+#: lib/mail.php:179
 #, php-format
 msgid ""
-"Hey, %s.\n"
+"Hey, %1$s.\n"
 "\n"
-"Someone just entered this email address on %s.\n"
+"Someone just entered this email address on %2$s.\n"
 "\n"
 "If it was you, and you want to confirm your entry, use the URL below:\n"
 "\n"
-"\t%s\n"
+"\t%3$s\n"
 "\n"
 "If not, just ignore this message.\n"
 "\n"
 "Thanks for your time, \n"
-"%s\n"
+"%2$s\n"
 msgstr ""
-"Bonjour %s.\n"
+"Bonjour %1$s.\n"
 "\n"
-"Quelqu’un vient d’utiliser cette adresse électronique sur %s.\n"
+"Quelqu’un vient d’entrer cette adresse de courriel sur %2$s.\n"
 "\n"
-"S’il s’agit bien de vous, et que vous souhaitez confirmer cette adresse, "
-"utilisez le lien qui suit :\n"
+"S’il s’agit bien de vous et si vous souhaitez confirmer votre entrée, "
+"utilisez le lien suivant :\n"
 "\n"
-"%s\n"
+"%3$s\n"
 "\n"
 "Dans le cas contraire, il vous suffit d’ignorer ce message.\n"
 "\n"
 "Merci de votre attention,\n"
-"%s\n"
+"%2$s\n"
 
-#. TRANS: Subject of new-subscriber notification e-mail
-#: lib/mail.php:243
+#. TRANS: Subject of new-subscriber notification e-mail.
+#. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename.
+#: lib/mail.php:246
 #, php-format
 msgid "%1$s is now listening to your notices on %2$s."
 msgstr "%1$s suit maintenant vos avis sur %2$s."
 
-#: lib/mail.php:248
+#. TRANS: This is a paragraph in a new-subscriber e-mail.
+#. TRANS: %s is a URL where the subscriber can be reported as abusive.
+#: lib/mail.php:253
 #, php-format
 msgid ""
 "If you believe this account is being used abusively, you can block them from "
@@ -6626,8 +8010,12 @@ msgstr ""
 "bloquer de votre liste d'abonnés et le signaler comme spam aux "
 "administrateurs du site, sur %s."
 
-#. TRANS: Main body of new-subscriber notification e-mail
-#: lib/mail.php:254
+#. TRANS: Main body of new-subscriber notification e-mail.
+#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename,
+#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty)
+#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty)
+#. TRANS: %7$s is a link to the addressed user's e-mail settings.
+#: lib/mail.php:263
 #, php-format
 msgid ""
 "%1$s is now listening to your notices on %2$s.\n"
@@ -6636,36 +8024,41 @@ msgid ""
 "\n"
 "%4$s%5$s%6$s\n"
 "Faithfully yours,\n"
-"%7$s.\n"
+"%2$s.\n"
 "\n"
 "----\n"
-"Change your email address or notification options at %8$s\n"
+"Change your email address or notification options at %7$s\n"
 msgstr ""
-"%1$s suit maintenant vos avis sur %2$s.\n"
+"%1$s suit dorénavant vos avis sur %2$s.\n"
 "\n"
 "%3$s\n"
 "\n"
 "%4$s%5$s%6$s\n"
 "Cordialement,\n"
-"%7$s.\n"
+"%2$s.\n"
 "\n"
 "----\n"
-"Changez votre adresse de courriel ou vos options de notification sur %8$s\n"
+"Vous pouvez changer votre adresse de courriel ou vos options de notification "
+"sur %7$s\n"
 
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/mail.php:274
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is biographical information.
+#: lib/mail.php:286
 #, php-format
 msgid "Bio: %s"
 msgstr "Bio : %s"
 
-#. TRANS: Subject of notification mail for new posting email address
-#: lib/mail.php:304
+#. TRANS: Subject of notification mail for new posting email address.
+#. TRANS: %s is the StatusNet sitename.
+#: lib/mail.php:315
 #, php-format
 msgid "New email address for posting to %s"
 msgstr "Nouvelle adresse courriel pour poster dans %s"
 
-#. TRANS: Body of notification mail for new posting email address
-#: lib/mail.php:308
+#. TRANS: Body of notification mail for new posting email address.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send
+#. TRANS: to to post by e-mail, %3$s is a URL to more instructions.
+#: lib/mail.php:321
 #, php-format
 msgid ""
 "You have a new posting address on %1$s.\n"
@@ -6675,43 +8068,48 @@ msgid ""
 "More email instructions at %3$s.\n"
 "\n"
 "Faithfully yours,\n"
-"%4$s"
+"%1$s"
 msgstr ""
 "Une nouvelle adresse vous a été attribuée pour poster vos avis sur %1$s.\n"
 "\n"
-"Écrivez à %2$s pour poster un nouvel avis.\n"
+"Adressez vos courriels à %2$s pour poster de nouveaux avis.\n"
 "\n"
-"Plus d’info : %3$s.\n"
+"Davantage d’instructions sur les courriels sont sur %3$s.\n"
 "\n"
 "Cordialement,\n"
-"%4$s"
+"%1$s"
 
-#. TRANS: Subject line for SMS-by-email notification messages
-#: lib/mail.php:433
+#. TRANS: Subject line for SMS-by-email notification messages.
+#. TRANS: %s is the posting user's nickname.
+#: lib/mail.php:442
 #, php-format
 msgid "%s status"
 msgstr "Statut de %s"
 
-#. TRANS: Subject line for SMS-by-email address confirmation message
-#: lib/mail.php:460
+#. TRANS: Subject line for SMS-by-email address confirmation message.
+#: lib/mail.php:468
 msgid "SMS confirmation"
 msgstr "Confirmation SMS"
 
-#. TRANS: Main body heading for SMS-by-email address confirmation message
-#: lib/mail.php:463
+#. TRANS: Main body heading for SMS-by-email address confirmation message.
+#. TRANS: %s is the addressed user's nickname.
+#: lib/mail.php:472
 #, php-format
 msgid "%s: confirm you own this phone number with this code:"
 msgstr ""
 "%s : confirmez que vous possédez ce numéro de téléphone grâce à ce code :"
 
-#. TRANS: Subject for 'nudge' notification email
-#: lib/mail.php:484
+#. TRANS: Subject for 'nudge' notification email.
+#. TRANS: %s is the nudging user.
+#: lib/mail.php:493
 #, php-format
 msgid "You've been nudged by %s"
 msgstr "Vous avez reçu un clin d’œil de %s"
 
-#. TRANS: Body for 'nudge' notification email
-#: lib/mail.php:489
+#. TRANS: Body for 'nudge' notification email.
+#. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname,
+#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename.
+#: lib/mail.php:500
 #, php-format
 msgid ""
 "%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -6738,14 +8136,18 @@ msgstr ""
 "Bien à vous,\n"
 "%4$s\n"
 
-#. TRANS: Subject for direct-message notification email
-#: lib/mail.php:536
+#. TRANS: Subject for direct-message notification email.
+#. TRANS: %s is the sending user's nickname.
+#: lib/mail.php:547
 #, php-format
 msgid "New private message from %s"
 msgstr "Nouveau message personnel de %s"
 
-#. TRANS: Body for direct-message notification email
-#: lib/mail.php:541
+#. TRANS: Body for direct-message notification email.
+#. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname,
+#. TRANS: %3$s is the message content, %4$s a URL to the message,
+#. TRANS: %5$s is the StatusNet sitename.
+#: lib/mail.php:555
 #, php-format
 msgid ""
 "%1$s (%2$s) sent you a private message:\n"
@@ -6778,14 +8180,19 @@ msgstr ""
 "Bien à vous,\n"
 "%5$s\n"
 
-#. TRANS: Subject for favorite notification email
-#: lib/mail.php:589
+#. TRANS: Subject for favorite notification e-mail.
+#. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname.
+#: lib/mail.php:607
 #, php-format
-msgid "%s (@%s) added your notice as a favorite"
-msgstr "%s (@%s) a ajouté un de vos avis à ses favoris"
+msgid "%1$s (@%2$s) added your notice as a favorite"
+msgstr "%1$s (@%2$s) a ajouté votre avis à ses favoris"
 
-#. TRANS: Body for favorite notification email
-#: lib/mail.php:592
+#. TRANS: Body for favorite notification e-mail.
+#. TRANS: %1$s is the adding user's long name, $2$s is the date the notice was created,
+#. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text,
+#. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename,
+#. TRANS: %7$s is the adding user's nickname.
+#: lib/mail.php:614
 #, php-format
 msgid ""
 "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -6824,7 +8231,7 @@ msgstr ""
 "%6$s\n"
 
 #. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
-#: lib/mail.php:651
+#: lib/mail.php:672
 #, php-format
 msgid ""
 "The full conversation can be read here:\n"
@@ -6835,13 +8242,20 @@ msgstr ""
 "\n"
 "%s"
 
-#: lib/mail.php:657
+#. TRANS: E-mail subject for notice notification.
+#. TRANS: %1$s is the sending user's long name, %2$s is the adding user's nickname.
+#: lib/mail.php:680
 #, php-format
-msgid "%s (@%s) sent a notice to your attention"
-msgstr "%s (@%s) vous a envoyé un avis"
+msgid "%1$s (@%2$s) sent a notice to your attention"
+msgstr "%1$s (@%2$s) a envoyé un avis à votre attention"
 
 #. TRANS: Body of @-reply notification e-mail.
-#: lib/mail.php:660
+#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename,
+#. TRANS: %3$s is a URL to the notice, %4$s is the notice text,
+#. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty),
+#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user,
+#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname.
+#: lib/mail.php:688
 #, php-format
 msgid ""
 "%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6904,7 +8318,7 @@ msgstr ""
 "pour démarrer des conversations avec d’autres utilisateurs. Ceux-ci peuvent "
 "vous envoyer des messages destinés à vous seul(e)."
 
-#: lib/mailbox.php:228 lib/noticelist.php:506
+#: lib/mailbox.php:228 lib/noticelist.php:521
 msgid "from"
 msgstr "de"
 
@@ -6924,25 +8338,25 @@ msgstr "Désolé, ceci n’est pas votre adresse de courriel entrant."
 msgid "Sorry, no incoming email allowed."
 msgstr "Désolé, la réception de courriels n’est pas permise."
 
-#: lib/mailhandler.php:228
+#: lib/mailhandler.php:229
 #, php-format
 msgid "Unsupported message type: %s"
 msgstr "Type de message non supporté : %s"
 
 #. TRANS: Client exception thrown when a database error was thrown during a file upload operation.
-#: lib/mediafile.php:99 lib/mediafile.php:125
+#: lib/mediafile.php:102 lib/mediafile.php:174
 msgid "There was a database error while saving your file. Please try again."
 msgstr ""
 "Une erreur de base de données s’est produite pendant la sauvegarde de votre "
 "fichier. Veuillez réessayer."
 
 #. TRANS: Client exception thrown when an uploaded file is larger than set in php.ini.
-#: lib/mediafile.php:145
+#: lib/mediafile.php:194
 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
 msgstr "Le fichier importé dépasse le réglage upload_max_filesize de php.ini."
 
 #. TRANS: Client exception.
-#: lib/mediafile.php:151
+#: lib/mediafile.php:200
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form."
@@ -6951,46 +8365,46 @@ msgstr ""
 "le formulaire HTML."
 
 #. TRANS: Client exception.
-#: lib/mediafile.php:157
+#: lib/mediafile.php:206
 msgid "The uploaded file was only partially uploaded."
 msgstr "Le fichier n’a été que partiellement importé."
 
 #. TRANS: Client exception thrown when a temporary folder is not present to store a file upload.
-#: lib/mediafile.php:165
+#: lib/mediafile.php:214
 msgid "Missing a temporary folder."
 msgstr "Un dossier temporaire est manquant."
 
 #. TRANS: Client exception thrown when writing to disk is not possible during a file upload operation.
-#: lib/mediafile.php:169
+#: lib/mediafile.php:218
 msgid "Failed to write file to disk."
 msgstr "Impossible d’écrire sur le disque."
 
 #. TRANS: Client exception thrown when a file upload operation has been stopped by an extension.
-#: lib/mediafile.php:173
+#: lib/mediafile.php:222
 msgid "File upload stopped by extension."
 msgstr "Import de fichier stoppé par une extension."
 
 #. TRANS: Client exception thrown when a file upload operation would cause a user to exceed a set quota.
-#: lib/mediafile.php:189 lib/mediafile.php:232
+#: lib/mediafile.php:238 lib/mediafile.php:281
 msgid "File exceeds user's quota."
 msgstr "Le fichier dépasse le quota de l’utilisateur."
 
 #. TRANS: Client exception thrown when a file upload operation fails because the file could
 #. TRANS: not be moved from the temporary folder to the permanent file location.
-#: lib/mediafile.php:209 lib/mediafile.php:251
+#: lib/mediafile.php:258 lib/mediafile.php:300
 msgid "File could not be moved to destination directory."
 msgstr "Le fichier n’a pas pu être déplacé dans le dossier de destination."
 
 #. TRANS: Client exception thrown when a file upload operation has been stopped because the MIME
 #. TRANS: type of the uploaded file could not be determined.
-#: lib/mediafile.php:216 lib/mediafile.php:257
+#: lib/mediafile.php:265 lib/mediafile.php:306
 msgid "Could not determine file's MIME type."
 msgstr "Impossible de déterminer le type MIME du fichier."
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %1$s is the file type that was denied, %2$s is the application part of
 #. TRANS: the MIME type that was denied.
-#: lib/mediafile.php:340
+#: lib/mediafile.php:394
 #, php-format
 msgid ""
 "\"%1$s\" is not a supported file type on this server. Try using another %2$s "
@@ -7001,7 +8415,7 @@ msgstr ""
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %s is the file type that was denied.
-#: lib/mediafile.php:345
+#: lib/mediafile.php:399
 #, php-format
 msgid "\"%s\" is not a supported file type on this server."
 msgstr "« %s » n’est pas un type de fichier supporté sur ce serveur."
@@ -7010,19 +8424,49 @@ msgstr "« %s » n’est pas un type de fichier supporté sur ce serveur."
 msgid "Send a direct notice"
 msgstr "Envoyer un message direct"
 
-#: lib/messageform.php:146
+#. TRANS Label entry in drop-down selection box in direct-message inbox/outbox. This is the default entry in the drop-down box, doubling as instructions and a brake against accidental submissions with the first user in the list.
+#: lib/messageform.php:137
+msgid "Select recipient:"
+msgstr "Sélectionner le destinataire :"
+
+#. TRANS Entry in drop-down selection box in direct-message inbox/outbox when no one is available to message.
+#: lib/messageform.php:150
+msgid "No mutual subscribers."
+msgstr "Aucun abonné réciproque."
+
+#: lib/messageform.php:153
 msgid "To"
 msgstr "À"
 
-#: lib/messageform.php:159 lib/noticeform.php:186
+#: lib/messageform.php:166 lib/noticeform.php:186
 msgid "Available characters"
 msgstr "Caractères restants"
 
-#: lib/messageform.php:178 lib/noticeform.php:237
+#: lib/messageform.php:185 lib/noticeform.php:237
 msgctxt "Send button for sending notice"
 msgid "Send"
 msgstr "Envoyer"
 
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:163
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr ""
+"Les pseudos ne peuvent contenir que des caractères minuscules et des "
+"chiffres, sans espaces."
+
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:176
+msgid "Nickname cannot be empty."
+msgstr "Le pseudonyme ne peut pas être vide."
+
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:189
+#, php-format
+msgid "Nickname cannot be more than %d character long."
+msgid_plural "Nickname cannot be more than %d characters long."
+msgstr[0] "Le pseudonyme ne peut pas contenir plus de %d caractère."
+msgstr[1] "Le pseudonyme ne peut pas contenir plus de %d caractères."
+
 #: lib/noticeform.php:160
 msgid "Send a notice"
 msgstr "Envoyer un avis"
@@ -7057,55 +8501,55 @@ msgstr ""
 "Veuillez réessayer plus tard."
 
 #. TRANS: Used in coordinates as abbreviation of north
-#: lib/noticelist.php:436
+#: lib/noticelist.php:451
 msgid "N"
 msgstr "N"
 
 #. TRANS: Used in coordinates as abbreviation of south
-#: lib/noticelist.php:438
+#: lib/noticelist.php:453
 msgid "S"
 msgstr "S"
 
 #. TRANS: Used in coordinates as abbreviation of east
-#: lib/noticelist.php:440
+#: lib/noticelist.php:455
 msgid "E"
 msgstr "E"
 
 #. TRANS: Used in coordinates as abbreviation of west
-#: lib/noticelist.php:442
+#: lib/noticelist.php:457
 msgid "W"
 msgstr "O"
 
-#: lib/noticelist.php:444
+#: lib/noticelist.php:459
 #, php-format
 msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
 msgstr "%1$u° %2$u' %3$u\" %4$s %5$u° %6$u' %7$u\" %8$s"
 
-#: lib/noticelist.php:453
+#: lib/noticelist.php:468
 msgid "at"
 msgstr "chez"
 
-#: lib/noticelist.php:502
+#: lib/noticelist.php:517
 msgid "web"
 msgstr "web"
 
-#: lib/noticelist.php:568
+#: lib/noticelist.php:583
 msgid "in context"
 msgstr "dans le contexte"
 
-#: lib/noticelist.php:603
+#: lib/noticelist.php:618
 msgid "Repeated by"
 msgstr "Repris par"
 
-#: lib/noticelist.php:630
+#: lib/noticelist.php:645
 msgid "Reply to this notice"
 msgstr "Répondre à cet avis"
 
-#: lib/noticelist.php:631
+#: lib/noticelist.php:646
 msgid "Reply"
 msgstr "Répondre"
 
-#: lib/noticelist.php:675
+#: lib/noticelist.php:690
 msgid "Notice repeated"
 msgstr "Avis repris"
 
@@ -7121,52 +8565,52 @@ msgstr "Clin d’œil"
 msgid "Send a nudge to this user"
 msgstr "Envoyer un clin d’œil à cet utilisateur"
 
-#: lib/oauthstore.php:283
+#: lib/oauthstore.php:294
 msgid "Error inserting new profile."
 msgstr "Erreur lors de l’insertion du nouveau profil."
 
-#: lib/oauthstore.php:291
+#: lib/oauthstore.php:302
 msgid "Error inserting avatar."
 msgstr "Erreur lors de l’insertion de l’avatar."
 
-#: lib/oauthstore.php:311
+#: lib/oauthstore.php:322
 msgid "Error inserting remote profile."
 msgstr "Erreur lors de l’insertion du profil distant."
 
 #. TRANS: Exception thrown when a notice is denied because it has been sent before.
-#: lib/oauthstore.php:346
+#: lib/oauthstore.php:362
 msgid "Duplicate notice."
 msgstr "Avis en doublon."
 
-#: lib/oauthstore.php:491
+#: lib/oauthstore.php:507
 msgid "Couldn't insert new subscription."
 msgstr "Impossible d’insérer un nouvel abonnement."
 
-#: lib/personalgroupnav.php:99
+#: lib/personalgroupnav.php:102
 msgid "Personal"
 msgstr "Personnel"
 
-#: lib/personalgroupnav.php:104
+#: lib/personalgroupnav.php:107
 msgid "Replies"
 msgstr "Réponses"
 
-#: lib/personalgroupnav.php:114
+#: lib/personalgroupnav.php:117
 msgid "Favorites"
 msgstr "Favoris"
 
-#: lib/personalgroupnav.php:125
+#: lib/personalgroupnav.php:128
 msgid "Inbox"
 msgstr "Boîte de réception"
 
-#: lib/personalgroupnav.php:126
+#: lib/personalgroupnav.php:129
 msgid "Your incoming messages"
 msgstr "Vos messages reçus"
 
-#: lib/personalgroupnav.php:130
+#: lib/personalgroupnav.php:133
 msgid "Outbox"
 msgstr "Boîte d’envoi"
 
-#: lib/personalgroupnav.php:131
+#: lib/personalgroupnav.php:134
 msgid "Your sent messages"
 msgstr "Vos messages envoyés"
 
@@ -7176,7 +8620,7 @@ msgid "Tags in %s's notices"
 msgstr "Marques dans les avis de %s"
 
 #. TRANS: Displayed as version information for a plugin if no version information was found.
-#: lib/plugin.php:116
+#: lib/plugin.php:121
 msgid "Unknown"
 msgstr "Inconnu"
 
@@ -7258,9 +8702,10 @@ msgstr "Reprendre cet avis"
 msgid "Revoke the \"%s\" role from this user"
 msgstr "Révoquer le rôle « %s » de cet utilisateur"
 
-#: lib/router.php:711
-msgid "No single user defined for single-user mode."
-msgstr "Aucun utilisateur unique défini pour le mode mono-utilisateur."
+#. TRANS: Client error on action trying to visit a non-existing page.
+#: lib/router.php:957
+msgid "Page not found."
+msgstr "Page non trouvée."
 
 #: lib/sandboxform.php:67
 msgid "Sandbox"
@@ -7271,16 +8716,17 @@ msgid "Sandbox this user"
 msgstr "Mettre cet utilisateur dans un bac à sable"
 
 #. TRANS: Fieldset legend for the search form.
-#: lib/searchaction.php:121
+#: lib/searchaction.php:120
 msgid "Search site"
 msgstr "Rechercher sur le site"
 
 #. TRANS: Used as a field label for the field where one or more keywords
 #. TRANS: for searching can be entered.
-#: lib/searchaction.php:129
+#: lib/searchaction.php:128
 msgid "Keyword(s)"
 msgstr "Mot(s) clef(s)"
 
+#. TRANS: Button text for searching site.
 #: lib/searchaction.php:130
 msgctxt "BUTTON"
 msgid "Search"
@@ -7361,6 +8807,11 @@ msgstr "Nuage de marques pour une personne"
 msgid "None"
 msgstr "Aucun"
 
+#. TRANS: Server exception displayed if a theme name was invalid.
+#: lib/theme.php:74
+msgid "Invalid theme name."
+msgstr "Nom de thème invalide."
+
 #: lib/themeuploader.php:50
 msgid "This server cannot handle theme uploads without ZIP support."
 msgstr ""
@@ -7372,8 +8823,8 @@ msgid "The theme file is missing or the upload failed."
 msgstr "Le fichier de thème est manquant ou le téléversement a échoué."
 
 #: lib/themeuploader.php:91 lib/themeuploader.php:102
-#: lib/themeuploader.php:278 lib/themeuploader.php:282
-#: lib/themeuploader.php:290 lib/themeuploader.php:297
+#: lib/themeuploader.php:279 lib/themeuploader.php:283
+#: lib/themeuploader.php:291 lib/themeuploader.php:298
 msgid "Failed saving theme."
 msgstr "L’enregistrement du thème a échoué."
 
@@ -7383,16 +8834,21 @@ msgstr "Thème invalide : mauvaise arborescence."
 
 #: lib/themeuploader.php:166
 #, php-format
-msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
-msgstr ""
-"Le thème importé est trop volumineux. Non compressé, il doit occuper moins "
-"de %d octets."
-
-#: lib/themeuploader.php:178
+msgid "Uploaded theme is too large; must be less than %d byte uncompressed."
+msgid_plural ""
+"Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr[0] ""
+"Le thème téléversé est trop volumineux ; il doit occuper moins de %d octet "
+"une fois décompressé."
+msgstr[1] ""
+"Le thème téléversé est trop volumineux ; il doit occuper moins de %d octets "
+"une fois décompressé."
+
+#: lib/themeuploader.php:179
 msgid "Invalid theme archive: missing file css/display.css"
 msgstr "Archive de thème invalide : fichier css/display.css manquant"
 
-#: lib/themeuploader.php:218
+#: lib/themeuploader.php:219
 msgid ""
 "Theme contains invalid file or folder name. Stick with ASCII letters, "
 "digits, underscore, and minus sign."
@@ -7400,18 +8856,18 @@ msgstr ""
 "Le thème contient un nom de fichier ou de dossier invalide. Limitez-vous aux "
 "lettres ASCII et aux chiffres, caractère de soulignement et signe moins."
 
-#: lib/themeuploader.php:224
+#: lib/themeuploader.php:225
 msgid "Theme contains unsafe file extension names; may be unsafe."
 msgstr ""
 "Ce thème contient un nom d'extension de ficher dangereux; peut être "
 "dangereux."
 
-#: lib/themeuploader.php:241
+#: lib/themeuploader.php:242
 #, php-format
 msgid "Theme contains file of type '.%s', which is not allowed."
 msgstr "Le thème contient un fichier de type « .%s », qui n'est pas autorisé."
 
-#: lib/themeuploader.php:259
+#: lib/themeuploader.php:260
 msgid "Error opening theme archive."
 msgstr "Erreur lors de l’ouverture de l’archive du thème."
 
@@ -7419,6 +8875,12 @@ msgstr "Erreur lors de l’ouverture de l’archive du thème."
 msgid "Top posters"
 msgstr "Utilisateurs les plus actifs"
 
+#. TRANS: Title for the form to unblock a user.
+#: lib/unblockform.php:67
+msgctxt "TITLE"
+msgid "Unblock"
+msgstr "Débloquer"
+
 #: lib/unsandboxform.php:69
 msgid "Unsandbox"
 msgstr "Sortir du bac à sable"
@@ -7443,136 +8905,179 @@ msgstr "Ne plus suivre cet utilisateur"
 msgid "Unsubscribe"
 msgstr "Désabonnement"
 
-#: lib/userprofile.php:117
+#. TRANS: Exception text shown when no profile can be found for a user.
+#. TRANS: %1$s is a user nickname, $2$d is a user ID (number).
+#: lib/usernoprofileexception.php:60
+#, php-format
+msgid "User %1$s (%2$d) has no profile record."
+msgstr "L’utilisateur %1$s (%2$d) n’a pas de profil."
+
+#: lib/userprofile.php:119
 msgid "Edit Avatar"
 msgstr "Modifier l’avatar"
 
-#: lib/userprofile.php:234 lib/userprofile.php:248
+#: lib/userprofile.php:236 lib/userprofile.php:250
 msgid "User actions"
 msgstr "Actions de l’utilisateur"
 
-#: lib/userprofile.php:237
+#: lib/userprofile.php:239
 msgid "User deletion in progress..."
 msgstr "Suppression de l'utilisateur en cours..."
 
-#: lib/userprofile.php:263
+#: lib/userprofile.php:265
 msgid "Edit profile settings"
 msgstr "Modifier les paramètres du profil"
 
-#: lib/userprofile.php:264
+#: lib/userprofile.php:266
 msgid "Edit"
 msgstr "Modifier"
 
-#: lib/userprofile.php:287
+#: lib/userprofile.php:289
 msgid "Send a direct message to this user"
 msgstr "Envoyer un message à cet utilisateur"
 
-#: lib/userprofile.php:288
+#: lib/userprofile.php:290
 msgid "Message"
 msgstr "Message"
 
-#: lib/userprofile.php:326
+#: lib/userprofile.php:331
 msgid "Moderate"
 msgstr "Modérer"
 
-#: lib/userprofile.php:364
+#: lib/userprofile.php:369
 msgid "User role"
 msgstr "Rôle de l'utilisateur"
 
-#: lib/userprofile.php:366
+#: lib/userprofile.php:371
 msgctxt "role"
 msgid "Administrator"
 msgstr "Administrateur"
 
-#: lib/userprofile.php:367
+#: lib/userprofile.php:372
 msgctxt "role"
 msgid "Moderator"
 msgstr "Modérateur"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1126
+#: lib/util.php:1306
 msgid "a few seconds ago"
 msgstr "il y a quelques secondes"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1129
+#: lib/util.php:1309
 msgid "about a minute ago"
 msgstr "il y a 1 minute"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1133
+#: lib/util.php:1313
 #, php-format
 msgid "about one minute ago"
 msgid_plural "about %d minutes ago"
-msgstr[0] "une minute"
-msgstr[1] "%d minutes"
+msgstr[0] "il y a environ une minute"
+msgstr[1] "il y a environ %d minutes"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1136
+#: lib/util.php:1316
 msgid "about an hour ago"
 msgstr "il y a 1 heure"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1140
+#: lib/util.php:1320
 #, php-format
 msgid "about one hour ago"
 msgid_plural "about %d hours ago"
-msgstr[0] "une heure"
-msgstr[1] "%d heures"
+msgstr[0] "il y a environ une heure"
+msgstr[1] "il y a environ %d heures"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1143
+#: lib/util.php:1323
 msgid "about a day ago"
 msgstr "il y a 1 jour"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1147
+#: lib/util.php:1327
 #, php-format
 msgid "about one day ago"
 msgid_plural "about %d days ago"
-msgstr[0] "un jour"
-msgstr[1] "%d jours"
+msgstr[0] "il y a environ un jour"
+msgstr[1] "il y a environ %d jours"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1150
+#: lib/util.php:1330
 msgid "about a month ago"
 msgstr "il y a 1 mois"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1154
+#: lib/util.php:1334
 #, php-format
 msgid "about one month ago"
 msgid_plural "about %d months ago"
-msgstr[0] "un"
-msgstr[1] "%d"
+msgstr[0] "il y a environ un mois"
+msgstr[1] "il y a environ %d mois"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1157
+#: lib/util.php:1337
 msgid "about a year ago"
 msgstr "il y a environ 1 an"
 
-#: lib/webcolor.php:82
+#: lib/webcolor.php:80
 #, php-format
 msgid "%s is not a valid color!"
 msgstr "&s n’est pas une couleur valide !"
 
-#: lib/webcolor.php:123
+#. TRANS: Validation error for a web colour.
+#. TRANS: %s is the provided (invalid) text for colour.
+#: lib/webcolor.php:120
 #, php-format
-msgid "%s is not a valid color! Use 3 or 6 hex chars."
+msgid "%s is not a valid color! Use 3 or 6 hex characters."
 msgstr ""
 "%s n’est pas une couleur valide ! Utilisez 3 ou 6 caractères hexadécimaux."
 
-#: scripts/restoreuser.php:82
+#. TRANS: %s is the URL to the StatusNet site's Instant Messaging settings.
+#: lib/xmppmanager.php:287
 #, php-format
-msgid "Backup file for user %s (%s)"
+msgid "Unknown user. Go to %s to add your address to your account"
 msgstr ""
+"Utilisateur inconnu. Aller à %s pour ajouter votre adresse à votre compte."
 
-#: scripts/restoreuser.php:88
-#, fuzzy
+#. TRANS: Response to XMPP source when it sent too long a message.
+#. TRANS: %1$d the maximum number of allowed characters (used for plural), %2$d is the sent number.
+#: lib/xmppmanager.php:406
+#, php-format
+msgid "Message too long. Maximum is %1$d character, you sent %2$d."
+msgid_plural "Message too long. Maximum is %1$d characters, you sent %2$d."
+msgstr[0] ""
+"Message trop long ! La taille maximale est de %1$d caractère ; vous en avez "
+"envoyé %2$d."
+msgstr[1] ""
+"Message trop long ! La taille maximale est de %1$d caractères ; vous en avez "
+"envoyé %2$d."
+
+#. TRANS: Exception.
+#: lib/xrd.php:64
+msgid "Invalid XML."
+msgstr "XML invalide."
+
+#. TRANS: Exception.
+#: lib/xrd.php:69
+msgid "Invalid XML, missing XRD root."
+msgstr "XML invalide, racine XRD manquante."
+
+#. TRANS: Commandline script output. %s is the filename that contains a backup for a user.
+#: scripts/restoreuser.php:61
+#, php-format
+msgid "Getting backup from file '%s'."
+msgstr "Obtention de la sauvegarde depuis le fichier « %s »."
+
+#. TRANS: Commandline script output.
+#: scripts/restoreuser.php:91
 msgid "No user specified; using backup user."
-msgstr "Aucun identifiant d’utilisateur n’a été spécifié."
+msgstr "Aucun utilisateur spécifié ; utilisation de l’utilisateur de secours."
 
-#: scripts/restoreuser.php:94
+#. TRANS: Commandline script output. %d is the number of entries in the activity stream in backup; used for plural.
+#: scripts/restoreuser.php:98
 #, php-format
-msgid "%d entries in backup."
-msgstr ""
+msgid "%d entry in backup."
+msgid_plural "%d entries in backup."
+msgstr[0] "%d entrée dans la sauvegarde."
+msgstr[1] "%d entrées dans la sauvegarde."