]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - locale/zh_CN/LC_MESSAGES/statusnet.po
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
[quix0rs-gnu-social.git] / locale / zh_CN / LC_MESSAGES / statusnet.po
index 9699f1b2e2d0869419f20dd1a0d0d0aa2892b4a3..06e27c4ae4adbc19151fc0234162559f2bc30250 100644 (file)
@@ -14,155 +14,193 @@ msgid ""
 msgstr ""
 "Project-Id-Version: StatusNet - Core\n"
 "Report-Msgid-Bugs-To: \n"
 msgstr ""
 "Project-Id-Version: StatusNet - Core\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 22:30+0000\n"
-"PO-Revision-Date: 2010-10-04 22:32:46+0000\n"
+"POT-Creation-Date: 2010-11-30 16:54+0000\n"
+"PO-Revision-Date: 2010-11-30 16:56:36+0000\n"
 "Language-Team: Simplified Chinese <http://translatewiki.net/wiki/Portal:zh-"
 "hans>\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language-Team: Simplified Chinese <http://translatewiki.net/wiki/Portal:zh-"
 "hans>\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r74276); Translate extension (2010-09-17)\n"
+"X-Generator: MediaWiki 1.17alpha (r77474); Translate extension (2010-09-17)\n"
 "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
 "X-Language-Code: zh-hans\n"
 "X-Message-Group: #out-statusnet-core\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
 "X-Language-Code: zh-hans\n"
 "X-Message-Group: #out-statusnet-core\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-POT-Import-Date: 2010-10-03 20:54:28+0000\n"
+"X-POT-Import-Date: 2010-11-29 19:47:15+0000\n"
 
 
-#. TRANS: Page title
+#. TRANS: Page title for Access admin panel that allows configuring site access.
 #. TRANS: Menu item for site administration
 #. 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 "访问"
 
 msgid "Access"
 msgstr "访问"
 
-#. TRANS: Page notice
-#: actions/accessadminpanel.php:67
+#. TRANS: Page notice.
+#: actions/accessadminpanel.php:64
 msgid "Site access settings"
 msgstr "网站访问设置"
 
 #. TRANS: Form legend for registration form.
 msgid "Site access settings"
 msgstr "网站访问设置"
 
 #. TRANS: Form legend for registration form.
-#: actions/accessadminpanel.php:161
+#: actions/accessadminpanel.php:151
 msgid "Registration"
 msgstr "注册"
 
 msgid "Registration"
 msgstr "注册"
 
-#. 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 "要禁止匿名用户(未登录)浏览网站吗?"
 
 #. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
 msgid "Prohibit anonymous users (not logged in) from viewing site?"
 msgstr "要禁止匿名用户(未登录)浏览网站吗?"
 
 #. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
-#: actions/accessadminpanel.php:167
+#: actions/accessadminpanel.php:157
 msgctxt "LABEL"
 msgid "Private"
 msgstr "非公开"
 
 msgctxt "LABEL"
 msgid "Private"
 msgstr "非公开"
 
-#. 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 "只允许邀请注册。"
 
 #. TRANS: Checkbox label for configuring site as invite only.
 msgid "Make registration invitation only."
 msgstr "只允许邀请注册。"
 
 #. TRANS: Checkbox label for configuring site as invite only.
-#: actions/accessadminpanel.php:176
+#: actions/accessadminpanel.php:166
 msgid "Invite only"
 msgstr "邀请制"
 
 msgid "Invite only"
 msgstr "邀请制"
 
-#. 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 "禁止新用户注册"
 
 #. TRANS: Checkbox label for disabling new user registrations.
 msgid "Disable new registrations."
 msgstr "禁止新用户注册"
 
 #. TRANS: Checkbox label for disabling new user registrations.
-#: actions/accessadminpanel.php:185
+#: actions/accessadminpanel.php:175
 msgid "Closed"
 msgstr "封闭(不允许新用户注册)"
 
 msgid "Closed"
 msgstr "封闭(不允许新用户注册)"
 
-#. 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 "保存访问设置"
 
 msgid "Save access settings"
 msgstr "保存访问设置"
 
+#. 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 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: 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.
 #. 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:355
+#. TRANS: Button text on profile design page to save settings.
+#: actions/accessadminpanel.php:193 actions/emailsettings.php:232
+#: 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:246 actions/useradminpanel.php:298
+#: lib/applicationeditform.php:355 lib/designsettings.php:270
+#: lib/groupeditform.php:207
 msgctxt "BUTTON"
 msgid "Save"
 msgstr "保存"
 
 msgctxt "BUTTON"
 msgid "Save"
 msgstr "保存"
 
+#. 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 "没有这个页面。"
 
 #. 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 "没有这个页面。"
 
+#. 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.
 #. 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:495 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 "没有这个用户。"
 
 #. TRANS: Page title. %1$s is user nickname, %2$d is page number
 #: lib/mailbox.php:82 lib/profileaction.php:77
 msgid "No such user."
 msgstr "没有这个用户。"
 
 #. 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 和好友,第%2$d页"
 
 #, php-format
 msgid "%1$s and friends, page %2$d"
 msgstr "%1$s 和好友,第%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.
 #. 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 和好友们"
 
 #, php-format
 msgid "%s and friends"
 msgstr "%s 和好友们"
 
-#. 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 "%s 好友的聚合(RSS 1.0)"
 
 #, php-format
 msgid "Feed for friends of %s (RSS 1.0)"
 msgstr "%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 "%s 好友的聚合(RSS 2.0)"
 
 #, php-format
 msgid "Feed for friends of %s (RSS 2.0)"
 msgstr "%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 "%s 好友的聚合(Atom)"
 
 #, php-format
 msgid "Feed for friends of %s (Atom)"
 msgstr "%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."
 msgstr "这是 %s 和好友的时间线,但是没有任何人发布内容。"
 
 #, php-format
 msgid ""
 "This is the timeline for %s and friends but no one has posted anything yet."
 msgstr "这是 %s 和好友的时间线,但是没有任何人发布内容。"
 
-#: 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 "
 #, php-format
 msgid ""
 "Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -170,8 +208,9 @@ msgid ""
 msgstr ""
 "尝试关注更多的人、[加入一个小组](%%action.groups%%) 或者自己发一些东西。"
 
 msgstr ""
 "尝试关注更多的人、[加入一个小组](%%action.groups%%) 或者自己发一些东西。"
 
-#. 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 "
 #, php-format
 msgid ""
 "You can try to [nudge %1$s](../%2$s) from their profile or [post something "
@@ -180,7 +219,11 @@ msgstr ""
 "你可以试着到他们的资料页 [呼叫%1$s](../%2$s) 他们或者 [给他们发消息](%%%%"
 "action.newnotice%%%%?status_textarea=%3$s)。"
 
 "你可以试着到他们的资料页 [呼叫%1$s](../%2$s) 他们或者 [给他们发消息](%%%%"
 "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 "
 #, php-format
 msgid ""
 "Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
@@ -188,411 +231,586 @@ msgid ""
 msgstr ""
 "现在就[注册一个帐号](%%%%action.register%%%%)并呼叫或者发一条消息给%s。"
 
 msgstr ""
 "现在就[注册一个帐号](%%%%action.register%%%%)并呼叫或者发一条消息给%s。"
 
-#. 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 "你和好友们"
 
 #. 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.
 msgid "You and friends"
 msgstr "你和好友们"
 
 #. 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 "%2$s上%1$s和好友们的更新!"
 
 #, php-format
 msgid "Updates from %1$s and friends on %2$s!"
 msgstr "%2$s上%1$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 "API方法没有找到。"
 
 #. 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.
 msgid "API method not found."
 msgstr "API方法没有找到。"
 
 #. 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 "此方法接受POST请求。"
 
 msgid "This method requires a POST."
 msgstr "此方法接受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."
 msgstr ""
 "你必须指定一个名为'device'的参数,值可以是以下中的一个:sms, im, none。"
 
 msgid ""
 "You must specify a parameter named 'device' with a value of one of: sms, im, "
 "none."
 msgstr ""
 "你必须指定一个名为'device'的参数,值可以是以下中的一个: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 "无法更新用户。"
 
 msgid "Could not update user."
 msgstr "无法更新用户。"
 
-#: 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 "用户没有个人信息。"
 
 #: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
 #: lib/profileaction.php:84
 msgid "User has no profile."
 msgstr "用户没有个人信息。"
 
-#: 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 "无法保存个人信息。"
 
 msgid "Could not save profile."
 msgstr "无法保存个人信息。"
 
-#: 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 ""
 #, 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."
 "The server was unable to handle that much POST data (%s bytes) due to its "
 "current configuration."
-msgstr "服务器当前的设置无法处理这么多的 POST 数据(%s bytes)。"
-
-#: actions/apiaccountupdateprofilebackgroundimage.php:137
-#: actions/apiaccountupdateprofilebackgroundimage.php:147
-#: actions/apiaccountupdateprofilecolors.php:165
-#: actions/apiaccountupdateprofilecolors.php:175
+msgstr[0] "服务器当前的设置无法处理这么多的 POST 数据(%s bytes)。"
+
+#. 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 "无法保存你的外观设置。"
 
 #: 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 "无法保存你的外观设置。"
 
-#: 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 "无法更新你的外观。"
 
 msgid "Could not update your design."
 msgstr "无法更新你的外观。"
 
-#: actions/apiblockcreate.php:106
+#: actions/apiatomservice.php:85
+msgid "Main"
+msgstr ""
+
+#. 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:92 actions/grouprss.php:139
+#: actions/userrss.php:94 lib/atomgroupnoticefeed.php:63
+#: lib/atomusernoticefeed.php:68
+#, php-format
+msgid "%s timeline"
+msgstr "%s的时间线"
+
+#. TRANS: Client error displayed when users try to block themselves.
+#: actions/apiblockcreate.php:104
 msgid "You cannot block yourself!"
 msgstr "你不能屏蔽自己!"
 
 msgid "You cannot block yourself!"
 msgstr "你不能屏蔽自己!"
 
-#: actions/apiblockcreate.php:127
+#. TRANS: Server error displayed when blocking a user has failed.
+#: actions/apiblockcreate.php:126
 msgid "Block user failed."
 msgstr "屏蔽用户失败。"
 
 msgid "Block user failed."
 msgstr "屏蔽用户失败。"
 
-#: actions/apiblockdestroy.php:115
+#. TRANS: Server error displayed when unblocking a user has failed.
+#: actions/apiblockdestroy.php:113
 msgid "Unblock user failed."
 msgstr "取消屏蔽用户失败。"
 
 msgid "Unblock user failed."
 msgstr "取消屏蔽用户失败。"
 
-#: actions/apidirectmessage.php:89
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:88
 #, php-format
 msgid "Direct messages from %s"
 msgstr "%s发来的私信"
 
 #, php-format
 msgid "Direct messages from %s"
 msgstr "%s发来的私信"
 
+#. TRANS: Subtitle. %s is a user nickname.
 #: actions/apidirectmessage.php:93
 #, php-format
 msgid "All the direct messages sent from %s"
 msgstr "所有来自%s的私信"
 
 #: actions/apidirectmessage.php:93
 #, php-format
 msgid "All the direct messages sent from %s"
 msgstr "所有来自%s的私信"
 
-#: actions/apidirectmessage.php:101
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:102
 #, php-format
 msgid "Direct messages to %s"
 msgstr "发给%s的私信"
 
 #, php-format
 msgid "Direct messages to %s"
 msgstr "发给%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 "所有发给%s的私信"
 
 #, php-format
 msgid "All the direct messages sent to %s"
 msgstr "所有发给%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 "消息没有正文!"
 
 msgid "No message text!"
 msgstr "消息没有正文!"
 
-#: 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
 #, php-format
-msgid "That's too long. Max message size is %d chars."
-msgstr "太长了。最长的信息长度是%d个字符。"
+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] "太长了。最长的信息长度是%d个字符。"
 
 
+#. TRANS: Client error displayed if a recipient user could not be found (403).
 #: actions/apidirectmessagenew.php:139
 msgid "Recipient user not found."
 msgstr "未找到收件人。"
 
 #: actions/apidirectmessagenew.php:139
 msgid "Recipient user not found."
 msgstr "未找到收件人。"
 
-#: 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 "不能给未成为好友的用户发送私信。"
 
 msgid "Can't send direct messages to users who aren't your friend."
 msgstr "不能给未成为好友的用户发送私信。"
 
-#: 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 "不要向自己发送消息;跟自己悄悄说就得了。"
+
+#. 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 "没有找到此 ID 的消息。"
 
 #: actions/apistatusesdestroy.php:121
 msgid "No status found with that ID."
 msgstr "没有找到此 ID 的消息。"
 
-#: 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 "已收藏此状态。"
 
 msgid "This status is already a favorite."
 msgstr "已收藏此状态。"
 
+#. 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:294
 msgid "Could not create favorite."
 msgstr "无法创建收藏。"
 
 #. TRANS: Error message text shown when a favorite could not be set.
 #: actions/apifavoritecreate.php:132 actions/favor.php:84 lib/command.php:294
 msgid "Could not create favorite."
 msgstr "无法创建收藏。"
 
-#: 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 "此状态未被收藏。"
 
 msgid "That status is not a favorite."
 msgstr "此状态未被收藏。"
 
-#: 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 "无法删除收藏。"
 
 msgid "Could not delete favorite."
 msgstr "无法删除收藏。"
 
-#: 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 "无法关注用户:未找到用户。"
 
 msgid "Could not follow user: profile not found."
 msgstr "无法关注用户:未找到用户。"
 
-#: 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 "无法关注用户:你已经关注了%s。"
 
 #, php-format
 msgid "Could not follow user: %s is already on your list."
 msgstr "无法关注用户:你已经关注了%s。"
 
-#: 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 "无法取消关注用户:未找到用户。"
 
 msgid "Could not unfollow user: User not found."
 msgstr "无法取消关注用户:未找到用户。"
 
+#. TRANS: Client error displayed when trying to unfollow self.
 #: actions/apifriendshipsdestroy.php:121
 msgid "You cannot unfollow yourself."
 msgstr "你不能取消关注自己。"
 
 #: actions/apifriendshipsdestroy.php:121
 msgid "You cannot unfollow yourself."
 msgstr "你不能取消关注自己。"
 
-#: actions/apifriendshipsexists.php:91
-msgid "Two valid IDs or screen_names must be supplied."
+#. 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 "必须提供两个有效的 ID 或用户昵称。"
 
 msgstr "必须提供两个有效的 ID 或用户昵称。"
 
-#: 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 "无法确定源用户。"
 
 msgid "Could not determine source user."
 msgstr "无法确定源用户。"
 
-#: 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 "无法找到目标用户。"
 
 msgid "Could not find target user."
 msgstr "无法找到目标用户。"
 
-#: actions/apigroupcreate.php:168 actions/editgroup.php:186
-#: actions/newgroup.php:126 actions/profilesettings.php:215
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:165 actions/editgroup.php:191
+#: actions/newgroup.php:127 actions/profilesettings.php:243
 #: actions/register.php:212
 msgid "Nickname must have only lowercase letters and numbers and no spaces."
 msgstr "昵称只能使用小写字母和数字且不能使用空格。"
 
 #: actions/register.php:212
 msgid "Nickname must have only lowercase letters and numbers and no spaces."
 msgstr "昵称只能使用小写字母和数字且不能使用空格。"
 
-#: actions/apigroupcreate.php:177 actions/editgroup.php:190
-#: actions/newgroup.php:130 actions/profilesettings.php:238
+#. 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:175 actions/editgroup.php:196
+#: actions/newgroup.php:132 actions/profilesettings.php:277
 #: actions/register.php:215
 msgid "Nickname already in use. Try another one."
 msgstr "昵称已被使用,换一个吧。"
 
 #: actions/register.php:215
 msgid "Nickname already in use. Try another one."
 msgstr "昵称已被使用,换一个吧。"
 
-#: actions/apigroupcreate.php:184 actions/editgroup.php:193
-#: actions/newgroup.php:133 actions/profilesettings.php:218
+#. 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:183 actions/editgroup.php:200
+#: actions/newgroup.php:136 actions/profilesettings.php:247
 #: actions/register.php:217
 msgid "Not a valid nickname."
 msgstr "不是有效的昵称。"
 
 #: actions/register.php:217
 msgid "Not a valid nickname."
 msgstr "不是有效的昵称。"
 
-#: actions/apigroupcreate.php:200 actions/editapplication.php:215
-#: actions/editgroup.php:199 actions/newapplication.php:203
-#: actions/newgroup.php:139 actions/profilesettings.php:222
+#. 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:200 actions/editapplication.php:233
+#: actions/editgroup.php:207 actions/newapplication.php:211
+#: actions/newgroup.php:143 actions/profilesettings.php:252
 #: actions/register.php:224
 msgid "Homepage is not a valid URL."
 msgstr "主页的URL不正确。"
 
 #: actions/register.php:224
 msgid "Homepage is not a valid URL."
 msgstr "主页的URL不正确。"
 
-#: actions/apigroupcreate.php:209 actions/editgroup.php:202
-#: actions/newgroup.php:142 actions/profilesettings.php:225
+#. 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:210 actions/editgroup.php:211
+#: actions/newgroup.php:147 actions/profilesettings.php:256
 #: actions/register.php:227
 #: actions/register.php:227
-msgid "Full name is too long (max 255 chars)."
+msgid "Full name is too long (maximum 255 characters)."
 msgstr "全名过长(不能超过 255 个字符)。"
 
 msgstr "全名过长(不能超过 255 个字符)。"
 
-#: actions/apigroupcreate.php:217 actions/editapplication.php:190
-#: actions/newapplication.php:172
-#, php-format
-msgid "Description is too long (max %d chars)."
-msgstr "描述过长(不能超过%d 个字符)。"
-
-#: 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)."
+#. 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:220 actions/editapplication.php:201
+#: actions/editgroup.php:216 actions/newapplication.php:178
+#: actions/newgroup.php:152
+#, php-format
+msgid "Description is too long (maximum %d character)."
+msgid_plural "Description is too long (maximum %d characters)."
+msgstr[0] "D描述过长(不能超过%d 个字符)。"
+
+#. 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:234 actions/editgroup.php:223
+#: actions/newgroup.php:159 actions/profilesettings.php:269
+#: actions/register.php:236
+msgid "Location is too long (maximum 255 characters)."
 msgstr "位置过长(不能超过255个字符)。"
 
 msgstr "位置过长(不能超过255个字符)。"
 
-#: actions/apigroupcreate.php:247 actions/editgroup.php:219
-#: actions/newgroup.php:159
+#. 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:255 actions/editgroup.php:236
+#: actions/newgroup.php:172
 #, php-format
 #, php-format
-msgid "Too many aliases! Maximum %d."
-msgstr "太多别名了!最多%d 个。"
+msgid "Too many aliases! Maximum %d allowed."
+msgid_plural "Too many aliases! Maximum %d allowed."
+msgstr[0] "太多别名了!最多允许%d 个。"
 
 
-#: actions/apigroupcreate.php:268
+#. TRANS: Client error shown when providing an invalid alias during group creation.
+#. TRANS: %s is the invalid alias.
+#: actions/apigroupcreate.php:280
 #, php-format
 msgid "Invalid alias: \"%s\"."
 msgstr "无效的别名:“%s”。"
 
 #, php-format
 msgid "Invalid alias: \"%s\"."
 msgstr "无效的别名:“%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:291 actions/editgroup.php:253
+#: actions/newgroup.php:189
 #, php-format
 msgid "Alias \"%s\" already in use. Try another one."
 msgstr "%s这个别名已被使用,换一个吧。"
 
 #, php-format
 msgid "Alias \"%s\" already in use. Try another one."
 msgstr "%s这个别名已被使用,换一个吧。"
 
-#: 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:305 actions/editgroup.php:260
+#: actions/newgroup.php:196
 msgid "Alias can't be the same as nickname."
 msgstr "别名不能和昵称相同。"
 
 msgid "Alias can't be the same as nickname."
 msgstr "别名不能和昵称相同。"
 
-#: 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 "小组未找到。"
 
 msgid "Group not found."
 msgstr "小组未找到。"
 
+#. 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.
 #. 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:333
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100 lib/command.php:333
 msgid "You are already a member of that group."
 msgstr "你已经是该小组成员。"
 
 msgid "You are already a member of that group."
 msgstr "你已经是该小组成员。"
 
+#. 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:338
 msgid "You have been blocked from that group by the admin."
 msgstr "你已经被管理员从该小组中屏蔽。"
 
 #. 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:338
 msgid "You have been blocked from that group by the admin."
 msgstr "你已经被管理员从该小组中屏蔽。"
 
+#. 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.
 #. 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:350
+#: 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 "无法把用户%1$s添加到%2$s小组"
 
 #, php-format
 msgid "Could not join user %1$s to group %2$s."
 msgstr "无法把用户%1$s添加到%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 "你不是该小组成员。"
 
 msgid "You are not a member of this group."
 msgstr "你不是该小组成员。"
 
+#. 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.
 #. 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
+#: 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 "无法把用户%1$s从%2$s小组删除"
 
 #: lib/command.php:398
 #, php-format
 msgid "Could not remove user %1$s from group %2$s."
 msgstr "无法把用户%1$s从%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 "%s 的小组"
 
 #, php-format
 msgid "%s's groups"
 msgstr "%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 "%1$s 的小组,%2$s 是小组成员。"
 
 #, php-format
 msgid "%1$s groups %2$s is a member of."
 msgstr "%1$s 的小组,%2$s 是小组成员。"
 
-#. 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.
 #. 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 "%s 的小组"
 
 #, php-format
 msgid "%s groups"
 msgstr "%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 "在%s上的小组"
 
 #, php-format
 msgid "groups on %s"
 msgstr "在%s上的小组"
 
-#: actions/apimediaupload.php:100
+#. TRANS: Client error displayed when uploading a media file has failed.
+#: actions/apimediaupload.php:101
 msgid "Upload failed."
 msgstr "上传失败"
 
 msgid "Upload failed."
 msgstr "上传失败"
 
-#: 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 "无效的请求 token 或 verifier。"
+
+#. 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 "没有提供 oauth_token 参数"
 
 msgid "No oauth_token parameter provided."
 msgstr "没有提供 oauth_token 参数"
 
-#: actions/apioauthauthorize.php:106
-msgid "Invalid token."
+#. 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 "无效的 token。"
 
 msgstr "无效的 token。"
 
-#: 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: Client error given when an invalid request token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:121
+msgid "Request token already authorized."
+msgstr "请求 token 已被授权了。"
+
+#. 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:275 actions/favor.php:75 actions/geocode.php:55
 #: actions/groupblock.php:66 actions/grouplogo.php:312
 #: 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/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
 #: 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 "你的 session 出现了一个问题,请重试。"
 
 msgid "There was a problem with your session token. Try again, please."
 msgstr "你的 session 出现了一个问题,请重试。"
 
-#: 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 "用户名或密码不正确。"
 
 msgid "Invalid nickname / password!"
 msgstr "用户名或密码不正确。"
 
-#: actions/apioauthauthorize.php:159
-msgid "Database error deleting OAuth application user."
-msgstr "删除 OAuth 应用用户时数据库出错。"
-
-#: actions/apioauthauthorize.php:185
-msgid "Database error inserting OAuth application user."
-msgstr "插入 OAuth 应用用户时数据库出错。"
-
-#: actions/apioauthauthorize.php:214
-#, php-format
-msgid ""
-"The request token %s has been authorized. Please exchange it for an access "
-"token."
-msgstr "Request token 已被批准。请为它换一个 access token。"
-
-#: actions/apioauthauthorize.php:227
-#, php-format
-msgid "The request token %s has been denied and revoked."
-msgstr "%s的 request token 被拒绝并被取消。"
+#. TRANS: Server error displayed when a database action fails.
+#: actions/apioauthauthorize.php:217
+msgid "Database error inserting oauth_token_association."
+msgstr "插入 oauth_token_association 时数据库出错。"
 
 
+#. 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: 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.
 #. 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:294 actions/grouplogo.php:322
+#: actions/imsettings.php:245 actions/newapplication.php:125
 #: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
 #: 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 "未预料的表单提交。"
 
 msgid "Unexpected form submission."
 msgstr "未预料的表单提交。"
 
-#: 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 "一个应用想连接到你的账号"
 
 msgid "An application would like to connect to your account"
 msgstr "一个应用想连接到你的账号"
 
-#: actions/apioauthauthorize.php:276
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:404
 msgid "Allow or deny access"
 msgstr "允许或阻止访问"
 
 msgid "Allow or deny access"
 msgstr "允许或阻止访问"
 
-#: 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 ""
+"一个应用希望能够<strong>%3$s</strong>你的%4$s账号数据。你应该只允许你信任信任"
+"的第三方程序访问你的%4$s账户。"
+
+#. 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 "
 #, php-format
 msgid ""
 "The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
@@ -602,242 +820,443 @@ msgstr ""
 "来自<strong>%2$s</strong>的<strong>%1$s</strong>应用希望能够<strong>%3$s</"
 "strong>你的%4$s账户数据。你应该只允许你信任信任的第三方程序访问你的%4$s账户。"
 
 "来自<strong>%2$s</strong>的<strong>%1$s</strong>应用希望能够<strong>%3$s</"
 "strong>你的%4$s账户数据。你应该只允许你信任信任的第三方程序访问你的%4$s账户。"
 
-#. TRANS: Main menu option when logged in for access to user settings
-#: actions/apioauthauthorize.php:310 lib/action.php:462
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:455
+msgctxt "LEGEND"
 msgid "Account"
 msgstr "帐号"
 
 msgid "Account"
 msgstr "帐号"
 
-#: 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:433
+#: actions/showgroup.php:240 actions/tagother.php:94
 #: actions/userauthorization.php:145 lib/groupeditform.php:152
 #: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:132
+#: lib/userprofile.php:134
 msgid "Nickname"
 msgstr "昵称"
 
 msgid "Nickname"
 msgstr "昵称"
 
+#. TRANS: Field label on OAuth API authorisation form.
 #. TRANS: Link description in user account settings menu.
 #. TRANS: Link description in user account settings menu.
-#: actions/apioauthauthorize.php:316 actions/login.php:255
-#: actions/register.php:436 lib/accountsettingsaction.php:120
+#: actions/apioauthauthorize.php:463 actions/login.php:255
+#: actions/register.php:438 lib/accountsettingsaction.php:120
 msgid "Password"
 msgstr "密码"
 
 msgid "Password"
 msgstr "密码"
 
-#: actions/apioauthauthorize.php:328
-msgid "Deny"
-msgstr "阻止"
+#. 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:127
+#: actions/imsettings.php:131 actions/smssettings.php:137
+#: lib/applicationeditform.php:351
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "取消"
 
 
-#: 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 "允许"
 
 msgid "Allow"
 msgstr "允许"
 
-#: actions/apioauthauthorize.php:351
-msgid "Allow or deny access to your account information."
-msgstr "允许或阻止对你账户信息的访问。"
+#. TRANS: Form instructions.
+#: actions/apioauthauthorize.php:502
+msgid "Authorize access to your account information."
+msgstr "授权对你账号信息的访问。"
+
+#. TRANS: Header for user notification after revoking OAuth access to an application.
+#: actions/apioauthauthorize.php:594
+msgid "Authorization canceled."
+msgstr "授权已取消。"
+
+#. 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 "%s的 request token 已被取消。"
+
+#. 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 "你成功授权了这个应用"
+
+#. 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 "请返回应用并输入下面的安全码完成此过程。"
+
+#. 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 "你成功授权了%s。"
 
 
-#: actions/apistatusesdestroy.php:112
+#. 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 "请返回 %s 并输入下面的安全码完成此过程。"
+
+#. 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 "此方法接受POST或DELETE请求。"
 
 msgid "This method requires a POST or DELETE."
 msgstr "此方法接受POST或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 "你不能删除其他用户的消息。"
 
 msgid "You may not delete another user's status."
 msgstr "你不能删除其他用户的消息。"
 
-#: 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/deletenotice.php:61 actions/shownotice.php:92
 msgid "No such notice."
 msgstr "没有这条消息。"
 
 msgid "No such notice."
 msgstr "没有这条消息。"
 
+#. TRANS: Client error displayed trying to repeat an own notice through the API.
 #. TRANS: Error text shown when trying to repeat an own notice.
 #. TRANS: Error text shown when trying to repeat an own notice.
-#: actions/apistatusesretweet.php:84 lib/command.php:535
+#: actions/apistatusesretweet.php:83 lib/command.php:537
 msgid "Cannot repeat your own notice."
 msgstr "不能转发你自己的消息。"
 
 msgid "Cannot repeat your own notice."
 msgstr "不能转发你自己的消息。"
 
+#. 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.
 #. TRANS: Error text shown when trying to repeat an notice that was already repeated by the user.
-#: actions/apistatusesretweet.php:92 lib/command.php:541
+#: actions/apistatusesretweet.php:92 lib/command.php:543
 msgid "Already repeated that notice."
 msgstr "已转发了该消息。"
 
 msgid "Already repeated that notice."
 msgstr "已转发了该消息。"
 
-#: actions/apistatusesshow.php:139
+#: actions/apistatusesshow.php:117
+msgid "HTTP method not supported."
+msgstr "HTTP 方法不支持。"
+
+#: actions/apistatusesshow.php:141
+#, php-format
+msgid "Unsupported format: %s"
+msgstr "不支持的格式:%s"
+
+#. TRANS: Client error displayed requesting a deleted status.
+#: actions/apistatusesshow.php:152
 msgid "Status deleted."
 msgstr "消息已删除。"
 
 msgid "Status deleted."
 msgstr "消息已删除。"
 
-#: 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 "没有找到此 ID 的消息。"
 
 msgid "No status with that ID found."
 msgstr "没有找到此 ID 的消息。"
 
-#: actions/apistatusesupdate.php:222
+#: actions/apistatusesshow.php:227
+msgid "Can only delete using the Atom format."
+msgstr "只能使用 Atom 格式删除。"
+
+#. TRANS: Error message displayed trying to delete a notice that was not made by the current user.
+#: actions/apistatusesshow.php:234 actions/deletenotice.php:78
+msgid "Can't delete this notice."
+msgstr "无法删除这条消息。"
+
+#: actions/apistatusesshow.php:247
+#, php-format
+msgid "Deleted notice %d"
+msgstr "删除消息 %d"
+
+#. 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 "客户端必须提供一个包含内容的“状态”参数。"
 
 msgid "Client must provide a 'status' parameter with a value."
 msgstr "客户端必须提供一个包含内容的“状态”参数。"
 
-#: actions/apistatusesupdate.php:243 actions/newnotice.php:157
+#. 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
 #: lib/mailhandler.php:60
 #, php-format
-msgid "That's too long. Max notice size is %d chars."
-msgstr "太长了。最长的消息长度是%d个字符。"
+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] "太长了。最长的消息长度是%d个字符。"
 
 
-#: actions/apistatusesupdate.php:284 actions/apiusershow.php:96
-msgid "Not found."
-msgstr "未找到。"
+#. TRANS: Client error displayed when replying to a non-existing notice.
+#: actions/apistatusesupdate.php:284
+msgid "Parent notice not found."
+msgstr "没有找到父级的消息。"
 
 
-#: actions/apistatusesupdate.php:307 actions/newnotice.php:181
+#. 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
 #, php-format
-msgid "Max notice size is %d chars, including attachment URL."
-msgstr "每条消息最长%d字符,包括附件的链接 URL。"
+msgid "Maximum notice size is %d character, including attachment URL."
+msgid_plural "Maximum notice size is %d characters, including attachment URL."
+msgstr[0] "每条消息最长%d字符,包括附件的链接 URL。"
 
 
-#: actions/apisubscriptions.php:233 actions/apisubscriptions.php:263
+#. 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 "不支持的格式。"
 
 msgid "Unsupported format."
 msgstr "不支持的格式。"
 
-#: 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 / 来自 %2$s 的收藏"
 
 #, php-format
 msgid "%1$s / Favorites from %2$s"
 msgstr "%1$s / 来自 %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 / %3$s."
+msgstr "%1$s上被%2$s(%3$s)收藏的消息。"
+
+#. TRANS: Server error displayed when generating an Atom feed fails.
+#. TRANS: %s is the error.
+#: actions/apitimelinegroup.php:138
 #, php-format
 #, php-format
-msgid "%1$s updates favorited by %2$s / %2$s."
-msgstr "%1$s 条消息被 %2$s 收藏 / %2$s"
+msgid "Could not generate feed for group - %s"
+msgstr "无法生成小组的 feed - %s"
 
 
-#: actions/apitimelinementions.php:118
+#. 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 / 条消息提到了 %2$s"
 
 #, php-format
 msgid "%1$s / Updates mentioning %2$s"
 msgstr "%1$s / 条消息提到了 %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 条消息回复给来自 %2$s 的消息 / %3$s。"
 
 #: actions/apitimelinementions.php:131
 #, php-format
 msgid "%1$s updates that reply to updates from %2$s / %3$s."
 msgstr " %1$s 条消息回复给来自 %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 "%s 公共时间线"
 
 #, php-format
 msgid "%s public timeline"
 msgstr "%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条来自所有人的消息!"
 
 #, php-format
 msgid "%s updates from everyone!"
 msgstr "%s条来自所有人的消息!"
 
-#: actions/apitimelineretweetedtome.php:111
+#. TRANS: Server error displayed calling unimplemented API method for 'retweeted by me'.
+#: actions/apitimelineretweetedbyme.php:71
+msgid "Unimplemented."
+msgstr "未生效。"
+
+#. TRANS: Title for Atom feed "repeated to me". %s is the user nickname.
+#: actions/apitimelineretweetedtome.php:108
 #, php-format
 msgid "Repeated to %s"
 msgstr "转发给%s"
 
 #, php-format
 msgid "Repeated to %s"
 msgstr "转发给%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 "%s 的转发"
 
 #, php-format
 msgid "Repeats of %s"
 msgstr "%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 "带 %s 标签的消息"
 
 #, php-format
 msgid "Notices tagged with %s"
 msgstr "带 %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 "%2$s 上有 %1$s 标签的消息!"
 
 #, php-format
 msgid "Updates tagged with %1$s on %2$s!"
 msgstr "%2$s 上有 %1$s 标签的消息!"
 
-#: actions/apitrends.php:87
+#: actions/apitimelineuser.php:300
+msgid "Only the user can add to their own timeline."
+msgstr "只有该用户才能添加到他们的时间线。"
+
+#: actions/apitimelineuser.php:306
+msgid "Only accept AtomPub for atom feeds."
+msgstr "Atom feeds 只接受 AtomPub。"
+
+#: actions/apitimelineuser.php:316
+msgid "Atom post must be an Atom entry."
+msgstr ""
+
+#: actions/apitimelineuser.php:325
+msgid "Can only handle post activities."
+msgstr ""
+
+#: actions/apitimelineuser.php:334
+#, php-format
+msgid "Cannot handle activity object type \"%s\""
+msgstr ""
+
+#: actions/apitimelineuser.php:392
+#, fuzzy, php-format
+msgid "Notice with URI \"%s\" already exists."
+msgstr "没有此 id 的消息。"
+
+#: actions/apitimelineuser.php:423
+#, php-format
+msgid "AtomPub post with unknown attention URI %s"
+msgstr ""
+
+#. TRANS: Server error for unfinished API method showTrends.
+#: actions/apitrends.php:85
 msgid "API method under construction."
 msgstr "API 方法尚未实现。"
 
 msgid "API method under construction."
 msgstr "API 方法尚未实现。"
 
+#. TRANS: Client error displayed when requesting user information for a non-existing user.
+#: actions/apiusershow.php:94
+msgid "User not found."
+msgstr "API方法没有找到。"
+
+#. TRANS: Client error displayed trying to get a non-existing attachment.
 #: actions/attachment.php:73
 msgid "No such attachment."
 msgstr "没有这个附件。"
 
 #: actions/attachment.php:73
 msgid "No such attachment."
 msgstr "没有这个附件。"
 
-#: 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/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 "没有昵称。"
 
 msgid "No nickname."
 msgstr "没有昵称。"
 
-#: 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 "没有大小。"
 
 msgid "No size."
 msgstr "没有大小。"
 
-#: 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 "大小不正确。"
 
 msgid "Invalid size."
 msgstr "大小不正确。"
 
+#. TRANS: Title for avatar upload page.
+#. TRANS: Label for group avatar (dt). Text hidden by default.
 #. TRANS: Link description in user account settings menu.
 #. TRANS: Link description in user account settings menu.
-#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: actions/avatarsettings.php:66 actions/showgroup.php:224
 #: lib/accountsettingsaction.php:113
 msgid "Avatar"
 msgstr "头像"
 
 #: lib/accountsettingsaction.php:113
 msgid "Avatar"
 msgstr "头像"
 
+#. 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."
 msgstr "你可以上传你的个人头像。文件大小限制在%s以下。"
 
 #: actions/avatarsettings.php:78
 #, php-format
 msgid "You can upload your personal avatar. The maximum file size is %s."
 msgstr "你可以上传你的个人头像。文件大小限制在%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 "用户没有相应个人信息。"
 
 #: actions/grouplogo.php:181 actions/remotesubscribe.php:191
 #: actions/userauthorization.php:72 actions/userrss.php:108
 msgid "User without matching profile."
 msgstr "用户没有相应个人信息。"
 
-#: 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 "头像设置"
 
 #: actions/grouplogo.php:254
 msgid "Avatar settings"
 msgstr "头像设置"
 
-#: 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 "原始"
 
 #: actions/grouplogo.php:202 actions/grouplogo.php:262
 msgid "Original"
 msgstr "原始"
 
-#: 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 "预览"
 
 #: actions/grouplogo.php:213 actions/grouplogo.php:274
 msgid "Preview"
 msgstr "预览"
 
-#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:667
+#. TRANS: Button on avatar upload page to delete current avatar.
+#: actions/avatarsettings.php:155
+msgctxt "BUTTON"
 msgid "Delete"
 msgstr "删除"
 
 msgid "Delete"
 msgstr "删除"
 
-#: 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 "上传"
 
 msgid "Upload"
 msgstr "上传"
 
-#: 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 "剪裁"
 
 msgid "Crop"
 msgstr "剪裁"
 
-#: 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 "没有文件被上传。"
 
 msgid "No file uploaded."
 msgstr "没有文件被上传。"
 
-#: 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 "请选择一块方形区域作为你的头像"
 
 msgid "Pick a square area of the image to be your avatar"
 msgstr "请选择一块方形区域作为你的头像"
 
-#: 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 "文件数据丢失"
 
 msgid "Lost our file data."
 msgstr "文件数据丢失"
 
-#: actions/avatarsettings.php:370
+#. TRANS: Success message for having updated a user avatar.
+#: actions/avatarsettings.php:385
 msgid "Avatar updated."
 msgstr "头像已更新。"
 
 msgid "Avatar updated."
 msgstr "头像已更新。"
 
-#: 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 "更新头像失败。"
 
 msgid "Failed updating avatar."
 msgstr "更新头像失败。"
 
-#: actions/avatarsettings.php:397
+#. TRANS: Success message for deleting a user avatar.
+#: actions/avatarsettings.php:413
 msgid "Avatar deleted."
 msgstr "头像已删除。"
 
 msgid "Avatar deleted."
 msgstr "头像已删除。"
 
-#: 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 "你已经屏蔽该用户。"
 
 msgid "You already blocked that user."
 msgstr "你已经屏蔽该用户。"
 
-#: 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 "屏蔽用户。"
 
 msgid "Block user"
 msgstr "屏蔽用户。"
 
-#: 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 "
 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 "
@@ -848,181 +1267,219 @@ msgstr ""
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
 
 #. 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.
 #. 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 "否"
 
 #. TRANS: Submit button title for 'No' when blocking a user.
 #. TRANS: Submit button title for 'No' when deleting a user.
 msgctxt "BUTTON"
 msgid "No"
 msgstr "否"
 
 #. 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 "不要屏蔽这个用户"
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
 msgid "Do not block this user"
 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.
 #. 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 "是"
 
 #. TRANS: Submit button title for 'Yes' when blocking a user.
 #. TRANS: Description of the form to block a user.
 msgctxt "BUTTON"
 msgid "Yes"
 msgstr "是"
 
 #. 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:79
+#: actions/block.php:165 lib/blockform.php:79
 msgid "Block this user"
 msgstr "屏蔽这个用户"
 
 msgid "Block this user"
 msgstr "屏蔽这个用户"
 
-#: actions/block.php:187
+#. TRANS: Server error displayed when blocking a user fails.
+#: actions/block.php:189
 msgid "Failed to save block information."
 msgstr "保存屏蔽信息失败。"
 
 msgid "Failed to save block information."
 msgstr "保存屏蔽信息失败。"
 
+#. 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.
 #. 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/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/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:168
+#: actions/showgroup.php:134 actions/showgroup.php:143 lib/command.php:168
 #: lib/command.php:380
 msgid "No such group."
 msgstr "没有这个组。"
 
 #: lib/command.php:380
 msgid "No such group."
 msgstr "没有这个组。"
 
-#: 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屏蔽的用户"
 
 #, php-format
 msgid "%s blocked profiles"
 msgstr "%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屏蔽的用户,第%2$d页"
 
 #, php-format
 msgid "%1$s blocked profiles, page %2$d"
 msgstr "%1$s屏蔽的用户,第%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 "被屏蔽加入此小组的用户列表。"
 
 msgid "A list of the users blocked from joining this group."
 msgstr "被屏蔽加入此小组的用户列表。"
 
-#: actions/blockedfromgroup.php:288
+#. TRANS: Form legend for unblocking a user from a group.
+#: actions/blockedfromgroup.php:291
 msgid "Unblock user from group"
 msgstr "取消小组对用户的屏蔽。"
 
 msgid "Unblock user from group"
 msgstr "取消小组对用户的屏蔽。"
 
-#. 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 "取消屏蔽"
 
 msgid "Unblock"
 msgstr "取消屏蔽"
 
+#. TRANS: Tooltip for button for unblocking a user from a group.
 #. TRANS: Description of the form to unblock a user.
 #. 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 "取消屏蔽这个用户。"
 
 #. TRANS: Title for mini-posting window loaded from bookmarklet.
 msgid "Unblock this user"
 msgstr "取消屏蔽这个用户。"
 
 #. 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 "发布到 %s"
 
 #: actions/bookmarklet.php:51
 #, php-format
 msgid "Post to %s"
 msgstr "发布到 %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 "没有确认码"
 
 msgid "No confirmation code."
 msgstr "没有确认码"
 
+#. 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 "未找到确认码。"
 
 #: actions/confirmaddress.php:80
 msgid "Confirmation code not found."
 msgstr "未找到确认码。"
 
-#: 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 "此确认码不是你的!"
 
 msgid "That confirmation code is not for you!"
 msgstr "此确认码不是你的!"
 
-#. 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 "不可识别的地址类型%s。"
 
 #, php-format
 msgid "Unrecognized address type %s."
 msgstr "不可识别的地址类型%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 "此地址已被确认过了。"
 
 msgid "That address has already been confirmed."
 msgstr "此地址已被确认过了。"
 
+#. 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 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.
 #. 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:337
+#: actions/emailsettings.php:486 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 "无法更新用户。"
 
 #: actions/smssettings.php:464
 msgid "Couldn't update user."
 msgstr "无法更新用户。"
 
-#. 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 "无法删除电子邮件确认。"
+#. 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 "无法删除地址确认码。"
 
 
-#: actions/confirmaddress.php:146
+#. TRANS: Title for the contact address confirmation action.
+#: actions/confirmaddress.php:150
 msgid "Confirm address"
 msgstr "确认地址"
 
 msgid "Confirm address"
 msgstr "确认地址"
 
-#: 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 "你账户的地址 \"%s\" 已被确认。"
 
 #, php-format
 msgid "The address \"%s\" has been confirmed for your account."
 msgstr "你账户的地址 \"%s\" 已被确认。"
 
-#: actions/conversation.php:99
+#. TRANS: Title for page with a conversion (multiple notices in context).
+#: actions/conversation.php:96
 msgid "Conversation"
 msgstr "对话"
 
 msgid "Conversation"
 msgstr "对话"
 
-#: 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 "消息"
 
 #: lib/profileaction.php:229 lib/searchgroupnav.php:82
 msgid "Notices"
 msgstr "消息"
 
-#: 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 "你必须登录后才能删除应用。"
 
 msgid "You must be logged in to delete an application."
 msgstr "你必须登录后才能删除应用。"
 
+#. TRANS: Client error displayed trying to delete an application that does not exist.
 #: actions/deleteapplication.php:71
 msgid "Application not found."
 msgstr "未找到应用。"
 
 #: actions/deleteapplication.php:71
 msgid "Application not found."
 msgstr "未找到应用。"
 
-#: 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 "你不是该应用的拥有者。"
 
 #. TRANS: Client error text when there is a problem with the session token.
 #: actions/showapplication.php:94
 msgid "You are not the owner of this application."
 msgstr "你不是该应用的拥有者。"
 
 #. 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:1307
+#: 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 "你的 session token 出现了问题。"
 
 msgid "There was a problem with your session token."
 msgstr "你的 session token 出现了问题。"
 
-#: 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 "删除应用"
 
 msgid "Delete application"
 msgstr "删除应用"
 
-#: 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 "
 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 "
@@ -1032,51 +1489,110 @@ msgstr ""
 "用户关联。"
 
 #. TRANS: Submit button title for 'No' when deleting an application.
 "用户关联。"
 
 #. 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 "不删除该应用"
 
 #. TRANS: Submit button title for 'Yes' when deleting an application.
 msgid "Do not delete this application"
 msgstr "不删除该应用"
 
 #. TRANS: Submit button title for 'Yes' when deleting an application.
-#: actions/deleteapplication.php:164
+#: actions/deleteapplication.php:167
 msgid "Delete this application"
 msgstr "删除这个应用"
 
 msgid "Delete this application"
 msgstr "删除这个应用"
 
+#. 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 "你必须登录才能删除小组。"
+
+#. 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 "没有昵称或 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 "你不能删除这个小组。"
+
+#. 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 "无法删除%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 "删除了%s小组"
+
+#. 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 "删除小组"
+
+#. 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 ""
+"你确定要删除这个小组吗?这将从数据库中清除有关这个用户的所有数据,没有备份。"
+"对这个小组公开的消息将仍在各自的时间线中保留。"
+
+#. TRANS: Submit button title for 'No' when deleting a group.
+#: actions/deletegroup.php:224
+msgid "Do not delete this group"
+msgstr "不要删除这个小组"
+
+#. TRANS: Submit button title for 'Yes' when deleting a group.
+#: actions/deletegroup.php:231
+msgid "Delete this group"
+msgstr "删除这个小组"
+
+#. 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.
 #. 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 "未登录。"
 
 #: 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 "未登录。"
 
-#: actions/deletenotice.php:71
-msgid "Can't delete this notice."
-msgstr "无法删除这条消息。"
-
-#: 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."
 msgstr "你即将永久删除一条消息,此操作无法撤销。"
 
 msgid ""
 "You are about to permanently delete a notice. Once this is done, it cannot "
 "be undone."
 msgstr "你即将永久删除一条消息,此操作无法撤销。"
 
-#: 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 "删除消息"
 
 msgid "Delete notice"
 msgstr "删除消息"
 
-#: 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 "你确定要删除这条消息吗?"
 
 #. TRANS: Submit button title for 'No' when deleting a notice.
 msgid "Are you sure you want to delete this notice?"
 msgstr "你确定要删除这条消息吗?"
 
 #. 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 "不要删除这个消息"
 
 #. TRANS: Submit button title for 'Yes' when deleting a notice.
 msgid "Do not delete this notice"
 msgstr "不要删除这个消息"
 
 #. TRANS: Submit button title for 'Yes' when deleting a notice.
-#: actions/deletenotice.php:158 lib/noticelist.php:667
+#: actions/deletenotice.php:166 lib/noticelist.php:672
 msgid "Delete this notice"
 msgstr "删除"
 
 msgid "Delete this notice"
 msgstr "删除"
 
@@ -1114,53 +1630,63 @@ msgstr "外观"
 msgid "Design settings for this StatusNet site"
 msgstr "这个 StatusNet 网站的外观设置"
 
 msgid "Design settings for this StatusNet site"
 msgstr "这个 StatusNet 网站的外观设置"
 
-#: actions/designadminpanel.php:331
+#: actions/designadminpanel.php:335
 msgid "Invalid logo URL."
 msgstr "无效的 logo URL。"
 
 msgid "Invalid logo URL."
 msgstr "无效的 logo URL。"
 
-#: actions/designadminpanel.php:335
+#: actions/designadminpanel.php:340
+msgid "Invalid SSL logo URL."
+msgstr "无效的 SSL logo URL。"
+
+#: actions/designadminpanel.php:344
 #, php-format
 msgid "Theme not available: %s."
 msgstr "主题不可用:%s。"
 
 #, php-format
 msgid "Theme not available: %s."
 msgstr "主题不可用:%s。"
 
-#: actions/designadminpanel.php:439
+#: actions/designadminpanel.php:448
 msgid "Change logo"
 msgstr "更换 logo"
 
 msgid "Change logo"
 msgstr "更换 logo"
 
-#: actions/designadminpanel.php:444
+#: actions/designadminpanel.php:453
 msgid "Site logo"
 msgstr "网站 logo"
 
 msgid "Site logo"
 msgstr "网站 logo"
 
-#: actions/designadminpanel.php:456
+#: actions/designadminpanel.php:457
+msgid "SSL logo"
+msgstr "网站 SSL logo"
+
+#: actions/designadminpanel.php:469
 msgid "Change theme"
 msgstr "更换主题"
 
 msgid "Change theme"
 msgstr "更换主题"
 
-#: actions/designadminpanel.php:473
+#: actions/designadminpanel.php:486
 msgid "Site theme"
 msgstr "网站主题"
 
 msgid "Site theme"
 msgstr "网站主题"
 
-#: actions/designadminpanel.php:474
+#: actions/designadminpanel.php:487
 msgid "Theme for the site."
 msgstr "这个网站的主题。"
 
 msgid "Theme for the site."
 msgstr "这个网站的主题。"
 
-#: actions/designadminpanel.php:480
+#: actions/designadminpanel.php:493
 msgid "Custom theme"
 msgstr "自定义主题"
 
 msgid "Custom theme"
 msgstr "自定义主题"
 
-#: actions/designadminpanel.php:484
+#: actions/designadminpanel.php:497
 msgid "You can upload a custom StatusNet theme as a .ZIP archive."
 msgstr "你可以上传一个 .ZIP 压缩文件作为一个自定义的 StatusNet 主题"
 
 msgid "You can upload a custom StatusNet theme as a .ZIP archive."
 msgstr "你可以上传一个 .ZIP 压缩文件作为一个自定义的 StatusNet 主题"
 
-#: 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 "更换背景图像"
 
 msgid "Change background image"
 msgstr "更换背景图像"
 
-#: 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 "背景"
 
 msgid "Background"
 msgstr "背景"
 
-#: 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"
 #, php-format
 msgid ""
 "You can upload a background image for the site. The maximum file size is %1"
@@ -1168,76 +1694,84 @@ msgid ""
 msgstr "你可以为网站上传一个背景图像。文件大小限制在%1$s以下。"
 
 #. TRANS: Used as radio button label to add a background image.
 msgstr "你可以为网站上传一个背景图像。文件大小限制在%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 "打开"
 
 #. TRANS: Used as radio button label to not add a background image.
 msgid "On"
 msgstr "打开"
 
 #. 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 "关闭"
 
 msgid "Off"
 msgstr "关闭"
 
-#: 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 "打开或关闭背景图片"
 
 msgid "Turn background image on or off."
 msgstr "打开或关闭背景图片"
 
-#: 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 "平铺背景图片"
 
 msgid "Tile background image"
 msgstr "平铺背景图片"
 
-#: 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 "改变颜色"
 
 msgid "Change colours"
 msgstr "改变颜色"
 
-#: 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 "内容"
 
 msgid "Content"
 msgstr "内容"
 
-#: 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 "边栏"
 
 msgid "Sidebar"
 msgstr "边栏"
 
-#: 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 "文字"
 
 msgid "Text"
 msgstr "文字"
 
-#: 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 "链接"
 
 msgid "Links"
 msgstr "链接"
 
-#: actions/designadminpanel.php:664
+#: actions/designadminpanel.php:677
 msgid "Advanced"
 msgstr "高级"
 
 msgid "Advanced"
 msgstr "高级"
 
-#: actions/designadminpanel.php:668
+#: actions/designadminpanel.php:681
 msgid "Custom CSS"
 msgstr "自定义CSS"
 
 msgid "Custom CSS"
 msgstr "自定义CSS"
 
-#: 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 "使用默认值"
 
 msgid "Use defaults"
 msgstr "使用默认值"
 
-#: 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 "恢复默认外观"
 
 msgid "Restore default designs"
 msgstr "恢复默认外观"
 
-#: 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 "重置到默认"
 
 #. TRANS: Submit button title.
 msgid "Reset back to default"
 msgstr "重置到默认"
 
 #. 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:357 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 "保存"
 
 msgid "Save"
 msgstr "保存"
 
-#: 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 "保存外观"
 
 msgid "Save design"
 msgstr "保存外观"
 
@@ -1254,109 +1788,129 @@ msgstr "加入收藏"
 msgid "No such document \"%s\""
 msgstr "没有这个文件“%s”。"
 
 msgid "No such document \"%s\""
 msgstr "没有这个文件“%s”。"
 
-#: actions/editapplication.php:54
-msgid "Edit Application"
+#. TRANS: Title for "Edit application" form.
+#. TRANS: Form legend.
+#: actions/editapplication.php:54 lib/applicationeditform.php:129
+msgid "Edit application"
 msgstr "编辑应用"
 
 msgstr "编辑应用"
 
+#. 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 "你必须登录后才能编辑应用。"
 
 #: actions/editapplication.php:66
 msgid "You must be logged in to edit an application."
 msgstr "你必须登录后才能编辑应用。"
 
-#: 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 "没有这个应用。"
 
 msgid "No such application."
 msgstr "没有这个应用。"
 
-#: actions/editapplication.php:161
+#. TRANS: Instructions for "Edit application" form.
+#: actions/editapplication.php:167
 msgid "Use this form to edit your application."
 msgstr "通过此表单来编辑你的应用。"
 
 msgid "Use this form to edit your application."
 msgstr "通过此表单来编辑你的应用。"
 
-#: 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 "名字为必填项。"
 
 msgid "Name is required."
 msgstr "名字为必填项。"
 
-#: actions/editapplication.php:180 actions/newapplication.php:165
-msgid "Name is too long (max 255 chars)."
+#. 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 "名称过长(不能超过255个字符)。"
 
 msgstr "名称过长(不能超过255个字符)。"
 
-#: 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 "名字已被使用,换一个吧。"
 
 msgid "Name already in use. Try another one."
 msgstr "名字已被使用,换一个吧。"
 
-#: 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 "必须填写描述。"
 
 msgid "Description is required."
 msgstr "必须填写描述。"
 
-#: 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 "来源 URL 太长。"
 
 msgid "Source URL is too long."
 msgstr "来源 URL 太长。"
 
-#: 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 "来源 URL 无效。"
 
 msgid "Source URL is not valid."
 msgstr "来源 URL 无效。"
 
-#: 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 "组织名称必填。"
 
 msgid "Organization is required."
 msgstr "组织名称必填。"
 
-#: actions/editapplication.php:206 actions/newapplication.php:191
-msgid "Organization is too long (max 255 chars)."
+#. 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 "组织名称过长(不能超过255个字符)。"
 
 msgstr "组织名称过长(不能超过255个字符)。"
 
-#: actions/editapplication.php:209 actions/newapplication.php:194
+#: actions/editapplication.php:226 actions/newapplication.php:202
 msgid "Organization homepage is required."
 msgstr "组织首页必填。"
 
 msgid "Organization homepage is required."
 msgstr "组织首页必填。"
 
-#: 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 "调回地址(callback)过长。"
 
 msgid "Callback is too long."
 msgstr "调回地址(callback)过长。"
 
-#: 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 "调回地址(Callback URL)无效。"
 
 msgid "Callback URL is not valid."
 msgstr "调回地址(Callback URL)无效。"
 
-#: 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 "无法更新应用。"
 
 msgid "Could not update application."
 msgstr "无法更新应用。"
 
-#: 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 "编辑 %s 小组"
 
 #, php-format
 msgid "Edit %s group"
 msgstr "编辑 %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 "你必须登录才能创建小组。"
 
 #: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
 msgid "You must be logged in to create a group."
 msgstr "你必须登录才能创建小组。"
 
-#: 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 "管理员才可以编辑小组。"
 
 #: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
 msgid "You must be an admin to edit the group."
 msgstr "管理员才可以编辑小组。"
 
-#: actions/editgroup.php:158
+#. TRANS: Form instructions for group edit form.
+#: actions/editgroup.php:161
 msgid "Use this form to edit the group."
 msgstr "通过这个表单来编辑小组"
 
 msgid "Use this form to edit the group."
 msgstr "通过这个表单来编辑小组"
 
-#: actions/editgroup.php:205 actions/newgroup.php:145
-#, php-format
-msgid "description is too long (max %d chars)."
-msgstr "描述过长(不能超过%d个字符)。"
-
-#: actions/editgroup.php:228 actions/newgroup.php:168
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#: actions/editgroup.php:248 actions/newgroup.php:184
 #, php-format
 msgid "Invalid alias: \"%s\""
 msgstr "无效的别名:“%s”。"
 
 #, php-format
 msgid "Invalid alias: \"%s\""
 msgstr "无效的别名:“%s”。"
 
-#: actions/editgroup.php:258
+#. TRANS: Server error displayed when editing a group fails.
+#: actions/editgroup.php:281
 msgid "Could not update group."
 msgstr "无法更新小组"
 
 msgid "Could not update group."
 msgstr "无法更新小组"
 
+#. TRANS: Server error displayed when group aliases could not be added.
 #. TRANS: Server exception thrown when creating group aliases failed.
 #. TRANS: Server exception thrown when creating group aliases failed.
-#: actions/editgroup.php:264 classes/User_group.php:513
+#: actions/editgroup.php:288 classes/User_group.php:529
 msgid "Could not create aliases."
 msgstr "无法创建别名。"
 
 msgid "Could not create aliases."
 msgstr "无法创建别名。"
 
-#: actions/editgroup.php:280
+#. TRANS: Group edit form success message.
+#: actions/editgroup.php:305
 msgid "Options saved."
 msgstr "选项已保存。"
 
 msgid "Options saved."
 msgstr "选项已保存。"
 
@@ -1403,16 +1957,6 @@ msgstr ""
 "正等待确认此邮件。请查看你的收件箱(和垃圾箱)是否收到了邮件,里面包含了更多的"
 "说明。"
 
 "正等待确认此邮件。请查看你的收件箱(和垃圾箱)是否收到了邮件,里面包含了更多的"
 "说明。"
 
-#. 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:351
-msgctxt "BUTTON"
-msgid "Cancel"
-msgstr "取消"
-
 #. 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: 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.
@@ -1462,81 +2006,81 @@ msgid "Email preferences"
 msgstr "Email 偏好"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgstr "Email 偏好"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:184
+#: actions/emailsettings.php:186
 msgid "Send me notices of new subscriptions through email."
 msgstr "将新的关注通过电子邮件发送给我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "Send me notices of new subscriptions through email."
 msgstr "将新的关注通过电子邮件发送给我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:190
+#: actions/emailsettings.php:192
 msgid "Send me email when someone adds my notice as a favorite."
 msgstr "有人收藏我的消息时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "Send me email when someone adds my notice as a favorite."
 msgstr "有人收藏我的消息时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:197
+#: actions/emailsettings.php:199
 msgid "Send me email when someone sends me a private message."
 msgstr "有人给我发送私信时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "Send me email when someone sends me a private message."
 msgstr "有人给我发送私信时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:203
+#: actions/emailsettings.php:205
 msgid "Send me email when someone sends me an \"@-reply\"."
 msgstr "有人给我发送 @ 消息时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "Send me email when someone sends me an \"@-reply\"."
 msgstr "有人给我发送 @ 消息时,发邮件通知我。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:209
+#: actions/emailsettings.php:211
 msgid "Allow friends to nudge me and send me an email."
 msgstr "允许朋友们呼叫我并给我发送邮件。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "Allow friends to nudge me and send me an email."
 msgstr "允许朋友们呼叫我并给我发送邮件。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:216
+#: actions/emailsettings.php:218
 msgid "I want to post notices by email."
 msgstr "我希望通过邮件发布信息。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
 msgid "I want to post notices by email."
 msgstr "我希望通过邮件发布信息。"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:223
+#: actions/emailsettings.php:225
 msgid "Publish a MicroID for my email address."
 msgstr "公开电子邮件的 MicroID。"
 
 #. TRANS: Confirmation message for successful e-mail preferences save.
 msgid "Publish a MicroID for my email address."
 msgstr "公开电子邮件的 MicroID。"
 
 #. TRANS: Confirmation message for successful e-mail preferences save.
-#: actions/emailsettings.php:338
+#: actions/emailsettings.php:346
 msgid "Email preferences saved."
 msgstr "Email 偏好已保存。"
 
 #. TRANS: Message given saving e-mail address without having provided one.
 msgid "Email preferences saved."
 msgstr "Email 偏好已保存。"
 
 #. TRANS: Message given saving e-mail address without having provided one.
-#: actions/emailsettings.php:357
+#: actions/emailsettings.php:366
 msgid "No email address."
 msgstr "没有电子邮件地址。"
 
 #. TRANS: Message given saving e-mail address that cannot be normalised.
 msgid "No email address."
 msgstr "没有电子邮件地址。"
 
 #. TRANS: Message given saving e-mail address that cannot be normalised.
-#: actions/emailsettings.php:365
+#: actions/emailsettings.php:374
 msgid "Cannot normalize that email address"
 msgstr "无法识别此电子邮件"
 
 #. TRANS: Message given saving e-mail address that not valid.
 msgid "Cannot normalize that email address"
 msgstr "无法识别此电子邮件"
 
 #. TRANS: Message given saving e-mail address that not valid.
-#: actions/emailsettings.php:370 actions/register.php:208
+#: actions/emailsettings.php:379 actions/register.php:208
 #: actions/siteadminpanel.php:144
 msgid "Not a valid email address."
 msgstr "不是有效的电子邮件。"
 
 #. TRANS: Message given saving e-mail address that is already set.
 #: actions/siteadminpanel.php:144
 msgid "Not a valid email address."
 msgstr "不是有效的电子邮件。"
 
 #. TRANS: Message given saving e-mail address that is already set.
-#: actions/emailsettings.php:374
+#: actions/emailsettings.php:383
 msgid "That is already your email address."
 msgstr "你已登记此电子邮件。"
 
 #. TRANS: Message given saving e-mail address that is already set for another user.
 msgid "That is already your email address."
 msgstr "你已登记此电子邮件。"
 
 #. TRANS: Message given saving e-mail address that is already set for another user.
-#: actions/emailsettings.php:378
+#: actions/emailsettings.php:387
 msgid "That email address already belongs to another user."
 msgstr "此电子邮件属于其他用户。"
 
 #. 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.
 msgid "That email address already belongs to another user."
 msgstr "此电子邮件属于其他用户。"
 
 #. 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:404 actions/imsettings.php:351
 #: actions/smssettings.php:373
 msgid "Couldn't insert confirmation code."
 msgstr "无法插入确认码。"
 
 #. TRANS: Message given saving valid e-mail address that is to be confirmed.
 #: actions/smssettings.php:373
 msgid "Couldn't insert confirmation code."
 msgstr "无法插入确认码。"
 
 #. TRANS: Message given saving valid e-mail address that is to be confirmed.
-#: actions/emailsettings.php:402
+#: actions/emailsettings.php:411
 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."
 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."
@@ -1547,50 +2091,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.
 #. 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:432 actions/imsettings.php:386
 #: actions/smssettings.php:408
 msgid "No pending confirmation to cancel."
 msgstr "没有可以取消的确认。"
 
 #. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
 #: actions/smssettings.php:408
 msgid "No pending confirmation to cancel."
 msgstr "没有可以取消的确认。"
 
 #. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
-#: actions/emailsettings.php:428
+#: actions/emailsettings.php:437
 msgid "That is the wrong email address."
 msgstr "这是错误的电子邮件地址。"
 
 msgid "That is the wrong email address."
 msgstr "这是错误的电子邮件地址。"
 
+#. 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:446 actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr "无法删除电子邮件确认。"
+
 #. TRANS: Message given after successfully canceling e-mail address confirmation.
 #. TRANS: Message given after successfully canceling e-mail address confirmation.
-#: actions/emailsettings.php:442
+#: actions/emailsettings.php:451
 msgid "Email confirmation cancelled."
 msgstr "Email 确认已取消。"
 
 #. TRANS: Message given trying to remove an e-mail address that is not
 #. TRANS: registered for the active user.
 msgid "Email confirmation cancelled."
 msgstr "Email 确认已取消。"
 
 #. 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:471
 msgid "That is not your email address."
 msgstr "这个不是你的电子邮件地址。"
 
 #. TRANS: Message given after successfully removing a registered e-mail address.
 msgid "That is not your email address."
 msgstr "这个不是你的电子邮件地址。"
 
 #. TRANS: Message given after successfully removing a registered e-mail address.
-#: actions/emailsettings.php:483
+#: actions/emailsettings.php:492
 msgid "The email address was removed."
 msgstr "电子邮件地址已被删除。"
 
 msgid "The email address was removed."
 msgstr "电子邮件地址已被删除。"
 
-#: actions/emailsettings.php:497 actions/smssettings.php:568
+#: actions/emailsettings.php:506 actions/smssettings.php:568
 msgid "No incoming email address."
 msgstr "没有发布用的电子邮件地址。"
 
 #. TRANS: Server error thrown on database error removing incoming e-mail address.
 #. TRANS: Server error thrown on database error adding incoming e-mail address.
 msgid "No incoming email address."
 msgstr "没有发布用的电子邮件地址。"
 
 #. 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:517 actions/emailsettings.php:541
 #: actions/smssettings.php:578 actions/smssettings.php:602
 msgid "Couldn't update user record."
 msgstr "无法更新用户记录。"
 
 #. TRANS: Message given after successfully removing an incoming e-mail address.
 #: actions/smssettings.php:578 actions/smssettings.php:602
 msgid "Couldn't update user record."
 msgstr "无法更新用户记录。"
 
 #. TRANS: Message given after successfully removing an incoming e-mail address.
-#: actions/emailsettings.php:512 actions/smssettings.php:581
+#: actions/emailsettings.php:521 actions/smssettings.php:581
 msgid "Incoming email address removed."
 msgstr "发布用的电子邮件被删除。"
 
 #. TRANS: Message given after successfully adding an incoming e-mail address.
 msgid "Incoming email address removed."
 msgstr "发布用的电子邮件被删除。"
 
 #. TRANS: Message given after successfully adding an incoming e-mail address.
-#: actions/emailsettings.php:536 actions/smssettings.php:605
+#: actions/emailsettings.php:545 actions/smssettings.php:605
 msgid "New incoming email address added."
 msgstr "已添加新的发布用的电子邮件地址。"
 
 msgid "New incoming email address added."
 msgstr "已添加新的发布用的电子邮件地址。"
 
@@ -1602,7 +2152,7 @@ msgstr "已收藏过此消息!"
 msgid "Disfavor favorite"
 msgstr "取消收藏"
 
 msgid "Disfavor favorite"
 msgstr "取消收藏"
 
-#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: actions/favorited.php:65 lib/popularnoticesection.php:62
 #: lib/publicgroupnav.php:93
 msgid "Popular notices"
 msgstr "最新被收藏的消息"
 #: lib/publicgroupnav.php:93
 msgid "Popular notices"
 msgstr "最新被收藏的消息"
@@ -1634,7 +2184,7 @@ msgid ""
 msgstr "现在就[注册一个账户](%%action.register%%)并成为第一个添加收藏的人!"
 
 #: actions/favoritesrss.php:111 actions/showfavorites.php:77
 msgstr "现在就[注册一个账户](%%action.register%%)并成为第一个添加收藏的人!"
 
 #: actions/favoritesrss.php:111 actions/showfavorites.php:77
-#: lib/personalgroupnav.php:115
+#: lib/personalgroupnav.php:118
 #, php-format
 msgid "%s's favorite notices"
 msgstr "%s收藏的消息"
 #, php-format
 msgid "%s's favorite notices"
 msgstr "%s收藏的消息"
@@ -1703,7 +2253,7 @@ msgstr "无法将 request token 转换为 access token。"
 msgid "Remote service uses unknown version of OMB protocol."
 msgstr "远程服务使用了未知版本的 OMB 协议。"
 
 msgid "Remote service uses unknown version of OMB protocol."
 msgstr "远程服务使用了未知版本的 OMB 协议。"
 
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
+#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:317
 msgid "Error updating remote profile."
 msgstr "更新远程的个人信息时出错。"
 
 msgid "Error updating remote profile."
 msgstr "更新远程的个人信息时出错。"
 
@@ -1731,19 +2281,23 @@ msgstr "你不能在这个网站授予用户权限。"
 msgid "User already has this role."
 msgstr "用户已有此权限。"
 
 msgid "User already has this role."
 msgstr "用户已有此权限。"
 
+#. 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/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 "没有指定的用户。"
 
 #: lib/profileformaction.php:79
 msgid "No profile specified."
 msgstr "没有指定的用户。"
 
-#: 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 "此 ID 没有用户。"
 
 #: actions/unsubscribe.php:84 lib/profileformaction.php:86
 msgid "No profile with that ID."
 msgstr "此 ID 没有用户。"
 
-#: 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 "没有指定小组。"
 #: actions/makeadmin.php:81
 msgid "No group specified."
 msgstr "没有指定小组。"
@@ -1806,8 +2360,10 @@ msgid ""
 "palette of your choice."
 msgstr "通过背景图片和颜色板来自定义你的小组的外观。"
 
 "palette of your choice."
 msgstr "通过背景图片和颜色板来自定义你的小组的外观。"
 
+#. 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
 #: 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 "无法更新你的外观。"
 
 msgid "Couldn't update your design."
 msgstr "无法更新你的外观。"
 
@@ -1825,6 +2381,14 @@ msgid ""
 "You can upload a logo image for your group. The maximum file size is %s."
 msgstr "你可以给你的小组上传一个 logo。文件最大限制为%s。"
 
 "You can upload a logo image for your group. The maximum file size is %s."
 msgstr "你可以给你的小组上传一个 logo。文件最大限制为%s。"
 
+#: actions/grouplogo.php:236
+msgid "Upload"
+msgstr "上传"
+
+#: actions/grouplogo.php:289
+msgid "Crop"
+msgstr "剪裁"
+
 #: actions/grouplogo.php:365
 msgid "Pick a square area of the image to be the logo."
 msgstr "请选择一块方形区域作为 logo。"
 #: actions/grouplogo.php:365
 msgid "Pick a square area of the image to be the logo."
 msgstr "请选择一块方形区域作为 logo。"
@@ -1887,15 +2451,6 @@ msgctxt "TOOLTIP"
 msgid "Make this user an admin"
 msgstr "将这个用户设为管理员"
 
 msgid "Make this user an admin"
 msgstr "将这个用户设为管理员"
 
-#. 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:68
-#, php-format
-msgid "%s timeline"
-msgstr "%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
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
 #: actions/grouprss.php:142
 #, php-format
@@ -1964,15 +2519,18 @@ msgstr ""
 "现在就 [注册一个帐号](%%action.register%%) 并 [创建该小组](%%action.newgroup%"
 "%) !"
 
 "现在就 [注册一个帐号](%%action.register%%) 并 [创建该小组](%%action.newgroup%"
 "%) !"
 
-#: 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 "只有管理员可以取消屏蔽小组成员。"
 
 msgid "Only an admin can unblock group members."
 msgstr "只有管理员可以取消屏蔽小组成员。"
 
-#: 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 "用户未被小组屏蔽。"
 
 msgid "User is not blocked from group."
 msgstr "用户未被小组屏蔽。"
 
-#: 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 "取消屏蔽时出错。"
 
 msgid "Error removing the block."
 msgstr "取消屏蔽时出错。"
 
@@ -2059,7 +2617,7 @@ msgid "Publish a MicroID for my Jabber/GTalk address."
 msgstr "公开 Jabber/GTalk 帐号的 MicroID。"
 
 #. TRANS: Confirmation message for successful IM preferences save.
 msgstr "公开 Jabber/GTalk 帐号的 MicroID。"
 
 #. 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 "首选项已保存。"
 
 msgid "Preferences saved."
 msgstr "首选项已保存。"
 
@@ -2137,89 +2695,123 @@ msgstr "%s 的收件箱"
 msgid "This is your inbox, which lists your incoming private messages."
 msgstr "这是你的收件箱,包含发给你的私信。"
 
 msgid "This is your inbox, which lists your incoming private messages."
 msgstr "这是你的收件箱,包含发给你的私信。"
 
-#: 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 "邀请已被禁用。"
 
 msgid "Invites have been disabled."
 msgstr "邀请已被禁用。"
 
-#: 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 "你必须登录才能邀请他人使用%s。"
 
 #, php-format
 msgid "You must be logged in to invite other users to use %s."
 msgstr "你必须登录才能邀请他人使用%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
 #, php-format
-msgid "Invalid email address: %s"
+msgid "Invalid email address: %s."
 msgstr "无效的电子邮件地址:%s"
 
 msgstr "无效的电子邮件地址:%s"
 
-#: actions/invite.php:110
-msgid "Invitation(s) sent"
-msgstr "已发送邀请"
+#. TRANS: Page title when invitations have been sent.
+#: actions/invite.php:116
+msgid "Invitations sent"
+msgstr "邀请已发送"
 
 
-#: actions/invite.php:112
+#. TRANS: Page title when inviting potential users.
+#: actions/invite.php:119
 msgid "Invite new users"
 msgstr "邀请新用户"
 
 msgid "Invite new users"
 msgstr "邀请新用户"
 
-#: actions/invite.php:128
-msgid "You are already subscribed to these users:"
-msgstr "你已经关注了这些用户:"
+#. 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] "你已经关注了这些用户:"
 
 
-#. 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:426
+#. 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
 #, php-format
+msgctxt "INVITE"
 msgid "%1$s (%2$s)"
 msgstr "%1$s (%2$s)"
 
 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:"
 "These people are already users and you were automatically subscribed to them:"
-msgstr "这些好友已注册,你已自动关注了这些用户:"
-
-#: actions/invite.php:144
-msgid "Invitation(s) sent to the following people:"
-msgstr "已发送邀请给这些人:"
-
-#: actions/invite.php:150
+msgstr[0] "这些人已经注册了用户,你已自动关注了他们:"
+
+#. 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] "邀请已发送给了这些人:"
+
+#. 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!"
 msgstr "如果其他人接受邀请并注册,你将得到通知。谢谢你推动了社区发展壮大!"
 
 msgid ""
 "You will be notified when your invitees accept the invitation and register "
 "on the site. Thanks for growing the community!"
 msgstr "如果其他人接受邀请并注册,你将得到通知。谢谢你推动了社区发展壮大!"
 
-#: 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 "使用这个表单来邀请好友和同事加入。"
 
 msgid ""
 "Use this form to invite your friends and colleagues to use this service."
 msgstr "使用这个表单来邀请好友和同事加入。"
 
-#: actions/invite.php:187
+#. TRANS: Field label for a list of e-mail addresses.
+#: actions/invite.php:217
 msgid "Email addresses"
 msgstr "电邮地址"
 
 msgid "Email addresses"
 msgstr "电邮地址"
 
-#: 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 "要邀请的好友地址(每行一个)"
 
 msgid "Addresses of friends to invite (one per line)"
 msgstr "要邀请的好友地址(每行一个)"
 
-#: actions/invite.php:192
+#. TRANS: Field label for a personal message to send to invitees.
+#: actions/invite.php:224
 msgid "Personal message"
 msgstr "个人消息"
 
 msgid "Personal message"
 msgstr "个人消息"
 
-#: 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 "在邀请中加几句话(可选)。"
 
 #. TRANS: Send button for inviting friends
 msgid "Optionally add a personal message to the invitation."
 msgstr "在邀请中加几句话(可选)。"
 
 #. TRANS: Send button for inviting friends
-#: actions/invite.php:198
+#: actions/invite.php:231
 msgctxt "BUTTON"
 msgid "Send"
 msgstr "发布"
 
 msgctxt "BUTTON"
 msgid "Send"
 msgstr "发布"
 
-#. 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 邀请你加入 %2$s"
 
 #, php-format
 msgid "%1$s has invited you to join them on %2$s"
 msgstr "%1$s 邀请你加入 %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"
 #, php-format
 msgid ""
 "%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2276,10 +2868,6 @@ msgstr ""
 msgid "You must be logged in to join a group."
 msgstr "你必须登录才能加入小组。"
 
 msgid "You must be logged in to join a group."
 msgstr "你必须登录才能加入小组。"
 
-#: actions/joingroup.php:88 actions/leavegroup.php:88
-msgid "No nickname or ID."
-msgstr "没有昵称或 ID。"
-
 #: actions/joingroup.php:141
 #, php-format
 msgid "%1$s joined group %2$s"
 #: actions/joingroup.php:141
 #, php-format
 msgid "%1$s joined group %2$s"
@@ -2320,8 +2908,8 @@ msgid ""
 msgstr "当使用版权所有的许可协议时,你必须指定内容的所有者。"
 
 #: actions/licenseadminpanel.php:156
 msgstr "当使用版权所有的许可协议时,你必须指定内容的所有者。"
 
 #: actions/licenseadminpanel.php:156
-msgid "Invalid license title. Max length is 255 characters."
-msgstr "无效的许可协议标题。最大长度255个字符。"
+msgid "Invalid license title. Maximum length is 255 characters."
+msgstr "无效的许可标题。最大长度255个字符。"
 
 #: actions/licenseadminpanel.php:168
 msgid "Invalid license URL."
 
 #: actions/licenseadminpanel.php:168
 msgid "Invalid license URL."
@@ -2423,11 +3011,11 @@ msgstr "登录"
 msgid "Login to site"
 msgstr "登录"
 
 msgid "Login to site"
 msgstr "登录"
 
-#: actions/login.php:258 actions/register.php:485
+#: actions/login.php:258 actions/register.php:492
 msgid "Remember me"
 msgstr "记住登录状态"
 
 msgid "Remember me"
 msgstr "记住登录状态"
 
-#: actions/login.php:259 actions/register.php:487
+#: actions/login.php:259 actions/register.php:494
 msgid "Automatically login in the future; not for shared computers!"
 msgstr "下次自动登录,请不要在公共电脑上使用此选项!"
 
 msgid "Automatically login in the future; not for shared computers!"
 msgstr "下次自动登录,请不要在公共电脑上使用此选项!"
 
@@ -2474,72 +3062,76 @@ msgstr "无法让%1$s成为%2$s小组的管理员。"
 msgid "No current status."
 msgstr "没有当前消息。"
 
 msgid "No current status."
 msgstr "没有当前消息。"
 
+#. TRANS: This is the title of the form for adding a new application.
 #: actions/newapplication.php:52
 #: actions/newapplication.php:52
-msgid "New Application"
+msgid "New application"
 msgstr "新应用"
 
 msgstr "新应用"
 
-#: 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 "你必须登录才能登记你的应用。"
 
 msgid "You must be logged in to register an application."
 msgstr "你必须登录才能登记你的应用。"
 
-#: actions/newapplication.php:143
+#: actions/newapplication.php:147
 msgid "Use this form to register a new application."
 msgstr "通过此表单登记一个新的应用。"
 
 msgid "Use this form to register a new application."
 msgstr "通过此表单登记一个新的应用。"
 
-#: actions/newapplication.php:176
+#: actions/newapplication.php:184
 msgid "Source URL is required."
 msgstr "Source URL 必填。"
 
 msgid "Source URL is required."
 msgstr "Source URL 必填。"
 
-#: actions/newapplication.php:258 actions/newapplication.php:267
+#: actions/newapplication.php:266 actions/newapplication.php:275
 msgid "Could not create application."
 msgstr "无法创建应用。"
 
 msgid "Could not create application."
 msgstr "无法创建应用。"
 
+#. TRANS: Title for form to create a group.
 #: actions/newgroup.php:53
 msgid "New group"
 msgstr "新小组"
 
 #: actions/newgroup.php:53
 msgid "New group"
 msgstr "新小组"
 
+#. TRANS: Form instructions for group create form.
 #: actions/newgroup.php:110
 msgid "Use this form to create a new group."
 msgstr "通过此表单创建小组。"
 
 #: actions/newgroup.php:110
 msgid "Use this form to create a new group."
 msgstr "通过此表单创建小组。"
 
-#: actions/newmessage.php:71 actions/newmessage.php:231
+#: actions/newmessage.php:71 actions/newmessage.php:234
 msgid "New message"
 msgstr "新消息"
 
 #. 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).
 msgid "New message"
 msgstr "新消息"
 
 #. 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:499
+#: actions/newmessage.php:121 actions/newmessage.php:164 lib/command.php:501
 msgid "You can't send a message to this user."
 msgstr "无法向此用户发送消息。"
 
 #. 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.
 msgid "You can't send a message to this user."
 msgstr "无法向此用户发送消息。"
 
 #. 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:478
-#: lib/command.php:579
+#: actions/newmessage.php:144 actions/newnotice.php:140 lib/command.php:478
+#: lib/command.php:581
 msgid "No content!"
 msgstr "没有内容!"
 
 msgid "No content!"
 msgstr "没有内容!"
 
-#: actions/newmessage.php:158
+#: actions/newmessage.php:161
 msgid "No recipient specified."
 msgstr "没有收件人。"
 
 #. TRANS: Error text shown when trying to send a direct message to self.
 msgid "No recipient specified."
 msgstr "没有收件人。"
 
 #. TRANS: Error text shown when trying to send a direct message to self.
-#: actions/newmessage.php:164 lib/command.php:503
+#: actions/newmessage.php:167 lib/command.php:505
 msgid ""
 "Don't send a message to yourself; just say it to yourself quietly instead."
 msgstr "不要向自己发送消息;跟自己悄悄说就得了。"
 
 msgid ""
 "Don't send a message to yourself; just say it to yourself quietly instead."
 msgstr "不要向自己发送消息;跟自己悄悄说就得了。"
 
-#: actions/newmessage.php:181
+#: actions/newmessage.php:184
 msgid "Message sent"
 msgstr "消息已发送"
 
 #. TRANS: Message given have sent a direct message to another user.
 #. TRANS: %s is the name of the other user.
 msgid "Message sent"
 msgstr "消息已发送"
 
 #. 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:511
+#: actions/newmessage.php:188 lib/command.php:513
 #, php-format
 msgid "Direct message to %s sent."
 msgstr "向%s发送私信成功。"
 
 #, php-format
 msgid "Direct message to %s sent."
 msgstr "向%s发送私信成功。"
 
-#: actions/newmessage.php:210 actions/newnotice.php:261
+#: actions/newmessage.php:213 actions/newnotice.php:264
 msgid "Ajax Error"
 msgstr "Ajax错误"
 
 msgid "Ajax Error"
 msgstr "Ajax错误"
 
@@ -2547,7 +3139,7 @@ msgstr "Ajax错误"
 msgid "New notice"
 msgstr "新消息"
 
 msgid "New notice"
 msgstr "新消息"
 
-#: actions/newnotice.php:227
+#: actions/newnotice.php:230
 msgid "Notice posted"
 msgstr "消息已发布。"
 
 msgid "Notice posted"
 msgstr "消息已发布。"
 
@@ -2599,8 +3191,9 @@ msgstr "%2$s上符合搜索关键字\"%1$s\"的更新!"
 
 #: actions/nudge.php:85
 msgid ""
 
 #: actions/nudge.php:85
 msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set their email yet."
-msgstr "此用户不允许呼叫或者还没有验证其电子邮件地址。"
+"This user doesn't allow nudges or hasn't confirmed or set their email "
+"address yet."
+msgstr "该用户不允许对其呼叫或者还没有验证电子邮件地址。"
 
 #: actions/nudge.php:94
 msgid "Nudge sent"
 
 #: actions/nudge.php:94
 msgid "Nudge sent"
@@ -2610,72 +3203,98 @@ msgstr "呼叫已发出。"
 msgid "Nudge sent!"
 msgstr "呼叫已发出!"
 
 msgid "Nudge sent!"
 msgstr "呼叫已发出!"
 
-#: 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 "必须登录才能查看你的应用列表。"
 
 msgid "You must be logged in to list your applications."
 msgstr "必须登录才能查看你的应用列表。"
 
-#: actions/oauthappssettings.php:74
+#. TRANS: Page title for OAuth applications
+#: actions/oauthappssettings.php:76
 msgid "OAuth applications"
 msgstr "OAuth 应用"
 
 msgid "OAuth applications"
 msgstr "OAuth 应用"
 
-#: actions/oauthappssettings.php:85
+#. TRANS: Page instructions for OAuth applications
+#: actions/oauthappssettings.php:88
 msgid "Applications you have registered"
 msgstr "你已经登记的程序。"
 
 msgid "Applications you have registered"
 msgstr "你已经登记的程序。"
 
-#: 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 "你还没登记任何程序。"
 
 #, php-format
 msgid "You have not registered any applications yet."
 msgstr "你还没登记任何程序。"
 
-#: actions/oauthconnectionssettings.php:72
+#. TRANS: Title for OAuth connection settings.
+#: actions/oauthconnectionssettings.php:71
 msgid "Connected applications"
 msgstr "关联的应用"
 
 msgid "Connected applications"
 msgstr "关联的应用"
 
+#. TRANS: Instructions for OAuth connection settings.
 #: actions/oauthconnectionssettings.php:83
 #: actions/oauthconnectionssettings.php:83
-msgid "You have allowed the following applications to access your account."
-msgstr "你已允许以下程序访问你的帐号。"
+msgid "The following connections exist for your account."
+msgstr "你的账号的关联。"
 
 
-#: 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 "你不是那个应用的用户。"
 
 msgid "You are not a user of that application."
 msgstr "你不是那个应用的用户。"
 
-#: 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 application: %s."
+msgstr "不能取消%s应用的访问。"
+
+#. 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
 #, php-format
-msgid "Unable to revoke access for app: %s."
-msgstr "不能取消%s程序的访问。"
+msgid ""
+"You have successfully revoked access for %1$s and the access token starting "
+"with %2$s."
+msgstr "你已成功取消了%1$s的访问,access token 中前面的部分是 %2$s。"
 
 
-#: actions/oauthconnectionssettings.php:198
+#. 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 "你还没允许任何程序使用你的账户。"
 
 msgid "You have not authorized any applications to use your account."
 msgstr "你还没允许任何程序使用你的账户。"
 
-#: actions/oauthconnectionssettings.php:211
-msgid "Developers can edit the registration settings for their applications "
-msgstr "开发者可以修改他们程序的登记设置 "
+#. 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 ""
+"你是开发者么?[注册一个 OAuth 客户端应用](%s) 来使用这个 StatusNet 网站。"
 
 #: actions/oembed.php:80 actions/shownotice.php:100
 msgid "Notice has no profile."
 msgstr "消息没有对应用户。"
 
 
 #: actions/oembed.php:80 actions/shownotice.php:100
 msgid "Notice has no profile."
 msgstr "消息没有对应用户。"
 
-#: 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 "%1$s在%2$s时发的消息"
 
 #. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
 #, php-format
 msgid "%1$s's status on %2$s"
 msgstr "%1$s在%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 "%s内容类型不被支持。"
 
 #. TRANS: Error message displaying attachments. %s is the site's base URL.
 #, php-format
 msgid "Content type %s not supported."
 msgstr "%s内容类型不被支持。"
 
 #. 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 "请只用HTTP明文的%sURLs的地址。"
 
 #. TRANS: Client error on an API request with an unsupported data format.
 #, php-format
 msgid "Only %s URLs over plain HTTP please."
 msgstr "请只用HTTP明文的%sURLs的地址。"
 
 #. TRANS: Client error on an API request with an unsupported data format.
-#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1200
-#: lib/apiaction.php:1227 lib/apiaction.php:1350
+#: 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 "不支持的数据格式。"
 
 msgid "Not a supported data format."
 msgstr "不支持的数据格式。"
 
@@ -2687,36 +3306,45 @@ msgstr "搜索用户"
 msgid "Notice Search"
 msgstr "搜索消息"
 
 msgid "Notice Search"
 msgstr "搜索消息"
 
-#: actions/othersettings.php:60
+#: actions/othersettings.php:59
 msgid "Other settings"
 msgstr "其他设置"
 
 msgid "Other settings"
 msgstr "其他设置"
 
+#. TRANS: Instructions for tab "Other" in user profile settings.
 #: actions/othersettings.php:71
 msgid "Manage various other options."
 msgstr "管理其他选项。"
 
 #: actions/othersettings.php:71
 msgid "Manage various other options."
 msgstr "管理其他选项。"
 
-#: 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 "(免费服务)"
 
 msgid " (free service)"
 msgstr "(免费服务)"
 
-#: actions/othersettings.php:116
+#. TRANS: Label for dropdown with URL shortener services.
+#: actions/othersettings.php:120
 msgid "Shorten URLs with"
 msgstr "缩短 URL 使用"
 
 msgid "Shorten URLs with"
 msgstr "缩短 URL 使用"
 
-#: actions/othersettings.php:117
+#. TRANS: Tooltip for for dropdown with URL shortener services.
+#: actions/othersettings.php:122
 msgid "Automatic shortening service to use."
 msgstr "要使用的自动短网址服务。"
 
 msgid "Automatic shortening service to use."
 msgstr "要使用的自动短网址服务。"
 
-#: actions/othersettings.php:122
+#. TRANS: Label for checkbox.
+#: actions/othersettings.php:128
 msgid "View profile designs"
 msgstr "查看个人页面外观"
 
 msgid "View profile designs"
 msgstr "查看个人页面外观"
 
-#: actions/othersettings.php:123
+#. TRANS: Tooltip for checkbox.
+#: actions/othersettings.php:130
 msgid "Show or hide profile designs."
 msgstr "显示或隐藏个人页面外观。"
 
 msgid "Show or hide profile designs."
 msgstr "显示或隐藏个人页面外观。"
 
-#: 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 "短网址服务过长(不能超过50个字符)。"
 
 #: actions/otp.php:69
 msgstr "短网址服务过长(不能超过50个字符)。"
 
 #: actions/otp.php:69
@@ -2778,7 +3406,7 @@ msgid "6 or more characters"
 msgstr "6 个或更多字符"
 
 #: actions/passwordsettings.php:112 actions/recoverpassword.php:239
 msgstr "6 个或更多字符"
 
 #: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:440
+#: actions/register.php:442
 msgid "Confirm"
 msgstr "密码确认"
 
 msgid "Confirm"
 msgstr "密码确认"
 
@@ -2790,11 +3418,11 @@ msgstr "与上面相同的密码"
 msgid "Change"
 msgstr "修改"
 
 msgid "Change"
 msgstr "修改"
 
-#: actions/passwordsettings.php:154 actions/register.php:237
+#: actions/passwordsettings.php:154 actions/register.php:239
 msgid "Password must be 6 or more characters."
 msgstr "密码必须包含 6 个或更多字符。"
 
 msgid "Password must be 6 or more characters."
 msgstr "密码必须包含 6 个或更多字符。"
 
-#: actions/passwordsettings.php:157 actions/register.php:240
+#: actions/passwordsettings.php:157 actions/register.php:242
 msgid "Passwords don't match."
 msgstr "密码不匹配。"
 
 msgid "Passwords don't match."
 msgstr "密码不匹配。"
 
@@ -2814,156 +3442,273 @@ msgstr "无法保存新密码。"
 msgid "Password saved."
 msgstr "密码已保存。"
 
 msgid "Password saved."
 msgstr "密码已保存。"
 
+#. TRANS: Title for Paths admin panel.
 #. TRANS: Menu item for site administration
 #. 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 "路径"
 
 msgid "Paths"
 msgstr "路径"
 
-#: 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 "这个 StatusNet 网站的路径和服务器设置。"
 
 msgid "Path and server settings for this StatusNet site"
 msgstr "这个 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 "主题目录无法读取:%s。"
 
 #, php-format
 msgid "Theme directory not readable: %s."
 msgstr "主题目录无法读取:%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 "头像目录无法写入:%s。"
 
 #: actions/pathsadminpanel.php:163
 #, php-format
 msgid "Avatar directory not writable: %s."
 msgstr "头像目录无法写入:%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 "背景目录无法写入:%s。"
 
 #, php-format
 msgid "Background directory not writable: %s."
 msgstr "背景目录无法写入:%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 "本地化目录无法读取:%s。"
 
 #, php-format
 msgid "Locales directory not readable: %s."
 msgstr "本地化目录无法读取:%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 "无效的 SSL 服务器。最大长度255个字符。"
 
 msgid "Invalid SSL server. The maximum length is 255 characters."
 msgstr "无效的 SSL 服务器。最大长度255个字符。"
 
-#: 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 "网站"
 
 msgid "Site"
 msgstr "网站"
 
-#: 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 "服务器"
 
 msgid "Server"
 msgstr "服务器"
 
-#: actions/pathsadminpanel.php:238
+#: actions/pathsadminpanel.php:242
 msgid "Site's server hostname."
 msgstr "网站的服务器主机名。"
 
 msgid "Site's server hostname."
 msgstr "网站的服务器主机名。"
 
-#: 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 "路径"
 
 msgid "Path"
 msgstr "路径"
 
-#: actions/pathsadminpanel.php:242
-msgid "Site path"
+#: actions/pathsadminpanel.php:249
+msgid "Site path."
 msgstr "网站路径"
 
 msgstr "网站路径"
 
-#: actions/pathsadminpanel.php:246
-msgid "Path to locales"
-msgstr "本地化文件路径"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:255
+msgid "Locale directory"
+msgstr "本地化目录"
 
 
-#: actions/pathsadminpanel.php:246
-msgid "Directory path to locales"
+#: actions/pathsadminpanel.php:256
+msgid "Directory path to locales."
 msgstr "本地化文件的目录路径"
 
 msgstr "本地化文件的目录路径"
 
-#: actions/pathsadminpanel.php:250
+#. TRANS: Checkbox label in Paths admin panel.
+#: actions/pathsadminpanel.php:263
 msgid "Fancy URLs"
 msgstr "优化 URLs"
 
 msgid "Fancy URLs"
 msgstr "优化 URLs"
 
-#: actions/pathsadminpanel.php:252
+#: actions/pathsadminpanel.php:265
 msgid "Use fancy (more readable and memorable) URLs?"
 msgstr "使用优化的 URLs(更简洁易记)?"
 
 msgid "Use fancy (more readable and memorable) URLs?"
 msgstr "使用优化的 URLs(更简洁易记)?"
 
-#: actions/pathsadminpanel.php:259
+#: actions/pathsadminpanel.php:272
 msgid "Theme"
 msgstr "主题"
 
 msgid "Theme"
 msgstr "主题"
 
-#: actions/pathsadminpanel.php:264
-msgid "Theme server"
-msgstr "主题服务器"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:281
+msgid "Server for themes."
+msgstr "主题服务器。"
 
 
-#: actions/pathsadminpanel.php:268
-msgid "Theme path"
-msgstr "主题路径"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:290
+msgid "Web path to themes."
+msgstr "主题的网站路径。"
 
 
-#: actions/pathsadminpanel.php:272
-msgid "Theme directory"
-msgstr "主题目录"
+#. 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 "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 "SSL 主题服务器(默认:SSL 服务器)。"
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:306 actions/pathsadminpanel.php:397
+#: actions/pathsadminpanel.php:452
+msgid "SSL path"
+msgstr "SSL 路径"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:308
+msgid "SSL path to themes (default: /theme/)."
+msgstr "SSL 主题路径(默认:/theme/)。"
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:315 actions/pathsadminpanel.php:406
+#: actions/pathsadminpanel.php:461
+msgid "Directory"
+msgstr "目录"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:317
+msgid "Directory where themes are located."
+msgstr "主题文件的目录。"
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:326
 msgid "Avatars"
 msgstr "头像"
 
 msgid "Avatars"
 msgstr "头像"
 
-#: actions/pathsadminpanel.php:284
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:333
 msgid "Avatar server"
 msgstr "头像服务器"
 
 msgid "Avatar server"
 msgstr "头像服务器"
 
-#: actions/pathsadminpanel.php:288
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:335
+msgid "Server for avatars."
+msgstr "头像服务器。"
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:342
 msgid "Avatar path"
 msgstr "头像路径"
 
 msgid "Avatar path"
 msgstr "头像路径"
 
-#: actions/pathsadminpanel.php:292
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:344
+msgid "Web path to avatars."
+msgstr "头像的网站路径。"
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:351
 msgid "Avatar directory"
 msgstr "头像目录"
 
 msgid "Avatar directory"
 msgstr "头像目录"
 
-#: actions/pathsadminpanel.php:301
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:353
+msgid "Directory where avatars are located."
+msgstr "头像文件的目录。"
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:364
 msgid "Backgrounds"
 msgstr "背景"
 
 msgid "Backgrounds"
 msgstr "背景"
 
-#: actions/pathsadminpanel.php:305
-msgid "Background server"
-msgstr "背景服务器"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:372
+msgid "Server for backgrounds."
+msgstr "背景服务器。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:381
+msgid "Web path to backgrounds."
+msgstr "背景的网站路径。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:390
+msgid "Server for backgrounds on SSL pages."
+msgstr "SSL 页面的背景服务器。"
 
 
-#: actions/pathsadminpanel.php:309
-msgid "Background path"
-msgstr "背景图路径"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:399
+msgid "Web path to backgrounds on SSL pages."
+msgstr "SSL 页面的背景网站路径。"
 
 
-#: actions/pathsadminpanel.php:313
-msgid "Background directory"
-msgstr "背景图目录"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:408
+msgid "Directory where backgrounds are located."
+msgstr "背景文件的目录。"
 
 
-#: actions/pathsadminpanel.php:320
+#. 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 "附件"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:427
+msgid "Server for attachments."
+msgstr "附件服务器。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:436
+msgid "Web path to attachments."
+msgstr "附件的网站路径。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:445
+msgid "Server for attachments on SSL pages."
+msgstr "SSL 页面的附件服务器。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:454
+msgid "Web path to attachments on SSL pages."
+msgstr "SSL 页面的附件网站路径。"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:463
+msgid "Directory where attachments are located."
+msgstr "附件文件的目录。"
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:472
 msgid "SSL"
 msgstr "SSL"
 
 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 "从不"
 
 msgid "Never"
 msgstr "从不"
 
-#: 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 "有时"
 
 msgid "Sometimes"
 msgstr "有时"
 
-#: 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 "总是"
 
 msgid "Always"
 msgstr "总是"
 
-#: actions/pathsadminpanel.php:329
+#: actions/pathsadminpanel.php:485
 msgid "Use SSL"
 msgstr "使用 SSL"
 
 msgid "Use SSL"
 msgstr "使用 SSL"
 
-#: actions/pathsadminpanel.php:330
-msgid "When to use SSL"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:487
+msgid "When to use SSL."
 msgstr "什么时候使用 SSL"
 
 msgstr "什么时候使用 SSL"
 
-#: actions/pathsadminpanel.php:335
-msgid "SSL server"
-msgstr "SSL 服务器"
-
-#: actions/pathsadminpanel.php:336
-msgid "Server to direct SSL requests to"
-msgstr "直接SSL请求访问的服务器"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:497
+msgid "Server to direct SSL requests to."
+msgstr "直接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 "保存路径"
 
 msgid "Save paths"
 msgstr "保存路径"
 
@@ -2999,135 +3744,175 @@ msgstr "无效的消息内容。"
 msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
 msgstr "消息许可证“%1$s”与这个网站的许可证“%2$s”不兼容。"
 
 msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
 msgstr "消息许可证“%1$s”与这个网站的许可证“%2$s”不兼容。"
 
-#: actions/profilesettings.php:60
+#. TRANS: Page title for profile settings.
+#: actions/profilesettings.php:61
 msgid "Profile settings"
 msgstr "个人设置"
 
 msgid "Profile settings"
 msgstr "个人设置"
 
-#: 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 "在这里更新个人信息,让大家对你了解得更多。"
 
 msgid ""
 "You can update your personal profile info here so people know more about you."
 msgstr "在这里更新个人信息,让大家对你了解得更多。"
 
-#: actions/profilesettings.php:99
+#. TRANS: Profile settings form legend.
+#: actions/profilesettings.php:102
 msgid "Profile information"
 msgstr "个人信息"
 
 msgid "Profile information"
 msgstr "个人信息"
 
-#: actions/profilesettings.php:108 lib/groupeditform.php:154
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
-msgstr "1 到 64 个小写字母或数字,不包含标点或空格"
+#. 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 个小写字母或数字,不包含标点或空格。"
 
 
-#: 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:457
+#: actions/showgroup.php:252 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:152
 msgid "Full name"
 msgstr "全名"
 
 msgid "Full name"
 msgstr "全名"
 
+#. TRANS: Field label in form for profile settings.
 #. TRANS: Form input field label.
 #. TRANS: Form input field label.
-#: actions/profilesettings.php:115 actions/register.php:460
+#: actions/profilesettings.php:122 actions/register.php:462
 #: lib/applicationeditform.php:236 lib/groupeditform.php:161
 msgid "Homepage"
 msgstr "主页"
 
 #: lib/applicationeditform.php:236 lib/groupeditform.php:161
 msgid "Homepage"
 msgstr "主页"
 
-#: actions/profilesettings.php:117 actions/register.php:462
-msgid "URL of your homepage, blog, or profile on another site"
-msgstr "你的主页、博客或在其他网站的URL"
+#. 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 "你的主页、博客或在其他网站的URL。"
 
 
-#: 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:473
 #, php-format
 #, php-format
-msgid "Describe yourself and your interests in %d chars"
-msgstr "用不超过%d个字符描述你自己和你的兴趣"
+msgid "Describe yourself and your interests in %d character"
+msgid_plural "Describe yourself and your interests in %d characters"
+msgstr[0] "用不超过%d个字符描述你自己和你的兴趣"
 
 
-#: 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:478
 msgid "Describe yourself and your interests"
 msgstr "描述你自己和你的兴趣"
 
 msgid "Describe yourself and your interests"
 msgstr "描述你自己和你的兴趣"
 
-#: 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:480
 msgid "Bio"
 msgstr "自述"
 
 msgid "Bio"
 msgstr "自述"
 
-#: 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:485
+#: actions/showgroup.php:262 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:180
+#: lib/userprofile.php:167
 msgid "Location"
 msgstr "位置"
 
 msgid "Location"
 msgstr "位置"
 
-#: 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:487
 msgid "Where you are, like \"City, State (or Region), Country\""
 msgstr "你的地理位置,格式类似\"城市,省份,国家\""
 
 msgid "Where you are, like \"City, State (or Region), Country\""
 msgstr "你的地理位置,格式类似\"城市,省份,国家\""
 
-#: 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 "当发布消息时分享我的地理位置"
 
 msgid "Share my current location when posting notices"
 msgstr "当发布消息时分享我的地理位置"
 
-#: 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
 #: 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 "标签"
 
 msgid "Tags"
 msgstr "标签"
 
-#: 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 "你的标签 (字母、数字、“-”、“. ”和“ _”), 以逗号或空格分隔"
 
 msgid ""
 "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
 msgstr "你的标签 (字母、数字、“-”、“. ”和“ _”), 以逗号或空格分隔"
 
-#: actions/profilesettings.php:151
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:173
 msgid "Language"
 msgstr "语言"
 
 msgid "Language"
 msgstr "语言"
 
-#: actions/profilesettings.php:152
+#. TRANS: Tooltip for dropdown list label in form for profile settings.
+#: actions/profilesettings.php:175
 msgid "Preferred language"
 msgstr "首选语言"
 
 msgid "Preferred language"
 msgstr "首选语言"
 
-#: actions/profilesettings.php:161
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:185
 msgid "Timezone"
 msgstr "时区"
 
 msgid "Timezone"
 msgstr "时区"
 
-#: 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 "你一般处于哪个时区?"
 
 msgid "What timezone are you normally in?"
 msgstr "你一般处于哪个时区?"
 
-#: 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 "自动关注任何关注我的人 (这个选项适合机器人)"
 
 msgid ""
 "Automatically subscribe to whoever subscribes to me (best for non-humans)"
 msgstr "自动关注任何关注我的人 (这个选项适合机器人)"
 
-#: 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:230
 #, php-format
 #, php-format
-msgid "Bio is too long (max %d chars)."
-msgstr "描述过长(不能超过%d个字符)。"
+msgid "Bio is too long (maximum %d character)."
+msgid_plural "Bio is too long (maximum %d characters)."
+msgstr[0] "自述过长(不能超过%d个字符)。"
 
 
-#: 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 "未选择时区。"
 
 msgid "Timezone not selected."
 msgstr "未选择时区。"
 
-#: actions/profilesettings.php:241
-msgid "Language is too long (max 50 chars)."
+#. TRANS: Validation error in form for profile settings.
+#: actions/profilesettings.php:281
+msgid "Language is too long (maximum 50 characters)."
 msgstr "语言过长(不能超过50个字符)。"
 
 msgstr "语言过长(不能超过50个字符)。"
 
-#: 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 "无效的标签:\"%s\"。"
 
 #, php-format
 msgid "Invalid tag: \"%s\""
 msgstr "无效的标签:\"%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 "无法更新用户的自动关注。"
 
 msgid "Couldn't update user for autosubscribe."
 msgstr "无法更新用户的自动关注。"
 
-#: 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 "无法保存标签。"
 
 msgid "Couldn't save location prefs."
 msgstr "无法保存标签。"
 
-#: 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 "无法保存个人信息。"
 
 msgid "Couldn't save profile."
 msgstr "无法保存个人信息。"
 
-#: 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 "无法保存标签。"
 
 msgid "Couldn't save tags."
 msgstr "无法保存标签。"
 
+#. TRANS: Confirmation shown when user profile settings are saved.
 #. TRANS: Message after successful saving of administrative settings.
 #. 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 "设置已保存。"
 
 msgid "Settings saved."
 msgstr "设置已保存。"
 
@@ -3201,32 +3986,45 @@ msgstr ""
 "这里是%%site.name%%,一个基于自由软件[StatusNet](http://status.net/)的[微博"
 "客](http://zh.wikipedia.org/zh-hans/%E5%BE%AE%E5%8D%9A%E5%AE%A2) 。"
 
 "这里是%%site.name%%,一个基于自由软件[StatusNet](http://status.net/)的[微博"
 "客](http://zh.wikipedia.org/zh-hans/%E5%BE%AE%E5%8D%9A%E5%AE%A2) 。"
 
+#. TRANS: Title for public tag cloud.
 #: actions/publictagcloud.php:57
 msgid "Public tag cloud"
 msgstr "公开的标签云"
 
 #: actions/publictagcloud.php:57
 msgid "Public tag cloud"
 msgstr "公开的标签云"
 
-#: actions/publictagcloud.php:63
+#. TRANS: Instructions (more used like an explanation/header).
+#. TRANS: %s is the StatusNet sitename.
+#: actions/publictagcloud.php:65
 #, php-format
 #, php-format
-msgid "These are most popular recent tags on %s "
-msgstr "这些是%s最近的流行的标签 "
+msgid "These are most popular recent tags on %s"
+msgstr "这些是%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 "还没有人发布带[标签](%%doc.tags%%)的消息。"
 
 #, php-format
 msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
 msgstr "还没有人发布带[标签](%%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 "成为第一个发布消息的人!"
 
 msgid "Be the first to post one!"
 msgstr "成为第一个发布消息的人!"
 
-#: 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 "
 "one!"
 msgstr "现在就[注册](%%action.register%%)并发布第一个!"
 
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to post "
 "one!"
 msgstr "现在就[注册](%%action.register%%)并发布第一个!"
 
-#: actions/publictagcloud.php:134
+#: actions/publictagcloud.php:146
 msgid "Tag cloud"
 msgstr "标签云"
 
 msgid "Tag cloud"
 msgstr "标签云"
 
@@ -3335,14 +4133,14 @@ msgid "Unexpected password reset."
 msgstr "未预料的密码重置。"
 
 #: actions/recoverpassword.php:365
 msgstr "未预料的密码重置。"
 
 #: actions/recoverpassword.php:365
-msgid "Password must be 6 chars or more."
-msgstr "å¯\86ç \81å¿\85é¡»æ\98¯ 6 ä¸ªå­\97符æ\88\96æ\9b´å¤\9a。"
+msgid "Password must be 6 characters or more."
+msgstr "å¯\86ç \81å¿\85é¡»æ\98¯ 6 ä½\8dæ\88\96æ\9b´å¤\9aå­\97符。"
 
 #: actions/recoverpassword.php:369
 msgid "Password and confirmation do not match."
 msgstr "密码和确认密码不匹配。"
 
 
 #: actions/recoverpassword.php:369
 msgid "Password and confirmation do not match."
 msgstr "密码和确认密码不匹配。"
 
-#: actions/recoverpassword.php:388 actions/register.php:255
+#: actions/recoverpassword.php:388 actions/register.php:257
 msgid "Error setting user."
 msgstr "保存用户设置时出错。"
 
 msgid "Error setting user."
 msgstr "保存用户设置时出错。"
 
@@ -3350,7 +4148,7 @@ msgstr "保存用户设置时出错。"
 msgid "New password successfully saved. You are now logged in."
 msgstr "新密码已保存,你现在已登录。"
 
 msgid "New password successfully saved. You are now logged in."
 msgstr "新密码已保存,你现在已登录。"
 
-#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+#: actions/register.php:92 actions/register.php:196 actions/register.php:414
 msgid "Sorry, only invited people can register."
 msgstr "对不起,只有被邀请的用户才能注册。"
 
 msgid "Sorry, only invited people can register."
 msgstr "对不起,只有被邀请的用户才能注册。"
 
@@ -3362,7 +4160,7 @@ msgstr "对不起,无效的邀请码。"
 msgid "Registration successful"
 msgstr "注册成功"
 
 msgid "Registration successful"
 msgstr "注册成功"
 
-#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:513 lib/logingroupnav.php:85
 msgid "Register"
 msgstr "注册"
 
 msgid "Register"
 msgstr "注册"
 
@@ -3378,11 +4176,11 @@ msgstr "你必须同意许可协议才能注册。"
 msgid "Email address already exists."
 msgstr "电子邮件地址已存在。"
 
 msgid "Email address already exists."
 msgstr "电子邮件地址已存在。"
 
-#: actions/register.php:250 actions/register.php:272
+#: actions/register.php:252 actions/register.php:274
 msgid "Invalid username or password."
 msgstr "用户名或密码不正确。"
 
 msgid "Invalid username or password."
 msgstr "用户名或密码不正确。"
 
-#: actions/register.php:350
+#: actions/register.php:352
 msgid ""
 "With this form you can create a new account. You can then post notices and "
 "link up to friends and colleagues. "
 msgid ""
 "With this form you can create a new account. You can then post notices and "
 "link up to friends and colleagues. "
@@ -3390,55 +4188,59 @@ msgstr ""
 "你可以通过此表单建立一个新的账户。然后你就可以发布消息并与朋友和同事们保持联"
 "系。 "
 
 "你可以通过此表单建立一个新的账户。然后你就可以发布消息并与朋友和同事们保持联"
 "系。 "
 
-#: actions/register.php:432
+#: actions/register.php:434
 msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
 msgstr "1 到 64 位的小写字母或数字,不能使用标点和空格。此项必填。"
 
 msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
 msgstr "1 到 64 位的小写字母或数字,不能使用标点和空格。此项必填。"
 
-#: actions/register.php:437
+#: actions/register.php:439
 msgid "6 or more characters. Required."
 msgstr "至少 6 位字符。此项必填。"
 
 msgid "6 or more characters. Required."
 msgstr "至少 6 位字符。此项必填。"
 
-#: actions/register.php:441
+#: actions/register.php:443
 msgid "Same as password above. Required."
 msgstr "与上面输入相同的密码。此项必填。"
 
 #. TRANS: Link description in user account settings menu.
 msgid "Same as password above. Required."
 msgstr "与上面输入相同的密码。此项必填。"
 
 #. TRANS: Link description in user account settings menu.
-#: actions/register.php:445 actions/register.php:449
+#: actions/register.php:447 actions/register.php:451
 #: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:127
 msgid "Email"
 msgstr "电子邮件"
 
 #: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:127
 msgid "Email"
 msgstr "电子邮件"
 
-#: actions/register.php:446 actions/register.php:450
+#: actions/register.php:448 actions/register.php:452
 msgid "Used only for updates, announcements, and password recovery"
 msgstr "只用于更新、通知及密码恢复"
 
 msgid "Used only for updates, announcements, and password recovery"
 msgstr "只用于更新、通知及密码恢复"
 
-#: actions/register.php:457
+#: actions/register.php:459
 msgid "Longer name, preferably your \"real\" name"
 msgstr "更长的名字,最好是“真实姓名”"
 
 msgid "Longer name, preferably your \"real\" name"
 msgstr "更长的名字,最好是“真实姓名”"
 
-#: actions/register.php:518
+#: actions/register.php:464
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr "你的主页、博客或在其他网站的URL"
+
+#: actions/register.php:525
 #, php-format
 msgid ""
 "I understand that content and data of %1$s are private and confidential."
 msgstr "我明白%1$s的信息是私人且保密的。"
 
 #, php-format
 msgid ""
 "I understand that content and data of %1$s are private and confidential."
 msgstr "我明白%1$s的信息是私人且保密的。"
 
-#: actions/register.php:528
+#: actions/register.php:535
 #, php-format
 msgid "My text and files are copyright by %1$s."
 msgstr "我的文字和文件的版权归%1$s所有。"
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
 #, php-format
 msgid "My text and files are copyright by %1$s."
 msgstr "我的文字和文件的版权归%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:539
 msgid "My text and files remain under my own copyright."
 msgstr "我的文字和文件的版权由我自己保留。"
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
 msgid "My text and files remain under my own copyright."
 msgstr "我的文字和文件的版权由我自己保留。"
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
-#: actions/register.php:535
+#: actions/register.php:542
 msgid "All rights reserved."
 msgstr "保留所有权利。"
 
 #. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
 msgid "All rights reserved."
 msgstr "保留所有权利。"
 
 #. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
-#: actions/register.php:540
+#: actions/register.php:547
 #, php-format
 msgid ""
 "My text and files are available under %s except this private data: password, "
 #, php-format
 msgid ""
 "My text and files are available under %s except this private data: password, "
@@ -3447,7 +4249,7 @@ msgstr ""
 "我的文字和文件在%s下提供,除了如下隐私内容:密码、电子邮件地址、IM 地址和电话"
 "号码。"
 
 "我的文字和文件在%s下提供,除了如下隐私内容:密码、电子邮件地址、IM 地址和电话"
 "号码。"
 
-#: actions/register.php:583
+#: actions/register.php:590
 #, php-format
 msgid ""
 "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
 #, php-format
 msgid ""
 "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3477,7 +4279,7 @@ msgstr ""
 "\n"
 "感谢你的注册,希望你喜欢这个服务。"
 
 "\n"
 "感谢你的注册,希望你喜欢这个服务。"
 
-#: actions/register.php:607
+#: actions/register.php:614
 msgid ""
 "(You should receive a message by email momentarily, with instructions on how "
 "to confirm your email address.)"
 msgid ""
 "(You should receive a message by email momentarily, with instructions on how "
 "to confirm your email address.)"
@@ -3519,7 +4321,7 @@ msgid "URL of your profile on another compatible microblogging service"
 msgstr "你在其他兼容的微博客服务的资料页 URL"
 
 #: actions/remotesubscribe.php:137 lib/subscribeform.php:139
 msgstr "你在其他兼容的微博客服务的资料页 URL"
 
 #: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:406
+#: lib/userprofile.php:411
 msgid "Subscribe"
 msgstr "关注"
 
 msgid "Subscribe"
 msgstr "关注"
 
@@ -3555,7 +4357,7 @@ msgstr "你不能重复自己的消息。"
 msgid "You already repeated that notice."
 msgstr "你已转发过了那个消息。"
 
 msgid "You already repeated that notice."
 msgstr "你已转发过了那个消息。"
 
-#: actions/repeat.php:114 lib/noticelist.php:686
+#: actions/repeat.php:114 lib/noticelist.php:691
 msgid "Repeated"
 msgstr "已转发"
 
 msgid "Repeated"
 msgstr "已转发"
 
@@ -3564,7 +4366,7 @@ msgid "Repeated!"
 msgstr "已转发!"
 
 #: actions/replies.php:126 actions/repliesrss.php:68
 msgstr "已转发!"
 
 #: actions/replies.php:126 actions/repliesrss.php:68
-#: lib/personalgroupnav.php:105
+#: lib/personalgroupnav.php:108
 #, php-format
 msgid "Replies to %s"
 msgstr "对 %s 的回复"
 #, php-format
 msgid "Replies to %s"
 msgstr "对 %s 的回复"
@@ -3694,11 +4496,12 @@ msgstr "组织名称必填。"
 
 #. TRANS: Form input field label.
 #: actions/showapplication.php:187 actions/version.php:200
 
 #. TRANS: Form input field label.
 #: actions/showapplication.php:187 actions/version.php:200
-#: lib/applicationeditform.php:208 lib/groupeditform.php:172
+#: lib/applicationeditform.php:208 lib/groupeditform.php:175
 msgid "Description"
 msgstr "描述"
 
 msgid "Description"
 msgstr "描述"
 
-#: 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 "统计"
 #: lib/profileaction.php:187
 msgid "Statistics"
 msgstr "统计"
@@ -3716,6 +4519,11 @@ msgstr "应用程序动作"
 msgid "Reset key & secret"
 msgstr "重置key和secret"
 
 msgid "Reset key & secret"
 msgstr "重置key和secret"
 
+#: actions/showapplication.php:252 lib/deletegroupform.php:121
+#: lib/deleteuserform.php:66 lib/noticelist.php:672
+msgid "Delete"
+msgstr "删除"
+
 #: actions/showapplication.php:261
 msgid "Application info"
 msgstr "应用程序信息"
 #: actions/showapplication.php:261
 msgid "Application info"
 msgstr "应用程序信息"
@@ -3803,77 +4611,104 @@ msgstr ""
 msgid "This is a way to share what you like."
 msgstr "这是一种分享你喜欢的内容的方式。"
 
 msgid "This is a way to share what you like."
 msgstr "这是一种分享你喜欢的内容的方式。"
 
-#: 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 "%s 小组"
 
 #, php-format
 msgid "%s group"
 msgstr "%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 "%1$s小组,第%2$d页"
 
 #, php-format
 msgid "%1$s group, page %2$d"
 msgstr "%1$s小组,第%2$d页"
 
-#: actions/showgroup.php:227
+#. TRANS: Group profile header (h2). Text hidden by default.
+#: actions/showgroup.php:220
 msgid "Group profile"
 msgstr "小组资料"
 
 msgid "Group profile"
 msgstr "小组资料"
 
-#: 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 互联网地址"
 
 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 "注释"
 
 msgid "Note"
 msgstr "注释"
 
-#: 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 "别名"
 
 msgid "Aliases"
 msgstr "别名"
 
-#: actions/showgroup.php:302
+#. TRANS: Group actions header (h2). Text hidden by default.
+#: actions/showgroup.php:304
 msgid "Group actions"
 msgstr "小组动作"
 
 msgid "Group actions"
 msgstr "小组动作"
 
-#: 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 "%s小组的消息聚合 (RSS 1.0)"
 
 #, php-format
 msgid "Notice feed for %s group (RSS 1.0)"
 msgstr "%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 "%s小组的消息聚合 (RSS 2.0)"
 
 #, php-format
 msgid "Notice feed for %s group (RSS 2.0)"
 msgstr "%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 "%s小组的消息聚合 (Atom)"
 
 #, php-format
 msgid "Notice feed for %s group (Atom)"
 msgstr "%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 "%s 的发件箱"
 
 #, php-format
 msgid "FOAF for %s group"
 msgstr "%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 "小组成员"
 
 msgid "Members"
 msgstr "小组成员"
 
-#: 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 "(无)"
 
 #: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
 #: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
 msgid "(None)"
 msgstr "(无)"
 
-#: 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 "所有成员"
 
 msgid "All members"
 msgstr "所有成员"
 
-#: actions/showgroup.php:439
+#. TRANS: Label for creation date in statistics on group page.
+#: actions/showgroup.php:453
+msgctxt "LABEL"
 msgid "Created"
 msgid "Created"
-msgstr "建立"
+msgstr "已创建"
+
+#. TRANS: Label for member count in statistics on group page.
+#: actions/showgroup.php:461
+msgctxt "LABEL"
+msgid "Members"
+msgstr "成员"
 
 
-#: actions/showgroup.php:455
+#. 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."
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3888,7 +4723,10 @@ msgstr ""
 "入](%%%%action.register%%%%)成为该小组的一员并享受更多的欢乐!([阅读更多](%%"
 "%%doc.help%%%%))"
 
 "入](%%%%action.register%%%%)成为该小组的一员并享受更多的欢乐!([阅读更多](%%"
 "%%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."
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3901,24 +4739,31 @@ msgstr ""
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)。%%%%site.name%%%%的用户分享关于他们生活和各种兴"
 "趣的消息。"
 
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)。%%%%site.name%%%%的用户分享关于他们生活和各种兴"
 "趣的消息。"
 
-#: actions/showgroup.php:489
+#. TRANS: Header for list of group administrators on a group page (h2).
+#: actions/showgroup.php:515
 msgid "Admins"
 msgstr "管理员"
 
 msgid "Admins"
 msgstr "管理员"
 
-#: 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 "未找到此消息。"
 
 msgid "No such message."
 msgstr "未找到此消息。"
 
-#: 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 "只有发送和接受双方可以阅读此消息。"
 
 msgid "Only the sender and recipient may read this message."
 msgstr "只有发送和接受双方可以阅读此消息。"
 
-#: 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 "发送给 %1$s 的 %2$s 消息"
 
 #, php-format
 msgid "Message to %1$s on %2$s"
 msgstr "发送给 %1$s 的 %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 "来自 %1$s 的 %2$s 消息"
 #, php-format
 msgid "Message from %1$s on %2$s"
 msgstr "来自 %1$s 的 %2$s 消息"
@@ -3927,53 +4772,75 @@ msgstr "来自 %1$s 的 %2$s 消息"
 msgid "Notice deleted."
 msgstr "消息已删除"
 
 msgid "Notice deleted."
 msgstr "消息已删除"
 
-#: 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 的标签 %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
 #, php-format
-msgid " tagged %s"
-msgstr "带%s标签的"
+msgid "%1$s tagged %2$s, page %3$d"
+msgstr "%1$s 的标签 %2$s,第%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,第%2$d页"
 
 #, php-format
 msgid "%1$s, page %2$d"
 msgstr "%1$s,第%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 "%1$s的有%2$s标签的消息聚合 (RSS 1.0)"
 
 #, php-format
 msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
 msgstr "%1$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 "%s的消息聚合 (RSS 1.0)"
 
 #, php-format
 msgid "Notice feed for %s (RSS 1.0)"
 msgstr "%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 "%s的消息聚合 (RSS 2.0)"
 
 #, php-format
 msgid "Notice feed for %s (RSS 2.0)"
 msgstr "%s的消息聚合 (RSS 2.0)"
 
-#: actions/showstream.php:143
+#: actions/showstream.php:152
 #, php-format
 msgid "Notice feed for %s (Atom)"
 msgstr "%s的消息聚合 (Atom)"
 
 #, php-format
 msgid "Notice feed for %s (Atom)"
 msgstr "%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 "%s的FOAF"
 
 #, php-format
 msgid "FOAF for %s"
 msgstr "%s的FOAF"
 
-#: 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
 #, php-format
-msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
-msgstr "这是%1$s的时间线,但是%2$s还没有发布任何内容。"
+msgid "This is the timeline for %1$s, but %1$s hasn't posted anything yet."
+msgstr "这是%1$s的时间线,但是%1$s还没有发布任何内容。"
 
 
-#: 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 :)"
 msgstr "最近看到了什么有趣的消息了么?你还没有发布消息呢,现在开始吧 :)"
 
 msgid ""
 "Seen anything interesting recently? You haven't posted any notices yet, now "
 "would be a good time to start :)"
 msgstr "最近看到了什么有趣的消息了么?你还没有发布消息呢,现在开始吧 :)"
 
-#: 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%%%"
 #, php-format
 msgid ""
 "You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
@@ -3982,7 +4849,9 @@ msgstr ""
 "你可以试着呼叫%1$s或给他们 [发一些消息](%%%%action.newnotice%%%%?"
 "status_textarea=%2$s)。"
 
 "你可以试着呼叫%1$s或给他们 [发一些消息](%%%%action.newnotice%%%%?"
 "status_textarea=%2$s)。"
 
-#: actions/showstream.php:246
+#. 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."
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3995,7 +4864,9 @@ msgstr ""
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)服务。[现在加入](%%%%action.register%%%%)并关注**%"
 "s**的消息和享受更多乐趣! ([阅读更多](%%%%doc.help%%%%))"
 
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)服务。[现在加入](%%%%action.register%%%%)并关注**%"
 "s**的消息和享受更多乐趣! ([阅读更多](%%%%doc.help%%%%))"
 
-#: actions/showstream.php:251
+#. 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."
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4006,7 +4877,8 @@ msgstr ""
 "[StatusNet](http://status.net/)的[微博客](http://zh.wikipedia.org/zh-hans/%"
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)。"
 
 "[StatusNet](http://status.net/)的[微博客](http://zh.wikipedia.org/zh-hans/%"
 "E5%BE%AE%E5%8D%9A%E5%AE%A2)。"
 
-#: actions/showstream.php:308
+#. 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 "%s 的转发"
 #, php-format
 msgid "Repeat of %s"
 msgstr "%s 的转发"
@@ -4116,31 +4988,38 @@ msgstr "防刷新限制"
 msgid "How long users must wait (in seconds) to post the same thing again."
 msgstr "用户再次发布相同内容时需要等待的时间(秒)。"
 
 msgid "How long users must wait (in seconds) to post the same thing again."
 msgstr "用户再次发布相同内容时需要等待的时间(秒)。"
 
-#: actions/sitenoticeadminpanel.php:56
+#. TRANS: Page title for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:55
 msgid "Site Notice"
 msgstr "网站公告"
 
 msgid "Site Notice"
 msgstr "网站公告"
 
-#: actions/sitenoticeadminpanel.php:67
+#. TRANS: Instructions for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:66
 msgid "Edit site-wide message"
 msgstr "编辑整个网站的公告"
 
 msgid "Edit site-wide message"
 msgstr "编辑整个网站的公告"
 
-#: 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 "无法保存网站公告。"
 
 msgid "Unable to save site notice."
 msgstr "无法保存网站公告。"
 
-#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars."
+#. 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 "整个网站的公告最长限制为255字符。"
 
 msgstr "整个网站的公告最长限制为255字符。"
 
+#. TRANS: Label for site-wide notice text field in admin panel.
 #: actions/sitenoticeadminpanel.php:176
 msgid "Site notice text"
 msgstr "网站公告文字"
 
 #: actions/sitenoticeadminpanel.php:176
 msgid "Site notice text"
 msgstr "网站公告文字"
 
-#: 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 "整个网站的公告文字(最长255字符;可使用HTML)"
 
 msgstr "整个网站的公告文字(最长255字符;可使用HTML)"
 
-#: actions/sitenoticeadminpanel.php:198
+#. TRANS: Title for button to save site notice in admin panel.
+#: actions/sitenoticeadminpanel.php:201
 msgid "Save site notice"
 msgstr "保存网站公告"
 
 msgid "Save site notice"
 msgstr "保存网站公告"
 
@@ -4352,12 +5231,14 @@ msgstr "快照将被发送到这个 URL"
 msgid "Save snapshot settings"
 msgstr "保存访问设置"
 
 msgid "Save snapshot settings"
 msgstr "保存访问设置"
 
-#: 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 "你没有关注这个用户"
 
 msgid "You are not subscribed to that profile."
 msgstr "你没有关注这个用户"
 
+#. 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.
 #. 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:136
 msgid "Could not save subscription."
 msgstr "无法保存关注。"
 
 msgid "Could not save subscription."
 msgstr "无法保存关注。"
 
@@ -4377,37 +5258,53 @@ msgstr "你不能用这个操作关注一个 OMB 0.1 远程用户。"
 msgid "Subscribed"
 msgstr "已关注"
 
 msgid "Subscribed"
 msgstr "已关注"
 
-#: 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 "%s的关注者"
 
 #, php-format
 msgid "%s subscribers"
 msgstr "%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 "%1$s的关注者,第%2$d页"
 
 #, php-format
 msgid "%1$s subscribers, page %2$d"
 msgstr "%1$s的关注者,第%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 "这些用户关注了你的消息。"
 
 msgid "These are the people who listen to your notices."
 msgstr "这些用户关注了你的消息。"
 
-#: 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 "这些用户关注了%s的消息。"
 
 #, php-format
 msgid "These are the people who listen to %s's notices."
 msgstr "这些用户关注了%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 "
 msgid ""
 "You have no subscribers. Try subscribing to people you know and they might "
-"return the favor"
+"return the favor."
 msgstr "还没有人关注你,尝试关注一些你认识的用户,他们或许会关注你"
 
 msgstr "还没有人关注你,尝试关注一些你认识的用户,他们或许会关注你"
 
-#: 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,成为第一个关注者?"
 
 #, php-format
 msgid "%s has no subscribers. Want to be the first?"
 msgstr "还没有人关注%s,成为第一个关注者?"
 
-#: 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%%%"
 #, php-format
 msgid ""
 "%s has no subscribers. Why not [register an account](%%%%action.register%%%"
@@ -4416,26 +5313,38 @@ msgstr ""
 "还没有人关注%s。现在就[注册一个帐号](%%%%action.register%%%%)并成为第一个关注"
 "者!"
 
 "还没有人关注%s。现在就[注册一个帐号](%%%%action.register%%%%)并成为第一个关注"
 "者!"
 
-#: actions/subscriptions.php:52
+#. TRANS: Header for subscriptions overview for a user (first page).
+#. TRANS: %s is a user nickname.
+#: actions/subscriptions.php:51
 #, php-format
 msgid "%s subscriptions"
 msgstr "%s 关注的用户"
 
 #, php-format
 msgid "%s subscriptions"
 msgstr "%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 "%1$s 关注的用户,第%2$d页"
 
 #, php-format
 msgid "%1$s subscriptions, page %2$d"
 msgstr "%1$s 关注的用户,第%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 "这是你关注的用户。"
 
 msgid "These are the people whose notices you listen to."
 msgstr "这是你关注的用户。"
 
-#: 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 "这是%s关注的用户。"
 
 #, php-format
 msgid "These are the people whose notices %s listens to."
 msgstr "这是%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 "
 #, php-format
 msgid ""
 "You're not listening to anyone's notices right now, try subscribing to "
@@ -4449,16 +5358,22 @@ msgstr ""
 "兴趣的小组的用户。如果你是  [Twitter用户](%%action.twittersettings%%),你可以"
 "自动关注你已经关注的用户。"
 
 "兴趣的小组的用户。如果你是  [Twitter用户](%%action.twittersettings%%),你可以"
 "自动关注你已经关注的用户。"
 
-#: 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没有关注任何人。"
 
 #, php-format
 msgid "%s is not listening to anyone."
 msgstr "%s没有关注任何人。"
 
-#: actions/subscriptions.php:208
+#. TRANS: Checkbox label for enabling Jabber messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:226
 msgid "Jabber"
 msgstr "Jabber"
 
 msgid "Jabber"
 msgstr "Jabber"
 
-#: actions/subscriptions.php:222
+#. TRANS: Checkbox label for enabling SMS messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:241
 msgid "SMS"
 msgstr "SMS"
 
 msgid "SMS"
 msgstr "SMS"
 
@@ -4496,7 +5411,7 @@ msgid "User profile"
 msgstr "用户页面"
 
 #: actions/tagother.php:81 actions/userauthorization.php:132
 msgstr "用户页面"
 
 #: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:103
+#: lib/userprofile.php:107
 msgid "Photo"
 msgstr "相片"
 
 msgid "Photo"
 msgstr "相片"
 
@@ -4555,75 +5470,91 @@ msgid ""
 msgstr "Listenee stream 许可证“‘%1$s” 与本网站的许可证 “%2$s”不兼容。"
 
 #. TRANS: User admin panel title
 msgstr "Listenee stream 许可证“‘%1$s” 与本网站的许可证 “%2$s”不兼容。"
 
 #. TRANS: User admin panel title
-#: actions/useradminpanel.php:60
+#: actions/useradminpanel.php:58
 msgctxt "TITLE"
 msgid "User"
 msgstr "用户"
 
 msgctxt "TITLE"
 msgid "User"
 msgstr "用户"
 
-#: actions/useradminpanel.php:71
+#. TRANS: Instruction for user admin panel.
+#: actions/useradminpanel.php:69
 msgid "User settings for this StatusNet site"
 msgstr "这个 StatusNet 网站的用户设置"
 
 msgid "User settings for this StatusNet site"
 msgstr "这个 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 "无效的自述限制,必须为数字。"
 
 msgid "Invalid bio limit. Must be numeric."
 msgstr "无效的自述限制,必须为数字。"
 
-#: 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 "无效的欢迎文字。最大长度255个字符。"
 
 msgstr "无效的欢迎文字。最大长度255个字符。"
 
+#. 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
 #: 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 "无效的默认关注:“%1$s”不是一个用户。"
 
 #. TRANS: Link description in user account settings menu.
 msgstr "无效的默认关注:“%1$s”不是一个用户。"
 
 #. TRANS: Link description in user account settings menu.
-#: actions/useradminpanel.php:219 lib/accountsettingsaction.php:106
-#: lib/personalgroupnav.php:109
+#: actions/useradminpanel.php:215 lib/accountsettingsaction.php:106
+#: lib/personalgroupnav.php:112
 msgid "Profile"
 msgstr "个人信息"
 
 msgid "Profile"
 msgstr "个人信息"
 
-#: 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 "自述限制"
 
 msgid "Bio Limit"
 msgstr "自述限制"
 
-#: 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 "个人资料自述最长的字符数。"
 
 msgid "Maximum length of a profile bio in characters."
 msgstr "个人资料自述最长的字符数。"
 
-#: actions/useradminpanel.php:232
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:231
 msgid "New users"
 msgstr "新用户"
 
 msgid "New users"
 msgstr "新用户"
 
+#. TRANS: Field label in user admin panel for setting new user welcome text.
 #: actions/useradminpanel.php:236
 msgid "New user welcome"
 msgstr "新用户欢迎"
 
 #: actions/useradminpanel.php:236
 msgid "New user welcome"
 msgstr "新用户欢迎"
 
-#: 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 "给新用户的欢迎文字(不能超过255个字符)。"
 
 msgstr "给新用户的欢迎文字(不能超过255个字符)。"
 
-#: 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 "默认关注"
 
 msgid "Default subscription"
 msgstr "默认关注"
 
-#: 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 "自动关注所有关注我的人 (这个选项适合机器人)"
 
 msgid "Automatically subscribe new users to this user."
 msgstr "自动关注所有关注我的人 (这个选项适合机器人)"
 
-#: actions/useradminpanel.php:252
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:256
 msgid "Invitations"
 msgstr "邀请"
 
 msgid "Invitations"
 msgstr "邀请"
 
-#: 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 "邀请已启用"
 
 msgid "Invitations enabled"
 msgstr "邀请已启用"
 
-#: 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 "是否允许用户发送注册邀请。"
 
 msgid "Whether to allow users to invite new users."
 msgstr "是否允许用户发送注册邀请。"
 
-#: 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 "保存用户设置"
 
 msgid "Save user settings"
 msgstr "保存用户设置"
 
@@ -4726,11 +5657,13 @@ msgstr "无法读取头像 URL '%s'。"
 msgid "Wrong image type for avatar URL ‘%s’."
 msgstr "头像 URL ‘%s’ 图像格式错误。"
 
 msgid "Wrong image type for avatar URL ‘%s’."
 msgstr "头像 URL ‘%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 "个人页面外观"
 
 msgid "Profile design"
 msgstr "个人页面外观"
 
-#: 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."
 msgid ""
 "Customize the way your profile looks with a background image and a colour "
 "palette of your choice."
@@ -4820,7 +5753,7 @@ msgid "Plugins"
 msgstr "插件"
 
 #. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
 msgstr "插件"
 
 #. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
-#: actions/version.php:198 lib/action.php:802
+#: actions/version.php:198 lib/action.php:885
 msgid "Version"
 msgstr "版本"
 
 msgid "Version"
 msgstr "版本"
 
@@ -4836,47 +5769,52 @@ msgstr "收藏"
 #. 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:151
 #. 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:151
-#, fuzzy, php-format
+#, php-format
 msgid "%1$s marked notice %2$s as a favorite."
 msgid "%1$s marked notice %2$s as a favorite."
-msgstr "%s (@%s) 收藏了你的消息"
+msgstr "%1$s 将消息 %2$s 标记了收藏。"
 
 #. TRANS: Server exception thrown when a URL cannot be processed.
 
 #. TRANS: Server exception thrown when a URL cannot be processed.
-#: classes/File.php:142
+#: classes/File.php:156
 #, php-format
 msgid "Cannot process URL '%s'"
 msgstr "不能处理 URL “%s”"
 
 #. TRANS: Server exception thrown when... Robin thinks something is impossible!
 #, php-format
 msgid "Cannot process URL '%s'"
 msgstr "不能处理 URL “%s”"
 
 #. TRANS: Server exception thrown when... Robin thinks something is impossible!
-#: classes/File.php:174
+#: classes/File.php:188
 msgid "Robin thinks something is impossible."
 msgstr "麦子认为卖烧麦是份很令人愉快的工作。"
 
 #. 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.
 msgid "Robin thinks something is impossible."
 msgstr "麦子认为卖烧麦是份很令人愉快的工作。"
 
 #. 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:189
+#. TRANS: %1$s is used for plural.
+#: classes/File.php:204
 #, php-format
 msgid ""
 #, 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."
 "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 ""
-"不能有文件大于%1$d字节,你上传的文件是%2$d字节。换一个小点的版本试一下。"
+msgstr[0] "文件不能大于%1$d字节,而你上传的文件是%2$d字节。换个小点的试一下。"
 
 #. TRANS: Message given if an upload would exceed user quota.
 
 #. TRANS: Message given if an upload would exceed user quota.
-#. TRANS: %d (number) is the user quota in bytes.
-#: classes/File.php:201
+#. TRANS: %d (number) is the user quota in bytes and is used for plural.
+#: classes/File.php:217
 #, php-format
 #, php-format
-msgid "A file this large would exceed your user quota of %d bytes."
-msgstr "这么大的文件会超过你%d字节的用户配额。"
+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] "这么大的文件会超过你%d字节的用户配额。"
 
 #. TRANS: Message given id an upload would exceed a user's monthly quota.
 
 #. 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:210
+#. TRANS: $d (number) is the monthly user quota in bytes and is used for plural.
+#: classes/File.php:229
 #, php-format
 #, php-format
-msgid "A file this large would exceed your monthly quota of %d bytes."
-msgstr "这么大的文件会超过你%d字节的每月配额。"
+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] "这么大的文件会超过你%d字节的每月配额。"
 
 #. TRANS: Client exception thrown if a file upload does not have a valid name.
 
 #. TRANS: Client exception thrown if a file upload does not have a valid name.
-#: classes/File.php:247 classes/File.php:262
+#: classes/File.php:276 classes/File.php:291
 msgid "Invalid filename."
 msgstr "无效的文件名。"
 
 msgid "Invalid filename."
 msgstr "无效的文件名。"
 
@@ -4900,14 +5838,14 @@ msgstr "离开小组失败。"
 #: classes/Group_member.php:76
 #, php-format
 msgid "Profile ID %s is invalid."
 #: classes/Group_member.php:76
 #, php-format
 msgid "Profile ID %s is invalid."
-msgstr ""
+msgstr "无效的用户 ID %s。"
 
 #. TRANS: Exception thrown providing an invalid group ID.
 #. TRANS: %s is the invalid group ID.
 #: classes/Group_member.php:89
 
 #. TRANS: Exception thrown providing an invalid group ID.
 #. TRANS: %s is the invalid group ID.
 #: classes/Group_member.php:89
-#, fuzzy, php-format
+#, php-format
 msgid "Group ID %s is invalid."
 msgid "Group ID %s is invalid."
-msgstr "保存用户时出错;无效。"
+msgstr "小组 ID %s 无效。"
 
 #. TRANS: Activity title.
 #: classes/Group_member.php:113 lib/joinform.php:114
 
 #. TRANS: Activity title.
 #: classes/Group_member.php:113 lib/joinform.php:114
@@ -5001,39 +5939,46 @@ msgid "Problem saving notice."
 msgstr "保存消息时出错。"
 
 #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
 msgstr "保存消息时出错。"
 
 #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
-#: classes/Notice.php:907
-msgid "Bad type provided to saveKnownGroups"
-msgstr "对 saveKnownGroups 提供的类型无效"
+#: classes/Notice.php:909
+msgid "Bad type provided to saveKnownGroups."
+msgstr "对 saveKnownGroups 提供的类型无效"
 
 #. TRANS: Server exception thrown when an update for a group inbox fails.
 
 #. TRANS: Server exception thrown when an update for a group inbox fails.
-#: classes/Notice.php:1006
+#: classes/Notice.php:1008
 msgid "Problem saving group inbox."
 msgstr "保存小组收件箱时出错。"
 
 #. 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.
 msgid "Problem saving group inbox."
 msgstr "保存小组收件箱时出错。"
 
 #. 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:1120
-#, fuzzy, php-format
+#: classes/Notice.php:1122
+#, php-format
 msgid "Could not save reply for %1$d, %2$d."
 msgid "Could not save reply for %1$d, %2$d."
-msgstr "无法保存本地小组信息。"
+msgstr "无法保存回复,%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.
 
 #. 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:1822
+#: classes/Notice.php:1853
 #, php-format
 msgid "RT @%1$s %2$s"
 msgstr "RT @%1$s %2$s"
 
 #, 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).
 #. 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:785
+#: classes/Profile.php:845
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
 msgstr "无法取消用户#%2$d的\\\"%1$s\\\"权限,不存在。"
 
 #. 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).
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
 msgstr "无法取消用户#%2$d的\\\"%1$s\\\"权限,不存在。"
 
 #. 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:794
+#: classes/Profile.php:854
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
 msgstr "无法取消用户#%2$d的\\\"%1$s\\\"权限,数据库错误。"
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
 msgstr "无法取消用户#%2$d的\\\"%1$s\\\"权限,数据库错误。"
@@ -5049,7 +5994,7 @@ msgid "Unable to save tag."
 msgstr "无法保存标签。"
 
 #. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
 msgstr "无法保存标签。"
 
 #. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
-#: classes/Subscription.php:75 lib/oauthstore.php:466
+#: classes/Subscription.php:75 lib/oauthstore.php:482
 msgid "You have been banned from subscribing."
 msgstr "你被禁止添加关注。"
 
 msgid "You have been banned from subscribing."
 msgstr "你被禁止添加关注。"
 
@@ -5091,34 +6036,44 @@ msgstr "关注"
 #. TRANS: Notification given when one person starts following another.
 #. TRANS: %1$s is the subscriber, %2$s is the subscribed.
 #: classes/Subscription.php:258
 #. TRANS: Notification given when one person starts following another.
 #. TRANS: %1$s is the subscriber, %2$s is the subscribed.
 #: classes/Subscription.php:258
-#, fuzzy, php-format
+#, php-format
 msgid "%1$s is now following %2$s."
 msgid "%1$s is now following %2$s."
-msgstr "%1$s加入了%2$s小组。"
+msgstr "%1$s 现在开始关注了 %2$s。"
 
 #. TRANS: Notice given on user registration.
 #. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
 
 #. 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:385
 #, php-format
 msgid "Welcome to %1$s, @%2$s!"
 msgstr "欢迎来到 %1$s,@%2$s!"
 
 #, php-format
 msgid "Welcome to %1$s, @%2$s!"
 msgstr "欢迎来到 %1$s,@%2$s!"
 
+#. TRANS: Server exception.
+#: classes/User.php:913
+msgid "No single user defined for single-user mode."
+msgstr "没有单独的用户被定义为单用户模式。"
+
+#. TRANS: Server exception.
+#: classes/User.php:917
+msgid "Single-user mode code called when not enabled."
+msgstr "没启用单用户模式的代码。"
+
 #. TRANS: Server exception thrown when creating a group failed.
 #. TRANS: Server exception thrown when creating a group failed.
-#: classes/User_group.php:495
+#: classes/User_group.php:511
 msgid "Could not create group."
 msgstr "无法创建小组。"
 
 #. TRANS: Server exception thrown when updating a group URI failed.
 msgid "Could not create group."
 msgstr "无法创建小组。"
 
 #. TRANS: Server exception thrown when updating a group URI failed.
-#: classes/User_group.php:505
+#: classes/User_group.php:521
 msgid "Could not set group URI."
 msgstr "无法设置小组 URI。"
 
 #. TRANS: Server exception thrown when setting group membership failed.
 msgid "Could not set group URI."
 msgstr "无法设置小组 URI。"
 
 #. TRANS: Server exception thrown when setting group membership failed.
-#: classes/User_group.php:528
+#: classes/User_group.php:544
 msgid "Could not set group membership."
 msgstr "无法设置小组成员。"
 
 #. TRANS: Server exception thrown when saving local group information failed.
 msgid "Could not set group membership."
 msgstr "无法设置小组成员。"
 
 #. TRANS: Server exception thrown when saving local group information failed.
-#: classes/User_group.php:543
+#: classes/User_group.php:559
 msgid "Could not save local group info."
 msgstr "无法保存本地小组信息。"
 
 msgid "Could not save local group info."
 msgstr "无法保存本地小组信息。"
 
@@ -5168,186 +6123,201 @@ msgstr "%1$s - %2$s"
 msgid "Untitled page"
 msgstr "无标题页"
 
 msgid "Untitled page"
 msgstr "无标题页"
 
+#. TRANS: Localized tooltip for '...' expansion button on overlong remote messages.
+#: lib/action.php:312
+msgctxt "TOOLTIP"
+msgid "Show more"
+msgstr "显示更多"
+
 #. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
 #. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
-#: lib/action.php:448
+#: lib/action.php:531
 msgid "Primary site navigation"
 msgstr "主站导航"
 
 #. TRANS: Tooltip for main menu option "Personal"
 msgid "Primary site navigation"
 msgstr "主站导航"
 
 #. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:454
+#: lib/action.php:537
 msgctxt "TOOLTIP"
 msgid "Personal profile and friends timeline"
 msgstr "个人资料及朋友的时间线"
 
 #. TRANS: Main menu option when logged in for access to personal profile and friends timeline
 msgctxt "TOOLTIP"
 msgid "Personal profile and friends timeline"
 msgstr "个人资料及朋友的时间线"
 
 #. TRANS: Main menu option when logged in for access to personal profile and friends timeline
-#: lib/action.php:457
+#: lib/action.php:540
 msgctxt "MENU"
 msgid "Personal"
 msgstr "个人"
 
 #. TRANS: Tooltip for main menu option "Account"
 msgctxt "MENU"
 msgid "Personal"
 msgstr "个人"
 
 #. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:459
+#: lib/action.php:542
 msgctxt "TOOLTIP"
 msgid "Change your email, avatar, password, profile"
 msgstr "修改你的 email 地址、头像、密码、资料"
 
 msgctxt "TOOLTIP"
 msgid "Change your email, avatar, password, profile"
 msgstr "修改你的 email 地址、头像、密码、资料"
 
+#. TRANS: Main menu option when logged in for access to user settings
+#: lib/action.php:545
+msgid "Account"
+msgstr "帐号"
+
 #. TRANS: Tooltip for main menu option "Services"
 #. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:464
+#: lib/action.php:547
 msgctxt "TOOLTIP"
 msgid "Connect to services"
 msgstr "关联的服务"
 
 #. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
 msgctxt "TOOLTIP"
 msgid "Connect to services"
 msgstr "关联的服务"
 
 #. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
-#: lib/action.php:467
+#: lib/action.php:550
 msgid "Connect"
 msgstr "关联"
 
 #. TRANS: Tooltip for menu option "Admin"
 msgid "Connect"
 msgstr "关联"
 
 #. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:470
+#: lib/action.php:553
 msgctxt "TOOLTIP"
 msgid "Change site configuration"
 msgstr "更改网站配置"
 
 #. 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.
 msgctxt "TOOLTIP"
 msgid "Change site configuration"
 msgstr "更改网站配置"
 
 #. 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:473 lib/groupnav.php:117
+#: lib/action.php:556 lib/groupnav.php:117
 msgctxt "MENU"
 msgid "Admin"
 msgstr "管理"
 
 #. TRANS: Tooltip for main menu option "Invite"
 msgctxt "MENU"
 msgid "Admin"
 msgstr "管理"
 
 #. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:477
+#: lib/action.php:560
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Invite friends and colleagues to join you on %s"
 msgstr "邀请好友和同事加入%s。"
 
 #. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Invite friends and colleagues to join you on %s"
 msgstr "邀请好友和同事加入%s。"
 
 #. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
-#: lib/action.php:480
+#: lib/action.php:563
 msgctxt "MENU"
 msgid "Invite"
 msgstr "邀请"
 
 #. TRANS: Tooltip for main menu option "Logout"
 msgctxt "MENU"
 msgid "Invite"
 msgstr "邀请"
 
 #. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:486
+#: lib/action.php:569
 msgctxt "TOOLTIP"
 msgid "Logout from the site"
 msgstr "从网站登出"
 
 #. TRANS: Main menu option when logged in to log out the current user
 msgctxt "TOOLTIP"
 msgid "Logout from the site"
 msgstr "从网站登出"
 
 #. TRANS: Main menu option when logged in to log out the current user
-#: lib/action.php:489
+#: lib/action.php:572
 msgctxt "MENU"
 msgid "Logout"
 msgstr "登出"
 
 #. TRANS: Tooltip for main menu option "Register"
 msgctxt "MENU"
 msgid "Logout"
 msgstr "登出"
 
 #. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:494
+#: lib/action.php:577
 msgctxt "TOOLTIP"
 msgid "Create an account"
 msgstr "创建一个账户"
 
 #. TRANS: Main menu option when not logged in to register a new account
 msgctxt "TOOLTIP"
 msgid "Create an account"
 msgstr "创建一个账户"
 
 #. TRANS: Main menu option when not logged in to register a new account
-#: lib/action.php:497
+#: lib/action.php:580
 msgctxt "MENU"
 msgid "Register"
 msgstr "注册"
 
 #. TRANS: Tooltip for main menu option "Login"
 msgctxt "MENU"
 msgid "Register"
 msgstr "注册"
 
 #. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:500
+#: lib/action.php:583
 msgctxt "TOOLTIP"
 msgid "Login to the site"
 msgstr "登录这个网站"
 
 msgctxt "TOOLTIP"
 msgid "Login to the site"
 msgstr "登录这个网站"
 
-#: lib/action.php:503
+#. TRANS: Main menu option when not logged in to log in
+#: lib/action.php:586
 msgctxt "MENU"
 msgid "Login"
 msgstr "登录"
 
 #. TRANS: Tooltip for main menu option "Help"
 msgctxt "MENU"
 msgid "Login"
 msgstr "登录"
 
 #. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:506
+#: lib/action.php:589
 msgctxt "TOOLTIP"
 msgid "Help me!"
 msgstr "帮助我!"
 
 msgctxt "TOOLTIP"
 msgid "Help me!"
 msgstr "帮助我!"
 
-#: lib/action.php:509
+#. TRANS: Main menu option for help on the StatusNet site
+#: lib/action.php:592
 msgctxt "MENU"
 msgid "Help"
 msgstr "帮助"
 
 #. TRANS: Tooltip for main menu option "Search"
 msgctxt "MENU"
 msgid "Help"
 msgstr "帮助"
 
 #. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:512
+#: lib/action.php:595
 msgctxt "TOOLTIP"
 msgid "Search for people or text"
 msgstr "搜索人或文字"
 
 msgctxt "TOOLTIP"
 msgid "Search for people or text"
 msgstr "搜索人或文字"
 
-#: lib/action.php:515
+#. TRANS: Main menu option when logged in or when the StatusNet instance is not private
+#: lib/action.php:598
 msgctxt "MENU"
 msgid "Search"
 msgstr "搜索"
 
 #. TRANS: DT element for site notice. String is hidden in default CSS.
 #. TRANS: Menu item for site administration
 msgctxt "MENU"
 msgid "Search"
 msgstr "搜索"
 
 #. TRANS: DT element for site notice. String is hidden in default CSS.
 #. TRANS: Menu item for site administration
-#: lib/action.php:537 lib/adminpanelaction.php:387
+#: lib/action.php:620 lib/adminpanelaction.php:387
 msgid "Site notice"
 msgstr "网站消息"
 
 #. TRANS: DT element for local views block. String is hidden in default CSS.
 msgid "Site notice"
 msgstr "网站消息"
 
 #. TRANS: DT element for local views block. String is hidden in default CSS.
-#: lib/action.php:604
+#: lib/action.php:687
 msgid "Local views"
 msgstr "本地显示"
 
 #. TRANS: DT element for page notice. String is hidden in default CSS.
 msgid "Local views"
 msgstr "本地显示"
 
 #. TRANS: DT element for page notice. String is hidden in default CSS.
-#: lib/action.php:674
+#: lib/action.php:757
 msgid "Page notice"
 msgstr "页面消息"
 
 #. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
 msgid "Page notice"
 msgstr "页面消息"
 
 #. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
-#: lib/action.php:775
+#: lib/action.php:858
 msgid "Secondary site navigation"
 msgstr "副站导航"
 
 #. TRANS: Secondary navigation menu option leading to help on StatusNet.
 msgid "Secondary site navigation"
 msgstr "副站导航"
 
 #. TRANS: Secondary navigation menu option leading to help on StatusNet.
-#: lib/action.php:781
+#: lib/action.php:864
 msgid "Help"
 msgstr "帮助"
 
 #. TRANS: Secondary navigation menu option leading to text about StatusNet site.
 msgid "Help"
 msgstr "帮助"
 
 #. TRANS: Secondary navigation menu option leading to text about StatusNet site.
-#: lib/action.php:784
+#: lib/action.php:867
 msgid "About"
 msgstr "关于"
 
 #. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
 msgid "About"
 msgstr "关于"
 
 #. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
-#: lib/action.php:787
+#: lib/action.php:870
 msgid "FAQ"
 msgstr "FAQ"
 
 #. TRANS: Secondary navigation menu option leading to Terms of Service.
 msgid "FAQ"
 msgstr "FAQ"
 
 #. TRANS: Secondary navigation menu option leading to Terms of Service.
-#: lib/action.php:792
+#: lib/action.php:875
 msgid "TOS"
 msgstr "条款"
 
 #. TRANS: Secondary navigation menu option leading to privacy policy.
 msgid "TOS"
 msgstr "条款"
 
 #. TRANS: Secondary navigation menu option leading to privacy policy.
-#: lib/action.php:796
+#: lib/action.php:879
 msgid "Privacy"
 msgstr "隐私"
 
 msgid "Privacy"
 msgstr "隐私"
 
-#. TRANS: Secondary navigation menu option.
-#: lib/action.php:799
+#. TRANS: Secondary navigation menu option. Leads to information about StatusNet and its license.
+#: lib/action.php:882
 msgid "Source"
 msgstr "源码"
 
 msgid "Source"
 msgstr "源码"
 
-#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
-#: lib/action.php:805
+#. 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 "联系"
 
 msgid "Contact"
 msgstr "联系"
 
-#. TRANS: Secondary navigation menu option.
-#: lib/action.php:808
+#. TRANS: Secondary navigation menu option. Leads to information about embedding a timeline widget.
+#: lib/action.php:892
 msgid "Badge"
 msgstr "挂件"
 
 #. TRANS: DT element for StatusNet software license.
 msgid "Badge"
 msgstr "挂件"
 
 #. TRANS: DT element for StatusNet software license.
-#: lib/action.php:837
+#: lib/action.php:921
 msgid "StatusNet software license"
 msgstr "StatusNet 软件许可证"
 
 msgid "StatusNet software license"
 msgstr "StatusNet 软件许可证"
 
@@ -5355,7 +6325,7 @@ msgstr "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
 #. 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:844
+#: lib/action.php:928
 #, php-format
 msgid ""
 "**%%site.name%%** is a microblogging service brought to you by [%%site."
 #, php-format
 msgid ""
 "**%%site.name%%** is a microblogging service brought to you by [%%site."
@@ -5365,7 +6335,7 @@ msgstr ""
 "broughtbyurl%%)。"
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
 "broughtbyurl%%)。"
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
-#: lib/action.php:847
+#: lib/action.php:931
 #, php-format
 msgid "**%%site.name%%** is a microblogging service."
 msgstr "**%%site.name%%** 是一个微博客服务。"
 #, php-format
 msgid "**%%site.name%%** is a microblogging service."
 msgstr "**%%site.name%%** 是一个微博客服务。"
@@ -5374,7 +6344,7 @@ msgstr "**%%site.name%%** 是一个微博客服务。"
 #. 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.
 #. 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:854
+#: lib/action.php:938
 #, php-format
 msgid ""
 "It runs the [StatusNet](http://status.net/) microblogging software, version %"
 #, php-format
 msgid ""
 "It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -5385,50 +6355,50 @@ msgstr ""
 "(http://www.fsf.org/licensing/licenses/agpl-3.0.html)授权。"
 
 #. TRANS: DT element for StatusNet site content license.
 "(http://www.fsf.org/licensing/licenses/agpl-3.0.html)授权。"
 
 #. TRANS: DT element for StatusNet site content license.
-#: lib/action.php:870
+#: lib/action.php:954
 msgid "Site content license"
 msgstr "网站内容许可协议"
 
 #. TRANS: Content license displayed when license is set to 'private'.
 #. TRANS: %1$s is the site name.
 msgid "Site content license"
 msgstr "网站内容许可协议"
 
 #. TRANS: Content license displayed when license is set to 'private'.
 #. TRANS: %1$s is the site name.
-#: lib/action.php:877
+#: lib/action.php:961
 #, php-format
 msgid "Content and data of %1$s are private and confidential."
 msgstr "%1$s的内容和数据是私人且保密的。"
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved'.
 #. TRANS: %1$s is the copyright owner.
 #, php-format
 msgid "Content and data of %1$s are private and confidential."
 msgstr "%1$s的内容和数据是私人且保密的。"
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved'.
 #. TRANS: %1$s is the copyright owner.
-#: lib/action.php:884
+#: lib/action.php:968
 #, php-format
 msgid "Content and data copyright by %1$s. All rights reserved."
 msgstr "内容和数据%1$s版权所有并保留所有权利。"
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
 #, php-format
 msgid "Content and data copyright by %1$s. All rights reserved."
 msgstr "内容和数据%1$s版权所有并保留所有权利。"
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
-#: lib/action.php:888
+#: lib/action.php:972
 msgid "Content and data copyright by contributors. All rights reserved."
 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.
 msgid "Content and data copyright by contributors. All rights reserved."
 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:902
+#: lib/action.php:1004
 #, php-format
 msgid "All %1$s content and data are available under the %2$s license."
 msgstr "所有%1$s的内容和数据在%2$s许可下有效。"
 
 #. TRANS: DT element for pagination (previous/next, etc.).
 #, php-format
 msgid "All %1$s content and data are available under the %2$s license."
 msgstr "所有%1$s的内容和数据在%2$s许可下有效。"
 
 #. TRANS: DT element for pagination (previous/next, etc.).
-#: lib/action.php:1238
+#: lib/action.php:1340
 msgid "Pagination"
 msgstr "分页"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: present than the currently displayed information.
 msgid "Pagination"
 msgstr "分页"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: present than the currently displayed information.
-#: lib/action.php:1249
+#: lib/action.php:1351
 msgid "After"
 msgstr "之后"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: past than the currently displayed information.
 msgid "After"
 msgstr "之后"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: past than the currently displayed information.
-#: lib/action.php:1259
+#: lib/action.php:1361
 msgid "Before"
 msgstr "之前"
 
 msgid "Before"
 msgstr "之前"
 
@@ -5507,7 +6477,7 @@ msgid "User configuration"
 msgstr "用户配置"
 
 #. TRANS: Menu item for site administration
 msgstr "用户配置"
 
 #. 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 "用户"
 
 msgid "User"
 msgstr "用户"
 
@@ -5547,41 +6517,62 @@ msgid "API resource requires read-write access, but you only have read access."
 msgstr "API 资源需要读写的访问权限,但是你只有只读的权限。"
 
 #. TRANS: OAuth exception thrown when no application is found for a given consumer key.
 msgstr "API 资源需要读写的访问权限,但是你只有只读的权限。"
 
 #. 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 "没有应用使用这个 consumer key。"
 
 #. TRANS: OAuth exception given when an incorrect access token was given for a user.
 msgid "No application for that consumer key."
 msgstr "没有应用使用这个 consumer key。"
 
 #. 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 "无效的 access token。"
 
 #. TRANS: OAuth exception given when no user was found for a given token (no token was found).
 msgid "Bad access token."
 msgstr "无效的 access token。"
 
 #. 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 "没有用户使用这个 token。"
 
 #. TRANS: Client error thrown when authentication fails becaus a user clicked "Cancel".
 #. TRANS: Client error thrown when authentication fails.
 msgid "No user for that token."
 msgstr "没有用户使用这个 token。"
 
 #. 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 "无法验证你。"
 
 msgid "Could not authenticate you."
 msgstr "无法验证你。"
 
+#. TRANS: Server error displayed when trying to create an anynymous OAuth consumer.
+#: lib/apioauthstore.php:45
+msgid "Could not create anonymous consumer."
+msgstr "无法创建匿名 consumer。"
+
+#. TRANS: Server error displayed when trying to create an anynymous OAuth application.
+#: lib/apioauthstore.php:69
+msgid "Could not create anonymous OAuth application."
+msgstr "无法创建匿名 OAuth 应用。"
+
+#. 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 "无法找到请求 token 对应的用户和应用。"
+
+#. TRANS: Exception thrown when no access token can be issued.
+#: lib/apioauthstore.php:186
+msgid "Could not issue access token."
+msgstr "无法发行 access token。"
+
+#. TRANS: Server error displayed when a database error occurs.
+#: lib/apioauthstore.php:243
+msgid "Database error inserting OAuth application user."
+msgstr "插入 OAuth 应用用户时数据库出错。"
+
 #. TRANS: Exception thrown when an attempt is made to revoke an unknown token.
 #. 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 "尝试了取消未知的 token。"
 
 #. TRANS: Exception thrown when an attempt is made to remove a revoked token.
 msgid "Tried to revoke unknown token."
 msgstr "尝试了取消未知的 token。"
 
 #. TRANS: Exception thrown when an attempt is made to remove a revoked token.
-#: lib/apioauthstore.php:183
+#: lib/apioauthstore.php:290
 msgid "Failed to delete revoked token."
 msgstr "删除取消的 token 失败。"
 
 msgid "Failed to delete revoked token."
 msgstr "删除取消的 token 失败。"
 
-#. TRANS: Form legend.
-#: lib/applicationeditform.php:129
-msgid "Edit application"
-msgstr "编辑应用"
-
 #. TRANS: Form guide.
 #: lib/applicationeditform.php:178
 msgid "Icon for this application"
 #. TRANS: Form guide.
 #: lib/applicationeditform.php:178
 msgid "Icon for this application"
@@ -5590,7 +6581,7 @@ msgstr "该应用的图标"
 #. TRANS: Form input field instructions.
 #. TRANS: %d is the number of available characters for the description.
 #: lib/applicationeditform.php:201
 #. TRANS: Form input field instructions.
 #. TRANS: %d is the number of available characters for the description.
 #: lib/applicationeditform.php:201
-#, fuzzy, php-format
+#, php-format
 msgid "Describe your application in %d character"
 msgid_plural "Describe your application in %d characters"
 msgstr[0] "用不超过%d个字符描述你的应用"
 msgid "Describe your application in %d character"
 msgid_plural "Describe your application in %d characters"
 msgstr[0] "用不超过%d个字符描述你的应用"
@@ -5660,44 +6651,50 @@ msgstr "该应用默认的访问权限:只读或读写"
 msgid "Cancel"
 msgstr "取消"
 
 msgid "Cancel"
 msgstr "取消"
 
+#: lib/applicationlist.php:247
+msgid " by "
+msgstr "by "
+
 #. TRANS: Application access type
 #. TRANS: Application access type
-#: lib/applicationlist.php:134
+#: lib/applicationlist.php:260
 msgid "read-write"
 msgstr "读写"
 
 #. TRANS: Application access type
 msgid "read-write"
 msgstr "读写"
 
 #. TRANS: Application access type
-#: lib/applicationlist.php:136
+#: lib/applicationlist.php:262
 msgid "read-only"
 msgstr "只读"
 
 #. TRANS: Used in application list. %1$s is a modified date, %2$s is access type ("read-write" or "read-only")
 msgid "read-only"
 msgstr "只读"
 
 #. TRANS: Used in application list. %1$s is a modified date, %2$s is access type ("read-write" or "read-only")
-#: lib/applicationlist.php:142
+#: lib/applicationlist.php:268
 #, php-format
 msgid "Approved %1$s - \"%2$s\" access."
 msgstr "通过了%1$s - \"%2$s\"的访问权限。"
 
 #, php-format
 msgid "Approved %1$s - \"%2$s\" access."
 msgstr "通过了%1$s - \"%2$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 "Access token 的开始:%s"
+
 #. TRANS: Button label
 #. TRANS: Button label
-#: lib/applicationlist.php:157
+#: lib/applicationlist.php:298
 msgctxt "BUTTON"
 msgid "Revoke"
 msgstr "取消"
 
 #: lib/atom10feed.php:112
 msgid "author element must contain a name element."
 msgctxt "BUTTON"
 msgid "Revoke"
 msgstr "取消"
 
 #: lib/atom10feed.php:112
 msgid "author element must contain a name element."
-msgstr ""
-
-#. TRANS: DT element label in attachment list.
-#: lib/attachmentlist.php:85
-msgid "Attachments"
-msgstr "附件"
+msgstr "作者元素必须包含一个名称元素。"
 
 #. TRANS: DT element label in attachment list item.
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:256
+#: lib/attachmentlist.php:294
 msgid "Author"
 msgstr "作者"
 
 #. TRANS: DT element label in attachment list item.
 msgid "Author"
 msgstr "作者"
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:270
+#: lib/attachmentlist.php:308
 msgid "Provider"
 msgstr "提供者"
 
 msgid "Provider"
 msgstr "提供者"
 
@@ -5713,15 +6710,13 @@ msgstr "此附件的标签"
 
 #. TRANS: Exception thrown when a password change fails.
 #: lib/authenticationplugin.php:221 lib/authenticationplugin.php:227
 
 #. TRANS: Exception thrown when a password change fails.
 #: lib/authenticationplugin.php:221 lib/authenticationplugin.php:227
-#, fuzzy
 msgid "Password changing failed."
 msgid "Password changing failed."
-msgstr "ä¸\8då\85\81许æ\9b´æ\94¹å¯\86ç \81"
+msgstr "ä¿®æ\94¹å¯\86ç \81失败ã\80\82"
 
 #. TRANS: Exception thrown when a password change attempt fails because it is not allowed.
 #: lib/authenticationplugin.php:238
 
 #. TRANS: Exception thrown when a password change attempt fails because it is not allowed.
 #: lib/authenticationplugin.php:238
-#, fuzzy
 msgid "Password changing is not allowed."
 msgid "Password changing is not allowed."
-msgstr "不允许更改密码"
+msgstr "不允许更改密码"
 
 #. TRANS: Title for the form to block a user.
 #: lib/blockform.php:68
 
 #. TRANS: Title for the form to block a user.
 #: lib/blockform.php:68
@@ -5735,12 +6730,11 @@ msgstr "执行结果"
 
 #. TRANS: Title for command results.
 #: lib/channel.php:194
 
 #. TRANS: Title for command results.
 #: lib/channel.php:194
-#, fuzzy
 msgid "AJAX error"
 msgid "AJAX error"
-msgstr "Ajax错误"
+msgstr "AJAX 错误"
 
 #. TRANS: E-mail subject when a command has completed.
 
 #. TRANS: E-mail subject when a command has completed.
-#: lib/channel.php:233 lib/mailhandler.php:142
+#: lib/channel.php:233 lib/mailhandler.php:143
 msgid "Command complete"
 msgstr "执行完毕"
 
 msgid "Command complete"
 msgstr "执行完毕"
 
@@ -5756,7 +6750,7 @@ msgstr "没有此 id 的消息。"
 
 #. 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.
 
 #. 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:99 lib/command.php:626
+#: lib/command.php:99 lib/command.php:630
 msgid "User has no last notice."
 msgstr "用户没有最后一条的消息。"
 
 msgid "User has no last notice."
 msgstr "用户没有最后一条的消息。"
 
@@ -5825,6 +6819,14 @@ msgstr "%1$s加入了%2$s小组。"
 msgid "%1$s left group %2$s."
 msgstr "%1$s离开了%2$s小组。"
 
 msgid "%1$s left group %2$s."
 msgstr "%1$s离开了%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:430
 #, php-format
 #. TRANS: Whois output. %s is the full name of the queried user.
 #: lib/command.php:430
 #, php-format
@@ -5832,15 +6834,17 @@ msgid "Fullname: %s"
 msgstr "全名:%s"
 
 #. TRANS: Whois output. %s is the location of the queried user.
 msgstr "全名:%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:434 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 "位置:%s"
 
 #. TRANS: Whois output. %s is the homepage of the queried user.
 #, php-format
 msgid "Location: %s"
 msgstr "位置:%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:438 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 "主页:%s"
 #, php-format
 msgid "Homepage: %s"
 msgstr "主页:%s"
@@ -5860,167 +6864,169 @@ msgid ""
 "same server."
 msgstr "%s是一个远程的用户;你只能给同一个服务器上的用户发送私信。"
 
 "same server."
 msgstr "%s是一个远程的用户;你只能给同一个服务器上的用户发送私信。"
 
-#. 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.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:488 lib/xmppmanager.php:403
+#: lib/command.php:488
 #, php-format
 #, php-format
-msgid "Message too long - maximum is %1$d characters, you sent %2$d."
-msgstr "消息包含%2$d个字符,超出长度限制 - 不能超过%1$d个字符。"
+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] "消息太长了 - 最大长度为%1$d字符,你发送的是%2$d字符。"
 
 #. TRANS: Error text shown sending a direct message fails with an unknown reason.
 
 #. TRANS: Error text shown sending a direct message fails with an unknown reason.
-#: lib/command.php:514
+#: lib/command.php:516
 msgid "Error sending direct message."
 msgstr "发送消息出错。"
 
 #. TRANS: Message given having repeated a notice from another user.
 #. TRANS: %s is the name of the user for which the notice was repeated.
 msgid "Error sending direct message."
 msgstr "发送消息出错。"
 
 #. 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:551
+#: lib/command.php:553
 #, php-format
 msgid "Notice from %s repeated."
 msgstr "来自 %s 的消息已转发。"
 
 #. TRANS: Error text shown when repeating a notice fails with an unknown reason.
 #, php-format
 msgid "Notice from %s repeated."
 msgstr "来自 %s 的消息已转发。"
 
 #. TRANS: Error text shown when repeating a notice fails with an unknown reason.
-#: lib/command.php:554
+#: lib/command.php:556
 msgid "Error repeating notice."
 msgstr "转发消息时出错。"
 
 msgid "Error repeating notice."
 msgstr "转发消息时出错。"
 
-#. 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.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:589
+#: lib/command.php:591
 #, php-format
 #, php-format
-msgid "Notice too long - maximum is %1$d characters, you sent %2$d."
-msgstr "消息过长 - 最长%1$d个字符,你发送的是%2$d。"
+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] "消息过长 - 最长%1$d个字符,你发送的是%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.
 
 #. 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:600
+#: lib/command.php:604
 #, php-format
 msgid "Reply to %s sent."
 msgstr "给 %s 的回复已发送。"
 
 #. TRANS: Error text shown when a reply to a notice fails with an unknown reason.
 #, php-format
 msgid "Reply to %s sent."
 msgstr "给 %s 的回复已发送。"
 
 #. TRANS: Error text shown when a reply to a notice fails with an unknown reason.
-#: lib/command.php:603
+#: lib/command.php:607
 msgid "Error saving notice."
 msgstr "保存消息时出错。"
 
 #. TRANS: Error text shown when no username was provided when issuing a subscribe command.
 msgid "Error saving notice."
 msgstr "保存消息时出错。"
 
 #. TRANS: Error text shown when no username was provided when issuing a subscribe command.
-#: lib/command.php:650
+#: lib/command.php:654
 msgid "Specify the name of the user to subscribe to."
 msgstr "指定要关注的用户名。"
 
 #. TRANS: Command exception text shown when trying to subscribe to an OMB profile using the subscribe command.
 msgid "Specify the name of the user to subscribe to."
 msgstr "指定要关注的用户名。"
 
 #. TRANS: Command exception text shown when trying to subscribe to an OMB profile using the subscribe command.
-#: lib/command.php:659
+#: lib/command.php:663
 msgid "Can't subscribe to OMB profiles by command."
 msgstr "无法通过命令行关注 OMB 用户。"
 
 #. TRANS: Text shown after having subscribed to another user successfully.
 #. TRANS: %s is the name of the user the subscription was requested for.
 msgid "Can't subscribe to OMB profiles by command."
 msgstr "无法通过命令行关注 OMB 用户。"
 
 #. 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:667
+#: lib/command.php:671
 #, php-format
 msgid "Subscribed to %s."
 msgstr "已关注%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.
 #, php-format
 msgid "Subscribed to %s."
 msgstr "已关注%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:688 lib/command.php:799
+#: lib/command.php:692 lib/command.php:803
 msgid "Specify the name of the user to unsubscribe from."
 msgstr "指定要取消关注的用户名。"
 
 #. TRANS: Text shown after having unsubscribed from another user successfully.
 #. TRANS: %s is the name of the user the unsubscription was requested for.
 msgid "Specify the name of the user to unsubscribe from."
 msgstr "指定要取消关注的用户名。"
 
 #. 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:699
+#: lib/command.php:703
 #, php-format
 msgid "Unsubscribed from %s."
 msgstr "取消关注%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.
 #, php-format
 msgid "Unsubscribed from %s."
 msgstr "取消关注%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:719 lib/command.php:745
+#: lib/command.php:723 lib/command.php:749
 msgid "Command not yet implemented."
 msgstr "命令尚未实现。"
 
 #. TRANS: Text shown when issuing the command "off" successfully.
 msgid "Command not yet implemented."
 msgstr "命令尚未实现。"
 
 #. TRANS: Text shown when issuing the command "off" successfully.
-#: lib/command.php:723
+#: lib/command.php:727
 msgid "Notification off."
 msgstr "通知已关闭。"
 
 #. TRANS: Error text shown when the command "off" fails for an unknown reason.
 msgid "Notification off."
 msgstr "通知已关闭。"
 
 #. TRANS: Error text shown when the command "off" fails for an unknown reason.
-#: lib/command.php:726
+#: lib/command.php:730
 msgid "Can't turn off notification."
 msgstr "无法关闭通知。"
 
 #. TRANS: Text shown when issuing the command "on" successfully.
 msgid "Can't turn off notification."
 msgstr "无法关闭通知。"
 
 #. TRANS: Text shown when issuing the command "on" successfully.
-#: lib/command.php:749
+#: lib/command.php:753
 msgid "Notification on."
 msgstr "通知已开启。"
 
 #. TRANS: Error text shown when the command "on" fails for an unknown reason.
 msgid "Notification on."
 msgstr "通知已开启。"
 
 #. TRANS: Error text shown when the command "on" fails for an unknown reason.
-#: lib/command.php:752
+#: lib/command.php:756
 msgid "Can't turn on notification."
 msgstr "无法开启通知。"
 
 #. TRANS: Error text shown when issuing the login command while login is disabled.
 msgid "Can't turn on notification."
 msgstr "无法开启通知。"
 
 #. TRANS: Error text shown when issuing the login command while login is disabled.
-#: lib/command.php:766
+#: lib/command.php:770
 msgid "Login command is disabled."
 msgstr "登录命令被禁用。"
 
 #. TRANS: Text shown after issuing the login command successfully.
 #. TRANS: %s is a logon link..
 msgid "Login command is disabled."
 msgstr "登录命令被禁用。"
 
 #. TRANS: Text shown after issuing the login command successfully.
 #. TRANS: %s is a logon link..
-#: lib/command.php:779
+#: lib/command.php:783
 #, php-format
 msgid "This link is useable only once and is valid for only 2 minutes: %s."
 msgstr "这个链接只能使用一次并且仅在2分钟内有效:%s。"
 
 #. 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.
 #, php-format
 msgid "This link is useable only once and is valid for only 2 minutes: %s."
 msgstr "这个链接只能使用一次并且仅在2分钟内有效:%s。"
 
 #. 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:808
+#: lib/command.php:812
 #, php-format
 msgid "Unsubscribed %s."
 msgstr "已取消关注%s。"
 
 #. TRANS: Text shown after requesting other users a user is subscribed to without having any subscriptions.
 #, php-format
 msgid "Unsubscribed %s."
 msgstr "已取消关注%s。"
 
 #. TRANS: Text shown after requesting other users a user is subscribed to without having any subscriptions.
-#: lib/command.php:826
+#: lib/command.php:830
 msgid "You are not subscribed to anyone."
 msgstr "你没有关注任何人。"
 
 #. 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.
 msgid "You are not subscribed to anyone."
 msgstr "你没有关注任何人。"
 
 #. 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:831
+#: lib/command.php:835
 msgid "You are subscribed to this person:"
 msgid_plural "You are subscribed to these people:"
 msgstr[0] "你已关注了这个用户:"
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user
 #. TRANS: (followers) without having any subscribers.
 msgid "You are subscribed to this person:"
 msgid_plural "You are subscribed to these people:"
 msgstr[0] "你已关注了这个用户:"
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user
 #. TRANS: (followers) without having any subscribers.
-#: lib/command.php:853
+#: lib/command.php:857
 msgid "No one is subscribed to you."
 msgstr "没有人关注你。"
 
 #. 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.
 msgid "No one is subscribed to you."
 msgstr "没有人关注你。"
 
 #. 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:858
+#: lib/command.php:862
 msgid "This person is subscribed to you:"
 msgid_plural "These people are subscribed to you:"
 msgstr[0] "这个用户正在关注你:"
 
 #. TRANS: Text shown after requesting groups a user is subscribed to without having
 #. TRANS: any group subscriptions.
 msgid "This person is subscribed to you:"
 msgid_plural "These people are subscribed to you:"
 msgstr[0] "这个用户正在关注你:"
 
 #. TRANS: Text shown after requesting groups a user is subscribed to without having
 #. TRANS: any group subscriptions.
-#: lib/command.php:880
+#: lib/command.php:884
 msgid "You are not a member of any groups."
 msgstr "你还未成为任何一个小组的成员。"
 
 #. 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.
 msgid "You are not a member of any groups."
 msgstr "你还未成为任何一个小组的成员。"
 
 #. 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:885
+#: lib/command.php:889
 msgid "You are a member of this group:"
 msgid_plural "You are a member of these groups:"
 msgstr[0] "你是该小组成员:"
 
 #. TRANS: Help text for commands. Do not translate the command names themselves; they are fixed strings.
 msgid "You are a member of this group:"
 msgid_plural "You are a member of these groups:"
 msgstr[0] "你是该小组成员:"
 
 #. TRANS: Help text for commands. Do not translate the command names themselves; they are fixed strings.
-#: lib/command.php:900
+#: lib/command.php:904
 msgid ""
 "Commands:\n"
 "on - turn on notifications\n"
 msgid ""
 "Commands:\n"
 "on - turn on notifications\n"
@@ -6102,13 +7108,13 @@ msgstr ""
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
 #: lib/common.php:136
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
 #: lib/common.php:136
-msgid "No configuration file found. "
-msgstr "没有找到配置文件。 "
+msgid "No configuration file found."
+msgstr "没有找到配置文件。"
 
 #. 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:139
 
 #. 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:139
-msgid "I looked for configuration files in the following places: "
+msgid "I looked for configuration files in the following places:"
 msgstr "我在以下位置查找了配置文件:"
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
 msgstr "我在以下位置查找了配置文件:"
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
@@ -6124,7 +7130,6 @@ msgstr "去安装程序。"
 
 #. TRANS: Menu item for Instant Messaging settings.
 #: lib/connectsettingsaction.php:106
 
 #. TRANS: Menu item for Instant Messaging settings.
 #: lib/connectsettingsaction.php:106
-#, fuzzy
 msgctxt "MENU"
 msgid "IM"
 msgstr "即时通讯IM"
 msgctxt "MENU"
 msgid "IM"
 msgstr "即时通讯IM"
@@ -6136,7 +7141,6 @@ msgstr "使用即时通讯工具(IM)更新"
 
 #. TRANS: Menu item for Short Message Service settings.
 #: lib/connectsettingsaction.php:113
 
 #. TRANS: Menu item for Short Message Service settings.
 #: lib/connectsettingsaction.php:113
-#, fuzzy
 msgctxt "MENU"
 msgid "SMS"
 msgstr "SMS"
 msgctxt "MENU"
 msgid "SMS"
 msgstr "SMS"
@@ -6146,32 +7150,53 @@ msgstr "SMS"
 msgid "Updates by SMS"
 msgstr "使用 SMS 更新"
 
 msgid "Updates by SMS"
 msgstr "使用 SMS 更新"
 
-#. TRANS: Menu item for OAth connection settings.
+#. TRANS: Menu item for OuAth connection settings.
 #: lib/connectsettingsaction.php:120
 #: lib/connectsettingsaction.php:120
-#, fuzzy
 msgctxt "MENU"
 msgid "Connections"
 msgstr "关联"
 
 msgctxt "MENU"
 msgid "Connections"
 msgstr "关联"
 
-#. TRANS: Tooltip for connected applications (Connections through OAth) menu item.
+#. TRANS: Tooltip for connected applications (Connections through OAuth) menu item.
 #: lib/connectsettingsaction.php:122
 msgid "Authorized connected applications"
 msgstr "被授权已连接的应用"
 
 #: lib/connectsettingsaction.php:122
 msgid "Authorized connected applications"
 msgstr "被授权已连接的应用"
 
-#: lib/dberroraction.php:60
+#: lib/dberroraction.php:59
 msgid "Database error"
 msgstr "数据库错误"
 
 msgid "Database error"
 msgstr "数据库错误"
 
-#: 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 "上传文件"
 
 msgid "Upload file"
 msgstr "上传文件"
 
+#. 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."
 msgstr "你可以上传你的个人页面背景。文件最大 2MB。"
 
 #: lib/designsettings.php:109
 msgid ""
 "You can upload your personal background image. The maximum file size is 2MB."
 msgstr "你可以上传你的个人页面背景。文件最大 2MB。"
 
-#: 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 "打开"
+
+#. 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 "关闭"
+
+#. 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 "重置"
+
+#. TRANS: Success message displayed if design settings were saved after clicking "Use defaults".
+#: lib/designsettings.php:433
 msgid "Design defaults restored."
 msgstr "默认外观已恢复。"
 
 msgid "Design defaults restored."
 msgstr "默认外观已恢复。"
 
@@ -6183,22 +7208,23 @@ msgstr "取消收藏这个消息"
 msgid "Favor this notice"
 msgstr "收藏"
 
 msgid "Favor this notice"
 msgstr "收藏"
 
-#: lib/feed.php:85
+#: lib/feed.php:84
 msgid "RSS 1.0"
 msgstr "RSS 1.0"
 
 msgid "RSS 1.0"
 msgstr "RSS 1.0"
 
-#: lib/feed.php:87
+#: lib/feed.php:86
 msgid "RSS 2.0"
 msgstr "RSS 2.0"
 
 msgid "RSS 2.0"
 msgstr "RSS 2.0"
 
-#: lib/feed.php:89
+#: lib/feed.php:88
 msgid "Atom"
 msgstr "Atom"
 
 msgid "Atom"
 msgstr "Atom"
 
-#: lib/feed.php:91
+#: lib/feed.php:90
 msgid "FOAF"
 msgstr "FOAF"
 
 msgid "FOAF"
 msgstr "FOAF"
 
+#. TRANS: Header for feed links (h2).
 #: lib/feedlist.php:66
 msgid "Feeds"
 msgstr "Feeds"
 #: lib/feedlist.php:66
 msgid "Feeds"
 msgstr "Feeds"
@@ -6232,9 +7258,13 @@ msgstr "执行"
 msgid "Grant this user the \"%s\" role"
 msgstr "给这个用户添加\\\"%s\\\"权限"
 
 msgid "Grant this user the \"%s\" role"
 msgstr "给这个用户添加\\\"%s\\\"权限"
 
+#: lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr "1 到 64 个小写字母或数字,不包含标点或空格"
+
 #: lib/groupeditform.php:163
 #: lib/groupeditform.php:163
-msgid "URL of the homepage or blog of the group or topic"
-msgstr "这个小组或主题的主页或博客 URL"
+msgid "URL of the homepage or blog of the group or topic."
+msgstr "这个小组或主题的主页或博客 URL"
 
 #: lib/groupeditform.php:168
 msgid "Describe the group or topic"
 
 #: lib/groupeditform.php:168
 msgid "Describe the group or topic"
@@ -6242,18 +7272,24 @@ msgstr "小组或主题的描述"
 
 #: lib/groupeditform.php:170
 #, php-format
 
 #: lib/groupeditform.php:170
 #, php-format
-msgid "Describe the group or topic in %d characters"
-msgstr "小组或主题的描述,不能超过%d个字符"
+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] "用不超过%d个字符描述下这个小组或者主题"
 
 
-#: lib/groupeditform.php:179
+#: lib/groupeditform.php:182
 msgid ""
 msgid ""
-"Location for the group, if any, like \"City, State (or Region), Country\""
-msgstr "小组的地理位置,例如“国家、省份、城市”"
+"Location for the group, if any, like \"City, State (or Region), Country\"."
+msgstr "小组的地理位置,例如“国家、省份、城市”"
 
 
-#: lib/groupeditform.php:187
+#: lib/groupeditform.php:190
 #, php-format
 #, php-format
-msgid "Extra nicknames for the group, comma- or space- separated, max %d"
-msgstr "该小组额外的昵称,用逗号或者空格分隔开,最长%d"
+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] "该小组额外的昵称,用逗号或者空格分隔开,最多%d个别名。"
 
 #. TRANS: Menu item in the group navigation page.
 #: lib/groupnav.php:86
 
 #. TRANS: Menu item in the group navigation page.
 #: lib/groupnav.php:86
@@ -6327,15 +7363,19 @@ msgctxt "TOOLTIP"
 msgid "Add or edit %s design"
 msgstr "添加或编辑 %s 外观"
 
 msgid "Add or edit %s design"
 msgstr "添加或编辑 %s 外观"
 
+#. TRANS: Title for groups with the most members section.
 #: lib/groupsbymemberssection.php:71
 msgid "Groups with most members"
 msgstr "人气最旺的小组"
 
 #: lib/groupsbymemberssection.php:71
 msgid "Groups with most members"
 msgstr "人气最旺的小组"
 
+#. TRANS: Title for groups with the most posts section.
 #: lib/groupsbypostssection.php:71
 msgid "Groups with most posts"
 msgstr "发布消息最多的小组"
 
 #: lib/groupsbypostssection.php:71
 msgid "Groups with most posts"
 msgstr "发布消息最多的小组"
 
-#: 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 "这个组所发布的消息的标签"
 #, php-format
 msgid "Tags in %s group's notices"
 msgstr "这个组所发布的消息的标签"
@@ -6349,39 +7389,54 @@ msgstr "这个页面不提供你想要的媒体类型"
 msgid "Unsupported image file format."
 msgstr "不支持这种图像格式。"
 
 msgid "Unsupported image file format."
 msgstr "不支持这种图像格式。"
 
-#: 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 "文件太大。文件大小限制在%s以下。"
 
 #, php-format
 msgid "That file is too big. The maximum file size is %s."
 msgstr "文件太大。文件大小限制在%s以下。"
 
-#: lib/imagefile.php:93
+#: lib/imagefile.php:95
 msgid "Partial upload."
 msgstr "部分上传。"
 
 #. TRANS: Client exception thrown when a file upload operation has failed with an unknown reason.
 msgid "Partial upload."
 msgstr "部分上传。"
 
 #. 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 "上传文件时出错。"
 
 msgid "System error uploading file."
 msgstr "上传文件时出错。"
 
-#: lib/imagefile.php:109
+#: lib/imagefile.php:111
 msgid "Not an image or corrupt file."
 msgstr "不是图片文件或文件已损坏。"
 
 msgid "Not an image or corrupt file."
 msgstr "不是图片文件或文件已损坏。"
 
-#: lib/imagefile.php:122
+#: lib/imagefile.php:160
 msgid "Lost our file."
 msgstr "文件数据丢失"
 
 msgid "Lost our file."
 msgstr "文件数据丢失"
 
-#: lib/imagefile.php:163 lib/imagefile.php:224
+#: lib/imagefile.php:197 lib/imagefile.php:237
 msgid "Unknown file type"
 msgstr "未知文件类型"
 
 msgid "Unknown file type"
 msgstr "未知文件类型"
 
-#: lib/imagefile.php:244
-msgid "MB"
-msgstr "MB"
+#. TRANS: Number of megabytes. %d is the number.
+#: lib/imagefile.php:283
+#, php-format
+msgid "%dMB"
+msgid_plural "%dMB"
+msgstr[0] "%dMB"
+
+#. TRANS: Number of kilobytes. %d is the number.
+#: lib/imagefile.php:287
+#, php-format
+msgid "%dkB"
+msgid_plural "%dkB"
+msgstr[0] "%dkB"
 
 
-#: lib/imagefile.php:246
-msgid "kB"
-msgstr "kB"
+#. TRANS: Number of bytes. %d is the number.
+#: lib/imagefile.php:290
+#, php-format
+msgid "%dB"
+msgid_plural "%dB"
+msgstr[0] "%dB"
 
 #: lib/jabber.php:387
 #, php-format
 
 #: lib/jabber.php:387
 #, php-format
@@ -6405,48 +7460,53 @@ msgstr "用用户名和密码登录。"
 msgid "Sign up for a new account"
 msgstr "注册一个新帐户"
 
 msgid "Sign up for a new account"
 msgstr "注册一个新帐户"
 
-#. TRANS: Subject for address confirmation email
+#. TRANS: Subject for address confirmation email.
 #: lib/mail.php:174
 msgid "Email address confirmation"
 msgstr "电子邮件地址确认"
 
 #. TRANS: Body for address confirmation email.
 #: lib/mail.php:174
 msgid "Email address confirmation"
 msgstr "电子邮件地址确认"
 
 #. 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 ""
 #, php-format
 msgid ""
-"Hey, %s.\n"
+"Hey, %1$s.\n"
 "\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"
 "\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"
 "\n"
 "If not, just ignore this message.\n"
 "\n"
 "Thanks for your time, \n"
-"%s\n"
+"%2$s\n"
 msgstr ""
 msgstr ""
-"嗨, %s。\n"
+"嗨, %1$s。\n"
 "\n"
 "\n"
-"刚刚有人在%s填写了你的电子邮件地址。\n"
+"刚刚有人在%2$s填写了你的电子邮件地址。\n"
 "\n"
 "如果是你的操作并且你想完成你的确认,请使用下面的URL:\n"
 "\n"
 "\n"
 "如果是你的操作并且你想完成你的确认,请使用下面的URL:\n"
 "\n"
-"%s\n"
+"%3$s\n"
 "\n"
 "如果你不知道这封邮件是怎么回事,忽略掉这封邮件就好。\n"
 "\n"
 "谢谢你的宝贵时间,\n"
 "\n"
 "如果你不知道这封邮件是怎么回事,忽略掉这封邮件就好。\n"
 "\n"
 "谢谢你的宝贵时间,\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 开始关注你在 %2$s 的消息。"
 
 #, php-format
 msgid "%1$s is now listening to your notices on %2$s."
 msgstr "%1$s 开始关注你在 %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 "
 #, php-format
 msgid ""
 "If you believe this account is being used abusively, you can block them from "
@@ -6455,8 +7515,12 @@ msgstr ""
 "如果你认为此帐户正被人恶意使用,你可以将其从你的关注者中屏蔽掉并到 %s 报告给"
 "网站的管理员为他们在发垃圾信息。"
 
 "如果你认为此帐户正被人恶意使用,你可以将其从你的关注者中屏蔽掉并到 %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"
 #, php-format
 msgid ""
 "%1$s is now listening to your notices on %2$s.\n"
@@ -6465,36 +7529,40 @@ msgid ""
 "\n"
 "%4$s%5$s%6$s\n"
 "Faithfully yours,\n"
 "\n"
 "%4$s%5$s%6$s\n"
 "Faithfully yours,\n"
-"%7$s.\n"
+"%2$s.\n"
 "\n"
 "----\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开始关注你在%2$s的消息。\n"
 "\n"
 msgstr ""
 "%1$s开始关注你在%2$s的消息。\n"
 "\n"
-"\t%3$s\n"
+"%3$s\n"
 "\n"
 "%4$s%5$s%6$s\n"
 "真诚的问候,\n"
 "\n"
 "%4$s%5$s%6$s\n"
 "真诚的问候,\n"
-"%7$s.\n"
+"%2$s.\n"
 "\n"
 "----\n"
 "\n"
 "----\n"
-"在%8$s更改你的 email 地址或通知选项\n"
+"在%7$s更改你的 email 地址或通知选项\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 "自我介绍:%s"
 
 #, php-format
 msgid "Bio: %s"
 msgstr "自我介绍:%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 "新的电子邮件地址,用于发布 %s 信息"
 
 #, php-format
 msgid "New email address for posting to %s"
 msgstr "新的电子邮件地址,用于发布 %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"
 #, php-format
 msgid ""
 "You have a new posting address on %1$s.\n"
@@ -6504,7 +7572,7 @@ msgid ""
 "More email instructions at %3$s.\n"
 "\n"
 "Faithfully yours,\n"
 "More email instructions at %3$s.\n"
 "\n"
 "Faithfully yours,\n"
-"%4$s"
+"%1$s"
 msgstr ""
 "你的 %1$s 发布用地址已更新。\n"
 "\n"
 msgstr ""
 "你的 %1$s 发布用地址已更新。\n"
 "\n"
@@ -6514,33 +7582,38 @@ msgstr ""
 "\n"
 "真诚的问候,\n"
 "\n"
 "\n"
 "真诚的问候,\n"
 "\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 "%s 状态"
 
 #, php-format
 msgid "%s status"
 msgstr "%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 "SMS 验证"
 
 msgid "SMS confirmation"
 msgstr "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:通过此代码证明这是你的手机:"
 
 #, php-format
 msgid "%s: confirm you own this phone number with this code:"
 msgstr "%s:通过此代码证明这是你的手机:"
 
-#. 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 "你被%s呼叫了"
 
 #, php-format
 msgid "You've been nudged by %s"
 msgstr "你被%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 "
 #, php-format
 msgid ""
 "%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -6566,14 +7639,18 @@ msgstr ""
 "亲切的问候,\n"
 "%4$s\n"
 
 "亲切的问候,\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 "来自%s的私信"
 
 #, php-format
 msgid "New private message from %s"
 msgstr "来自%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"
 #, php-format
 msgid ""
 "%1$s (%2$s) sent you a private message:\n"
@@ -6606,14 +7683,19 @@ msgstr ""
 "亲切的问候,\n"
 "%5$s\n"
 
 "亲切的问候,\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
 #, php-format
-msgid "%s (@%s) added your notice as a favorite"
-msgstr "%s (@%s) 收藏了你的消息"
+msgid "%1$s (@%2$s) added your notice as a favorite"
+msgstr "%1$s (@%2$s) 收藏了你的消息"
 
 
-#. 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"
 #, php-format
 msgid ""
 "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -6651,7 +7733,7 @@ msgstr ""
 "%6$s\n"
 
 #. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
 "%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"
 #, php-format
 msgid ""
 "The full conversation can be read here:\n"
@@ -6662,13 +7744,20 @@ msgstr ""
 "\n"
 "\t%s"
 
 "\n"
 "\t%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
 #, php-format
-msgid "%s (@%s) sent a notice to your attention"
-msgstr "%s (@%s) 给你发送了一条消息"
+msgid "%1$s (@%2$s) sent a notice to your attention"
+msgstr "%1$s (@%2$s) 给你发送了一条消息"
 
 #. TRANS: Body of @-reply notification e-mail.
 
 #. 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"
 #, php-format
 msgid ""
 "%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6729,7 +7818,7 @@ msgstr ""
 "你没有任何私信。你可以试着发送私信给其他用户鼓励他们用私信和你交流。其他用户"
 "发给你你私信只有你看得到。"
 
 "你没有任何私信。你可以试着发送私信给其他用户鼓励他们用私信和你交流。其他用户"
 "发给你你私信只有你看得到。"
 
-#: lib/mailbox.php:228 lib/noticelist.php:516
+#: lib/mailbox.php:228 lib/noticelist.php:521
 msgid "from"
 msgstr "通过"
 
 msgid "from"
 msgstr "通过"
 
@@ -6749,69 +7838,69 @@ msgstr "抱歉,这个不是你的收信电子邮件地址。"
 msgid "Sorry, no incoming email allowed."
 msgstr "抱歉,现在不允许电子邮件发布。"
 
 msgid "Sorry, no incoming email allowed."
 msgstr "抱歉,现在不允许电子邮件发布。"
 
-#: lib/mailhandler.php:228
+#: lib/mailhandler.php:229
 #, php-format
 msgid "Unsupported message type: %s"
 msgstr "不支持的信息格式:%s"
 
 #. TRANS: Client exception thrown when a database error was thrown during a file upload operation.
 #, php-format
 msgid "Unsupported message type: %s"
 msgstr "不支持的信息格式:%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 "保存你的文件时数据库出现了一个错误。请重试。"
 
 #. TRANS: Client exception thrown when an uploaded file is larger than set in php.ini.
 msgid "There was a database error while saving your file. Please try again."
 msgstr "保存你的文件时数据库出现了一个错误。请重试。"
 
 #. 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 "上传文件大小超过了 php.ini 中 upload_max_filesize 的设置限制。"
 
 #. TRANS: Client exception.
 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
 msgstr "上传文件大小超过了 php.ini 中 upload_max_filesize 的设置限制。"
 
 #. 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."
 msgstr "上传文件大小超过了 HTML 表单中 MAX_FILE_SIZE 的设置限制。"
 
 #. TRANS: Client exception.
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form."
 msgstr "上传文件大小超过了 HTML 表单中 MAX_FILE_SIZE 的设置限制。"
 
 #. TRANS: Client exception.
-#: lib/mediafile.php:157
+#: lib/mediafile.php:206
 msgid "The uploaded file was only partially uploaded."
 msgstr "上传的文件只有部分被上传。"
 
 #. TRANS: Client exception thrown when a temporary folder is not present to store a file upload.
 msgid "The uploaded file was only partially uploaded."
 msgstr "上传的文件只有部分被上传。"
 
 #. 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 "缺少一个临时文件夹。"
 
 #. TRANS: Client exception thrown when writing to disk is not possible during a file upload operation.
 msgid "Missing a temporary folder."
 msgstr "缺少一个临时文件夹。"
 
 #. 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 "写入磁盘失败。"
 
 #. TRANS: Client exception thrown when a file upload operation has been stopped by an extension.
 msgid "Failed to write file to disk."
 msgstr "写入磁盘失败。"
 
 #. 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 "文件上传被扩展停止了。"
 
 #. TRANS: Client exception thrown when a file upload operation would cause a user to exceed a set quota.
 msgid "File upload stopped by extension."
 msgstr "文件上传被扩展停止了。"
 
 #. 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 "文件超过了用户的配额。"
 
 #. 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.
 msgid "File exceeds user's quota."
 msgstr "文件超过了用户的配额。"
 
 #. 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 "文件不能被移动到目标目录。"
 
 #. 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.
 msgid "File could not be moved to destination directory."
 msgstr "文件不能被移动到目标目录。"
 
 #. 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 "无法判断文件的 MIME 类型。"
 
 #. 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.
 msgid "Could not determine file's MIME type."
 msgstr "无法判断文件的 MIME 类型。"
 
 #. 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 "
 #, php-format
 msgid ""
 "\"%1$s\" is not a supported file type on this server. Try using another %2$s "
@@ -6820,7 +7909,7 @@ msgstr "此服务器不支持 “%1$s” 的文件格式,试下使用其他的
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %s is the file type that was denied.
 
 #. 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 的文件格式。"
 #, php-format
 msgid "\"%s\" is not a supported file type on this server."
 msgstr "这个服务器不支持 %s 的文件格式。"
@@ -6829,15 +7918,27 @@ msgstr "这个服务器不支持 %s 的文件格式。"
 msgid "Send a direct notice"
 msgstr "发送一条私信"
 
 msgid "Send a direct notice"
 msgstr "发送一条私信"
 
-#: 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
+#, fuzzy
+msgid "Select recipient:"
+msgstr "选择许可协议"
+
+#. TRANS Entry in drop-down selection box in direct-message inbox/outbox when no one is available to message.
+#: lib/messageform.php:150
+#, fuzzy
+msgid "No mutual subscribers."
+msgstr "未关注!"
+
+#: lib/messageform.php:153
 msgid "To"
 msgstr "到"
 
 msgid "To"
 msgstr "到"
 
-#: lib/messageform.php:159 lib/noticeform.php:186
+#: lib/messageform.php:166 lib/noticeform.php:186
 msgid "Available characters"
 msgstr "可用的字符"
 
 msgid "Available characters"
 msgstr "可用的字符"
 
-#: 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 "发布"
 msgctxt "Send button for sending notice"
 msgid "Send"
 msgstr "发布"
@@ -6874,55 +7975,55 @@ msgid ""
 msgstr "抱歉,获取你的地理位置时间过长,请稍候重试"
 
 #. TRANS: Used in coordinates as abbreviation of north
 msgstr "抱歉,获取你的地理位置时间过长,请稍候重试"
 
 #. TRANS: Used in coordinates as abbreviation of north
-#: lib/noticelist.php:446
+#: lib/noticelist.php:451
 msgid "N"
 msgstr "N"
 
 #. TRANS: Used in coordinates as abbreviation of south
 msgid "N"
 msgstr "N"
 
 #. TRANS: Used in coordinates as abbreviation of south
-#: lib/noticelist.php:448
+#: lib/noticelist.php:453
 msgid "S"
 msgstr "S"
 
 #. TRANS: Used in coordinates as abbreviation of east
 msgid "S"
 msgstr "S"
 
 #. TRANS: Used in coordinates as abbreviation of east
-#: lib/noticelist.php:450
+#: lib/noticelist.php:455
 msgid "E"
 msgstr "E"
 
 #. TRANS: Used in coordinates as abbreviation of west
 msgid "E"
 msgstr "E"
 
 #. TRANS: Used in coordinates as abbreviation of west
-#: lib/noticelist.php:452
+#: lib/noticelist.php:457
 msgid "W"
 msgstr "W"
 
 msgid "W"
 msgstr "W"
 
-#: lib/noticelist.php:454
+#: 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"
 
 #, 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:463
+#: lib/noticelist.php:468
 msgid "at"
 msgstr "位于"
 
 msgid "at"
 msgstr "位于"
 
-#: lib/noticelist.php:512
+#: lib/noticelist.php:517
 msgid "web"
 msgstr "网页"
 
 msgid "web"
 msgstr "网页"
 
-#: lib/noticelist.php:578
+#: lib/noticelist.php:583
 msgid "in context"
 msgstr "查看对话"
 
 msgid "in context"
 msgstr "查看对话"
 
-#: lib/noticelist.php:613
+#: lib/noticelist.php:618
 msgid "Repeated by"
 msgstr "转发来自"
 
 msgid "Repeated by"
 msgstr "转发来自"
 
-#: lib/noticelist.php:640
+#: lib/noticelist.php:645
 msgid "Reply to this notice"
 msgstr "回复"
 
 msgid "Reply to this notice"
 msgstr "回复"
 
-#: lib/noticelist.php:641
+#: lib/noticelist.php:646
 msgid "Reply"
 msgstr "回复"
 
 msgid "Reply"
 msgstr "回复"
 
-#: lib/noticelist.php:685
+#: lib/noticelist.php:690
 msgid "Notice repeated"
 msgstr "消息已转发"
 
 msgid "Notice repeated"
 msgstr "消息已转发"
 
@@ -6938,52 +8039,52 @@ msgstr "呼叫"
 msgid "Send a nudge to this user"
 msgstr "呼叫这个用户"
 
 msgid "Send a nudge to this user"
 msgstr "呼叫这个用户"
 
-#: lib/oauthstore.php:283
+#: lib/oauthstore.php:294
 msgid "Error inserting new profile."
 msgstr "添加新个人信息出错。"
 
 msgid "Error inserting new profile."
 msgstr "添加新个人信息出错。"
 
-#: lib/oauthstore.php:291
+#: lib/oauthstore.php:302
 msgid "Error inserting avatar."
 msgstr "添加头像出错。"
 
 msgid "Error inserting avatar."
 msgstr "添加头像出错。"
 
-#: lib/oauthstore.php:311
+#: lib/oauthstore.php:322
 msgid "Error inserting remote profile."
 msgstr "添加远程个人信息时出错。"
 
 #. TRANS: Exception thrown when a notice is denied because it has been sent before.
 msgid "Error inserting remote profile."
 msgstr "添加远程个人信息时出错。"
 
 #. 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 "复制消息。"
 
 msgid "Duplicate notice."
 msgstr "复制消息。"
 
-#: lib/oauthstore.php:491
+#: lib/oauthstore.php:507
 msgid "Couldn't insert new subscription."
 msgstr "无法添加新的关注。"
 
 msgid "Couldn't insert new subscription."
 msgstr "无法添加新的关注。"
 
-#: lib/personalgroupnav.php:99
+#: lib/personalgroupnav.php:102
 msgid "Personal"
 msgstr "我的主页"
 
 msgid "Personal"
 msgstr "我的主页"
 
-#: lib/personalgroupnav.php:104
+#: lib/personalgroupnav.php:107
 msgid "Replies"
 msgstr "回复"
 
 msgid "Replies"
 msgstr "回复"
 
-#: lib/personalgroupnav.php:114
+#: lib/personalgroupnav.php:117
 msgid "Favorites"
 msgstr "收藏夹"
 
 msgid "Favorites"
 msgstr "收藏夹"
 
-#: lib/personalgroupnav.php:125
+#: lib/personalgroupnav.php:128
 msgid "Inbox"
 msgstr "收件箱"
 
 msgid "Inbox"
 msgstr "收件箱"
 
-#: lib/personalgroupnav.php:126
+#: lib/personalgroupnav.php:129
 msgid "Your incoming messages"
 msgstr "你收到的私信"
 
 msgid "Your incoming messages"
 msgstr "你收到的私信"
 
-#: lib/personalgroupnav.php:130
+#: lib/personalgroupnav.php:133
 msgid "Outbox"
 msgstr "发件箱"
 
 msgid "Outbox"
 msgstr "发件箱"
 
-#: lib/personalgroupnav.php:131
+#: lib/personalgroupnav.php:134
 msgid "Your sent messages"
 msgstr "你发送的私信"
 
 msgid "Your sent messages"
 msgstr "你发送的私信"
 
@@ -7075,9 +8176,10 @@ msgstr "转发"
 msgid "Revoke the \"%s\" role from this user"
 msgstr "取消这个用户的\"%s\"权限"
 
 msgid "Revoke the \"%s\" role from this user"
 msgstr "取消这个用户的\"%s\"权限"
 
-#: lib/router.php:711
-msgid "No single user defined for single-user mode."
-msgstr "没有单独的用户被定义为单用户模式。"
+#. TRANS: Client error on action trying to visit a non-existing page.
+#: lib/router.php:858
+msgid "Page not found."
+msgstr "没有找到页面。"
 
 #: lib/sandboxform.php:67
 msgid "Sandbox"
 
 #: lib/sandboxform.php:67
 msgid "Sandbox"
@@ -7088,16 +8190,17 @@ msgid "Sandbox this user"
 msgstr "将这个用户放入沙盒。"
 
 #. TRANS: Fieldset legend for the search form.
 msgstr "将这个用户放入沙盒。"
 
 #. TRANS: Fieldset legend for the search form.
-#: lib/searchaction.php:121
+#: lib/searchaction.php:120
 msgid "Search site"
 msgstr "搜索帮助"
 
 #. TRANS: Used as a field label for the field where one or more keywords
 #. TRANS: for searching can be entered.
 msgid "Search site"
 msgstr "搜索帮助"
 
 #. 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 "关键词"
 
 msgid "Keyword(s)"
 msgstr "关键词"
 
+#. TRANS: Button text for searching site.
 #: lib/searchaction.php:130
 msgctxt "BUTTON"
 msgid "Search"
 #: lib/searchaction.php:130
 msgctxt "BUTTON"
 msgid "Search"
@@ -7178,6 +8281,11 @@ msgstr "被添加标签的用户标签云"
 msgid "None"
 msgstr "无"
 
 msgid "None"
 msgstr "无"
 
+#. TRANS: Server exception displayed if a theme name was invalid.
+#: lib/theme.php:74
+msgid "Invalid theme name."
+msgstr "无效的主题名。"
+
 #: lib/themeuploader.php:50
 msgid "This server cannot handle theme uploads without ZIP support."
 msgstr "服务器不支持 ZIP,无法处理上传的主题。"
 #: lib/themeuploader.php:50
 msgid "This server cannot handle theme uploads without ZIP support."
 msgstr "服务器不支持 ZIP,无法处理上传的主题。"
@@ -7187,8 +8295,8 @@ msgid "The theme file is missing or the upload failed."
 msgstr "主题文件丢失或上传失败。"
 
 #: lib/themeuploader.php:91 lib/themeuploader.php:102
 msgstr "主题文件丢失或上传失败。"
 
 #: 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 "保存主题失败"
 
 msgid "Failed saving theme."
 msgstr "保存主题失败"
 
@@ -7198,30 +8306,32 @@ msgstr "无效的主题:目录结构损坏。"
 
 #: lib/themeuploader.php:166
 #, php-format
 
 #: lib/themeuploader.php:166
 #, php-format
-msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
-msgstr "上传的主题过大,解压后必须小于%d字节。"
+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] "上传的主题过大,解压后必须小于%d字节。"
 
 
-#: lib/themeuploader.php:178
+#: lib/themeuploader.php:179
 msgid "Invalid theme archive: missing file css/display.css"
 msgstr "无效的主题存档:css/display.css 文件丢失"
 
 msgid "Invalid theme archive: missing file css/display.css"
 msgstr "无效的主题存档:css/display.css 文件丢失"
 
-#: 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."
 msgstr ""
 "主题包含无效的文件或文件夹的名称。请只使用 ASCII 字母,数字,下划线和减号。"
 
 msgid ""
 "Theme contains invalid file or folder name. Stick with ASCII letters, "
 "digits, underscore, and minus sign."
 msgstr ""
 "主题包含无效的文件或文件夹的名称。请只使用 ASCII 字母,数字,下划线和减号。"
 
-#: lib/themeuploader.php:224
+#: lib/themeuploader.php:225
 msgid "Theme contains unsafe file extension names; may be unsafe."
 msgstr "主题包含不安全的文件扩展名,可能有危险。"
 
 msgid "Theme contains unsafe file extension names; may be unsafe."
 msgstr "主题包含不安全的文件扩展名,可能有危险。"
 
-#: lib/themeuploader.php:241
+#: lib/themeuploader.php:242
 #, php-format
 msgid "Theme contains file of type '.%s', which is not allowed."
 msgstr "主题包含不允许的”.%s“格式文件。"
 
 #, php-format
 msgid "Theme contains file of type '.%s', which is not allowed."
 msgstr "主题包含不允许的”.%s“格式文件。"
 
-#: lib/themeuploader.php:259
+#: lib/themeuploader.php:260
 msgid "Error opening theme archive."
 msgstr "打开主题文件时出错。"
 
 msgid "Error opening theme archive."
 msgstr "打开主题文件时出错。"
 
@@ -7229,6 +8339,12 @@ msgstr "打开主题文件时出错。"
 msgid "Top posters"
 msgstr "灌水精英"
 
 msgid "Top posters"
 msgstr "灌水精英"
 
+#. TRANS: Title for the form to unblock a user.
+#: lib/unblockform.php:67
+msgctxt "TITLE"
+msgid "Unblock"
+msgstr "取消屏蔽"
+
 #: lib/unsandboxform.php:69
 msgid "Unsandbox"
 msgstr "移出沙盒"
 #: lib/unsandboxform.php:69
 msgid "Unsandbox"
 msgstr "移出沙盒"
@@ -7256,134 +8372,165 @@ msgstr "取消关注"
 #. 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
 #. 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
-#, fuzzy, php-format
+#, php-format
 msgid "User %1$s (%2$d) has no profile record."
 msgid "User %1$s (%2$d) has no profile record."
-msgstr "用户没有个人信息。"
+msgstr "用户 %1$s (%2$d) 没有个人信息记录。"
 
 
-#: lib/userprofile.php:117
+#: lib/userprofile.php:119
 msgid "Edit Avatar"
 msgstr "编辑头像"
 
 msgid "Edit Avatar"
 msgstr "编辑头像"
 
-#: lib/userprofile.php:234 lib/userprofile.php:248
+#: lib/userprofile.php:236 lib/userprofile.php:250
 msgid "User actions"
 msgstr "用户动作"
 
 msgid "User actions"
 msgstr "用户动作"
 
-#: lib/userprofile.php:237
+#: lib/userprofile.php:239
 msgid "User deletion in progress..."
 msgstr "用户删除处理中……"
 
 msgid "User deletion in progress..."
 msgstr "用户删除处理中……"
 
-#: lib/userprofile.php:263
+#: lib/userprofile.php:265
 msgid "Edit profile settings"
 msgstr "编辑个人信息设置"
 
 msgid "Edit profile settings"
 msgstr "编辑个人信息设置"
 
-#: lib/userprofile.php:264
+#: lib/userprofile.php:266
 msgid "Edit"
 msgstr "编辑"
 
 msgid "Edit"
 msgstr "编辑"
 
-#: lib/userprofile.php:287
+#: lib/userprofile.php:289
 msgid "Send a direct message to this user"
 msgstr "给该用户发送私信"
 
 msgid "Send a direct message to this user"
 msgstr "给该用户发送私信"
 
-#: lib/userprofile.php:288
+#: lib/userprofile.php:290
 msgid "Message"
 msgstr "私信"
 
 msgid "Message"
 msgstr "私信"
 
-#: lib/userprofile.php:326
+#: lib/userprofile.php:331
 msgid "Moderate"
 msgstr "审核"
 
 msgid "Moderate"
 msgstr "审核"
 
-#: lib/userprofile.php:364
+#: lib/userprofile.php:369
 msgid "User role"
 msgstr "用户权限"
 
 msgid "User role"
 msgstr "用户权限"
 
-#: lib/userprofile.php:366
+#: lib/userprofile.php:371
 msgctxt "role"
 msgid "Administrator"
 msgstr "管理员"
 
 msgctxt "role"
 msgid "Administrator"
 msgstr "管理员"
 
-#: lib/userprofile.php:367
+#: lib/userprofile.php:372
 msgctxt "role"
 msgid "Moderator"
 msgstr "审核员"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgctxt "role"
 msgid "Moderator"
 msgstr "审核员"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1126
+#: lib/util.php:1177
 msgid "a few seconds ago"
 msgstr "几秒前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgid "a few seconds ago"
 msgstr "几秒前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1129
+#: lib/util.php:1180
 msgid "about a minute ago"
 msgstr "约1分钟前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgid "about a minute ago"
 msgstr "约1分钟前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1133
+#: lib/util.php:1184
 #, php-format
 msgid "about one minute ago"
 msgid_plural "about %d minutes ago"
 #, php-format
 msgid "about one minute ago"
 msgid_plural "about %d minutes ago"
-msgstr[0] "约1分钟前"
+msgstr[0] "约%d分钟前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1136
+#: lib/util.php:1187
 msgid "about an hour ago"
 msgstr "约1小时前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgid "about an hour ago"
 msgstr "约1小时前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1140
+#: lib/util.php:1191
 #, php-format
 msgid "about one hour ago"
 msgid_plural "about %d hours ago"
 #, php-format
 msgid "about one hour ago"
 msgid_plural "about %d hours ago"
-msgstr[0] "约小时前"
+msgstr[0] "约%d小时前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1143
+#: lib/util.php:1194
 msgid "about a day ago"
 msgstr "约1天前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgid "about a day ago"
 msgstr "约1天前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1147
+#: lib/util.php:1198
 #, php-format
 msgid "about one day ago"
 msgid_plural "about %d days ago"
 #, php-format
 msgid "about one day ago"
 msgid_plural "about %d days ago"
-msgstr[0] "约1天前"
+msgstr[0] "约%d天前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1150
+#: lib/util.php:1201
 msgid "about a month ago"
 msgstr "约1个月前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 msgid "about a month ago"
 msgstr "约1个月前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1154
+#: lib/util.php:1205
 #, php-format
 msgid "about one month ago"
 msgid_plural "about %d months ago"
 #, php-format
 msgid "about one month ago"
 msgid_plural "about %d months ago"
-msgstr[0] "约1个月前"
+msgstr[0] "约%d个月前"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1157
+#: lib/util.php:1208
 msgid "about a year ago"
 msgstr "约1年前"
 
 msgid "about a year ago"
 msgstr "约1年前"
 
-#: lib/webcolor.php:82
+#: lib/webcolor.php:80
 #, php-format
 msgid "%s is not a valid color!"
 msgstr "%s不是有效的颜色!"
 
 #, php-format
 msgid "%s is not a valid color!"
 msgstr "%s不是有效的颜色!"
 
-#: 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
 #, 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不是有效的颜色!应使用3或6个十六进制字符。"
 
 msgstr "%s不是有效的颜色!应使用3或6个十六进制字符。"
 
-#: scripts/restoreuser.php:82
+#. TRANS: %s is the URL to the StatusNet site's Instant Messaging settings.
+#: lib/xmppmanager.php:287
+#, php-format
+msgid "Unknown user. Go to %s to add your address to your account"
+msgstr "未知的用户。到 %s 添加你的账号的地址"
+
+#. 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] "消息太长了,不能超过%1$d个字符,你发送的是%2$d。"
+
+#. TRANS: Exception.
+#: lib/xrd.php:64
+#, fuzzy
+msgid "Invalid XML."
+msgstr "大小不正确。"
+
+#. TRANS: Exception.
+#: lib/xrd.php:69
+msgid "Invalid XML, missing XRD root."
+msgstr ""
+
+#. TRANS: Commandline script output. %s is the filename that contains a backup for a user.
+#: scripts/restoreuser.php:61
 #, php-format
 #, php-format
-msgid "Backup file for user %s (%s)"
-msgstr "用户 %s (%s) 的备份文件"
+msgid "Getting backup from file '%s'."
+msgstr "从文件'%s'获取备份。"
 
 
-#: scripts/restoreuser.php:88
+#. TRANS: Commandline script output.
+#: scripts/restoreuser.php:91
 msgid "No user specified; using backup user."
 msgstr "没有用户被指定;使用备份用户。"
 
 msgid "No user specified; using backup user."
 msgstr "没有用户被指定;使用备份用户。"
 
-#: 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
 #, php-format
-msgid "%d entries in backup."
-msgstr "备份中有 %d 个条目。"
+msgid "%d entry in backup."
+msgid_plural "%d entries in backup."
+msgstr[0] "备份中有 %d 个条目。"