mirror of
https://github.com/Nheko-Reborn/nheko.git
synced 2024-11-29 22:28:49 +03:00
2003 lines
65 KiB
XML
2003 lines
65 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!DOCTYPE TS>
|
||
<TS version="2.1" language="zh_CN">
|
||
<context>
|
||
<name>Cache</name>
|
||
<message>
|
||
<location filename="../../src/Cache.cpp" line="+1658"/>
|
||
<source>You joined this room.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>ChatPage</name>
|
||
<message>
|
||
<location filename="../../src/ChatPage.cpp" line="+218"/>
|
||
<source>Failed to invite user: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<location line="+947"/>
|
||
<source>Invited user: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-458"/>
|
||
<source>Migrating the cache to the current version failed. This can have different reasons. Please open an issue and try to use an older version in the mean time. Alternatively you can try deleting the cache manually.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+415"/>
|
||
<source>Room %1 created.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+26"/>
|
||
<source>Confirm invite</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Do you really want to invite %1 (%2)?</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Failed to invite %1 to %2: %3</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<source>Confirm kick</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Do you really want to kick %1 (%2)?</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Failed to kick %1 to %2: %3</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Kicked user: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>Confirm ban</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Do you really want to ban %1 (%2)?</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Failed to ban %1 in %2: %3</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Banned user: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>Confirm unban</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Do you really want to unban %1 (%2)?</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Failed to unban %1 in %2: %3</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Unbanned user: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-874"/>
|
||
<source>Failed to upload media. Please try again.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+334"/>
|
||
<source>Cache migration failed!</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+13"/>
|
||
<source>Incompatible cache version</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>The cache on your disk is newer than this version of Nheko supports. Please update or clear your cache.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+67"/>
|
||
<source>Failed to restore OLM account. Please login again.</source>
|
||
<translation>恢复 OLM 账户失败。请重新登录。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Failed to restore save data. Please login again.</source>
|
||
<translation>恢复保存的数据失败。请重新登录。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+165"/>
|
||
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+99"/>
|
||
<location line="+251"/>
|
||
<source>Please try to login again: %1</source>
|
||
<translation>请尝试再次登录:%1</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-219"/>
|
||
<source>Failed to join room: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You joined the room</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Failed to remove invite: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+19"/>
|
||
<source>Room creation failed: %1</source>
|
||
<translation>创建聊天室失败:%1</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+16"/>
|
||
<source>Failed to leave room: %1</source>
|
||
<translation>离开聊天室失败:%1</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>CommunitiesListItem</name>
|
||
<message>
|
||
<location filename="../../src/CommunitiesListItem.cpp" line="+133"/>
|
||
<source>All rooms</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Favourite rooms</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Low priority rooms</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Server Notices</source>
|
||
<comment>Tag translation for m.server_notice</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<location line="+2"/>
|
||
<source> (tag)</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source> (community)</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>EditModal</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/RoomSettings.cpp" line="+72"/>
|
||
<source>Apply</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>Name</source>
|
||
<translation>名称</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Topic</source>
|
||
<translation>主题</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>EmojiPicker</name>
|
||
<message>
|
||
<location filename="../qml/emoji/EmojiPicker.qml" line="+117"/>
|
||
<location line="+139"/>
|
||
<source>Search</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-42"/>
|
||
<source>People</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Nature</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Food</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Activity</source>
|
||
<translation type="unfinished">Activity</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Travel</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Objects</source>
|
||
<translation type="unfinished">Objects</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Symbols</source>
|
||
<translation type="unfinished">Symbols</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Flags</source>
|
||
<translation type="unfinished">Flags</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>EncryptionIndicator</name>
|
||
<message>
|
||
<location filename="../qml/EncryptionIndicator.qml" line="+36"/>
|
||
<source>Encrypted</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>This message is not encrypted!</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>EventStore</name>
|
||
<message>
|
||
<location filename="../../src/timeline/EventStore.cpp" line="+418"/>
|
||
<source>-- Encrypted Event (No keys found for decryption) --</source>
|
||
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted.</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+19"/>
|
||
<source>-- Decryption Error (failed to retrieve megolm keys from db) --</source>
|
||
<comment>Placeholder, when the message can't be decrypted, because the DB access failed.</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+14"/>
|
||
<source>-- Decryption Error (%1) --</source>
|
||
<comment>Placeholder, when the message can't be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>-- Encrypted Event (Unknown event type) --</source>
|
||
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet.</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+13"/>
|
||
<source>-- Replay attack! This message index was reused! --</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>-- Message by unverified device! --</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>InviteeItem</name>
|
||
<message>
|
||
<location filename="../../src/InviteeItem.cpp" line="+18"/>
|
||
<source>Remove</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>LoginPage</name>
|
||
<message>
|
||
<location filename="../../src/LoginPage.cpp" line="+90"/>
|
||
<source>Matrix ID</source>
|
||
<translation></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>e.g @joe:matrix.org</source>
|
||
<translation>例如 @joe:matrix.org</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Your login name. A mxid should start with @ followed by the user id. After the user id you need to include your server name after a :.
|
||
You can also put your homeserver address there, if your server doesn't support .well-known lookup.
|
||
Example: @user:server.my
|
||
If Nheko fails to discover your homeserver, it will show you a field to enter the server manually.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+21"/>
|
||
<source>Password</source>
|
||
<translation>密码</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Device name</source>
|
||
<translation>设备名</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>The address that can be used to contact you homeservers client API.
|
||
Example: https://server.my:8787</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+16"/>
|
||
<location line="+191"/>
|
||
<source>LOGIN</source>
|
||
<translation>登录</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-100"/>
|
||
<source>Autodiscovery failed. Received malformed response.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+25"/>
|
||
<source>The required endpoints were not found. Possibly not a Matrix server.</source>
|
||
<translation>没找到要求的终端。可能不是一个 Matrix 服务器。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Received malformed response. Make sure the homeserver domain is valid.</source>
|
||
<translation>收到形式错误的响应。请确认服务器域名合法。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>An unknown error occured. Make sure the homeserver domain is valid.</source>
|
||
<translation>发生了一个未知错误。请确认服务器域名合法。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+55"/>
|
||
<source>SSO LOGIN</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+25"/>
|
||
<source>Empty password</source>
|
||
<translation>空密码</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+52"/>
|
||
<source>SSO login failed</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>MemberList</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/MemberList.cpp" line="+90"/>
|
||
<source>Room members</source>
|
||
<translation>聊天室成员</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>OK</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>MessageDelegate</name>
|
||
<message>
|
||
<location filename="../qml/delegates/MessageDelegate.qml" line="+66"/>
|
||
<location line="+6"/>
|
||
<source>redacted</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Encryption enabled</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>room name changed to: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+0"/>
|
||
<source>removed room name</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>topic changed to: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+0"/>
|
||
<source>removed topic</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>%1 created and configured room: %2</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>%1 placed a voice call.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>%1 placed a video call.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>%1 placed a call.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>%1 answered the call.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>%1 ended the call.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Negotiating call...</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>Placeholder</name>
|
||
<message>
|
||
<location filename="../qml/delegates/Placeholder.qml" line="+4"/>
|
||
<source>unimplemented event: </source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>QuickSwitcher</name>
|
||
<message>
|
||
<location filename="../../src/QuickSwitcher.cpp" line="+74"/>
|
||
<source>Search for a room...</source>
|
||
<translation>寻找一个聊天室...</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>RegisterPage</name>
|
||
<message>
|
||
<location filename="../../src/RegisterPage.cpp" line="+88"/>
|
||
<source>Username</source>
|
||
<translation>用户名</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Password</source>
|
||
<translation>密码</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Password confirmation</source>
|
||
<translation>密码确认</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Homeserver</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+17"/>
|
||
<source>REGISTER</source>
|
||
<translation>注册</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+55"/>
|
||
<source>No supported registration flows!</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+135"/>
|
||
<source>Invalid username</source>
|
||
<translation>无效的用户名</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Password is not long enough (min 8 chars)</source>
|
||
<translation>密码不够长(至少8个字符)</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Passwords don't match</source>
|
||
<translation>密码不匹配</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Invalid server name</source>
|
||
<translation>无效的服务器名</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>RoomInfo</name>
|
||
<message>
|
||
<location filename="../../src/Cache.cpp" line="+1443"/>
|
||
<source>no version stored</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>RoomInfoListItem</name>
|
||
<message>
|
||
<location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
|
||
<source>Leave room</source>
|
||
<translation>离开聊天室</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Tag room as:</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+18"/>
|
||
<source>Favourite</source>
|
||
<comment>Standard matrix tag for favourites</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Low Priority</source>
|
||
<comment>Standard matrix tag for low priority rooms</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Server Notice</source>
|
||
<comment>Standard matrix tag for server notices</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+12"/>
|
||
<source>Adds or removes the specified tag.</source>
|
||
<comment>WhatsThis hint for tag menu actions</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+38"/>
|
||
<source>New tag...</source>
|
||
<comment>Add a new tag to the room</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>New Tag</source>
|
||
<comment>Tag name prompt title</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Tag:</source>
|
||
<comment>Tag name prompt</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+173"/>
|
||
<source>Accept</source>
|
||
<translation>接受</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Decline</source>
|
||
<translation>拒绝</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>SideBarActions</name>
|
||
<message>
|
||
<location filename="../../src/SideBarActions.cpp" line="+40"/>
|
||
<source>User settings</source>
|
||
<translation>用户设置</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Create new room</source>
|
||
<translation>创建新的聊天室</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Join a room</source>
|
||
<translation>加入聊天室</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+16"/>
|
||
<source>Start a new chat</source>
|
||
<translation>开始新的聊天</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<source>Room directory</source>
|
||
<translation>聊天室目录</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>StatusIndicator</name>
|
||
<message>
|
||
<location filename="../qml/StatusIndicator.qml" line="+14"/>
|
||
<source>Failed</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Sent</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Received</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Read</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>TextInputWidget</name>
|
||
<message>
|
||
<location filename="../../src/TextInputWidget.cpp" line="+574"/>
|
||
<source>Send a file</source>
|
||
<translation>发送一个文件</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+13"/>
|
||
<location filename="../../src/TextInputWidget.h" line="+160"/>
|
||
<source>Write a message...</source>
|
||
<translation>写一条消息...</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+31"/>
|
||
<source>Send a message</source>
|
||
<translation>发送一条消息</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Emoji</source>
|
||
<translation></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+94"/>
|
||
<source>Select a file</source>
|
||
<translation>选择一个文件</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+0"/>
|
||
<source>All Files (*)</source>
|
||
<translation>所有文件(*)</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+64"/>
|
||
<source>Place a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Hang up</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location filename="../../src/TextInputWidget.h" line="-5"/>
|
||
<source>Connection lost. Nheko is trying to re-connect...</source>
|
||
<translation>连接丢失。Nheko 正在尝试重连...</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>TimelineModel</name>
|
||
<message>
|
||
<location filename="../../src/timeline/TimelineModel.cpp" line="+805"/>
|
||
<source>Message redaction failed: %1</source>
|
||
<translation type="unfinished">删除消息失败:%1</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+114"/>
|
||
<location line="+17"/>
|
||
<location line="+101"/>
|
||
<location line="+5"/>
|
||
<source>Failed to encrypt event, sending aborted!</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+195"/>
|
||
<source>Save image</source>
|
||
<translation type="unfinished">保存图像</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Save video</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Save audio</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Save file</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message numerus="yes">
|
||
<location line="+129"/>
|
||
<source>%1 and %2 are typing.</source>
|
||
<comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment>
|
||
<translation type="unfinished">
|
||
<numerusform></numerusform>
|
||
</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+68"/>
|
||
<source>%1 opened the room to the public.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 made this room require and invitation to join.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+23"/>
|
||
<source>%1 made the room open to guests.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 has closed the room to guest access.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+23"/>
|
||
<source>%1 made the room history world readable. Events may be now read by non-joined people.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>%1 set the room history visible to members from this point on.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 set the room history visible to members since they were invited.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 set the room history visible to members since they joined the room.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+22"/>
|
||
<source>%1 has changed the room's permissions.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+33"/>
|
||
<source>%1 was invited.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>%1 changed their display name and avatar.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 changed their display name.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 changed their avatar.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 changed some profile info.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>%1 joined.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+9"/>
|
||
<source>%1 rejected their invite.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Revoked the invite to %1.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 left the room.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Kicked %1.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Unbanned %1.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+14"/>
|
||
<source>%1 was banned.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-11"/>
|
||
<source>%1 redacted their knock.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-943"/>
|
||
<source>You joined this room.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+945"/>
|
||
<source>Rejected the knock from %1.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>%1 left after having already left!</source>
|
||
<comment>This is a leave event after the user already left and shouldn't happen apart from state resets</comment>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<source> Reason: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-5"/>
|
||
<source>%1 knocked.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>TimelineRow</name>
|
||
<message>
|
||
<location filename="../qml/TimelineRow.qml" line="+94"/>
|
||
<source>React</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+16"/>
|
||
<source>Reply</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<source>Options</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>TimelineView</name>
|
||
<message>
|
||
<location filename="../qml/TimelineView.qml" line="+61"/>
|
||
<source>React</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Reply</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Read receipts</source>
|
||
<translation type="unfinished">阅读回执</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Mark as read</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>View raw message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>View decrypted raw message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Redact message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Save as</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+12"/>
|
||
<source>No room open</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+53"/>
|
||
<source>Back to room list</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<location line="+15"/>
|
||
<source>No room selected</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+28"/>
|
||
<source>Room options</source>
|
||
<translation type="unfinished">聊天室选项</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Invite users</source>
|
||
<translation type="unfinished">邀请用户</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Members</source>
|
||
<translation type="unfinished">成员</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Leave room</source>
|
||
<translation type="unfinished">离开聊天室</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Settings</source>
|
||
<translation type="unfinished">设置</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+253"/>
|
||
<source>Close</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>TrayIcon</name>
|
||
<message>
|
||
<location filename="../../src/TrayIcon.cpp" line="+122"/>
|
||
<source>Show</source>
|
||
<translation>显示</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Quit</source>
|
||
<translation>退出</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>UserInfoWidget</name>
|
||
<message>
|
||
<location filename="../../src/UserInfoWidget.cpp" line="+95"/>
|
||
<source>Logout</source>
|
||
<translation>登出</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+20"/>
|
||
<source>Set custom status message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Custom status message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Status:</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+9"/>
|
||
<source>Set presence automatically</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Online</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Unavailable</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+6"/>
|
||
<source>Offline</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>UserSettingsPage</name>
|
||
<message>
|
||
<location filename="../../src/UserSettingsPage.cpp" line="+566"/>
|
||
<source>Minimize to tray</source>
|
||
<translation>最小化至托盘</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Start in tray</source>
|
||
<translation>在托盘启动</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Group's sidebar</source>
|
||
<translation>群组侧边栏</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-3"/>
|
||
<source>Circular Avatars</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="-63"/>
|
||
<source>CALLS</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+58"/>
|
||
<source>Keep the application running in the background after closing the client window.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Start the application in the background without showing the client window.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Change the appearance of user avatars in chats.
|
||
OFF - square, ON - Circle.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Show a column containing groups and tags next to the room list.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Decrypt messages in sidebar</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Decrypt the messages shown in the sidebar.
|
||
Only affects messages in encrypted chats.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Show buttons in timeline</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Show buttons to quickly reply, react or access additional options next to each message.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Limit width of timeline</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Typing notifications</source>
|
||
<translation>打字通知</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Show who is typing in a room.
|
||
This will also enable or disable sending typing notifications to others.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Sort rooms by unreads</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Display rooms with new messages first.
|
||
If this is off, the list of rooms will only be sorted by the timestamp of the last message in a room.
|
||
If this is on, rooms which have active notifications (the small circle with a number in it) will be sorted on top. Rooms, that you have muted, will still be sorted by timestamp, since you don't seem to consider them as important as the other rooms.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Read receipts</source>
|
||
<translation>阅读回执</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Show if your message was read.
|
||
Status is displayed next to timestamps.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Send messages as Markdown</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Allow using markdown in messages.
|
||
When disabled, all messages are sent as a plain text.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Desktop notifications</source>
|
||
<translation>桌面通知</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Notify about received message when the client is not currently focused.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Alert on notification</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Show an alert when a message is received.
|
||
This usually causes the application icon in the task bar to animate in some fashion.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Highlight message on hover</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Change the background color of messages when you hover over them.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Large Emoji in timeline</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Make font size larger if messages with only a few emojis are displayed.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Scale factor</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Change the scale factor of the whole user interface.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Font size</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Font Family</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Theme</source>
|
||
<translation>主题</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Allow fallback call assist server</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Device ID</source>
|
||
<translation>设备 ID</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Device Fingerprint</source>
|
||
<translation>设备指纹</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-120"/>
|
||
<source>Session Keys</source>
|
||
<translation>会话密钥</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>IMPORT</source>
|
||
<translation>导入</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>EXPORT</source>
|
||
<translation>导出</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-25"/>
|
||
<source>ENCRYPTION</source>
|
||
<translation>加密</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-78"/>
|
||
<source>GENERAL</source>
|
||
<translation>通用</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+30"/>
|
||
<source>INTERFACE</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+172"/>
|
||
<source>Emoji Font Family</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+191"/>
|
||
<source>Open Sessions File</source>
|
||
<translation>打开会话文件</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<location line="+18"/>
|
||
<location line="+9"/>
|
||
<location line="+2"/>
|
||
<location line="+2"/>
|
||
<location line="+19"/>
|
||
<location line="+11"/>
|
||
<location line="+18"/>
|
||
<location line="+2"/>
|
||
<location line="+2"/>
|
||
<source>Error</source>
|
||
<translation>错误</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-74"/>
|
||
<location line="+32"/>
|
||
<source>File Password</source>
|
||
<translation>文件密码</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-31"/>
|
||
<source>Enter the passphrase to decrypt the file:</source>
|
||
<translation>输入密码以解密文件:</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<location line="+32"/>
|
||
<source>The password cannot be empty</source>
|
||
<translation>密码不能为空</translation>
|
||
</message>
|
||
<message>
|
||
<location line="-8"/>
|
||
<source>Enter passphrase to encrypt your session keys:</source>
|
||
<translation>输入密码以加密你的会话密钥:</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+15"/>
|
||
<source>File to save the exported session keys</source>
|
||
<translation>保存导出的会话密钥的文件</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>WelcomePage</name>
|
||
<message>
|
||
<location filename="../../src/WelcomePage.cpp" line="+47"/>
|
||
<source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
|
||
<translation>欢迎使用 nheko! Matrix 协议的桌面客户端。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Enjoy your stay!</source>
|
||
<translation>祝您使用愉快!</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+23"/>
|
||
<source>REGISTER</source>
|
||
<translation>注册</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>LOGIN</source>
|
||
<translation>登录</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>descriptiveTime</name>
|
||
<message>
|
||
<location filename="../../src/Utils.cpp" line="+146"/>
|
||
<source>Yesterday</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::AcceptCall</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/AcceptCall.cpp" line="+89"/>
|
||
<source>Accept</source>
|
||
<translation type="unfinished">接受</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Reject</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::CreateRoom</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/CreateRoom.cpp" line="+36"/>
|
||
<source>Create room</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>Name</source>
|
||
<translation>名称</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Topic</source>
|
||
<translation>主题</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Alias</source>
|
||
<translation>别名</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Room Visibility</source>
|
||
<translation>聊天室可见性</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Room Preset</source>
|
||
<translation>聊天室预设</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+9"/>
|
||
<source>Direct Chat</source>
|
||
<translation>私聊</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::FallbackAuth</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/FallbackAuth.cpp" line="+30"/>
|
||
<source>Open Fallback in Browser</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Confirm</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+12"/>
|
||
<source>Open the fallback, follow the steps and confirm after completing them.</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::InviteUsers</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/InviteUsers.cpp" line="+42"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>User ID to invite</source>
|
||
<translation>要邀请的用户 ID</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::JoinRoom</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/JoinRoom.cpp" line="+30"/>
|
||
<source>Join</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>Room ID or alias</source>
|
||
<translation>聊天室 ID 或别名</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::LeaveRoom</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/LeaveRoom.cpp" line="+31"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Are you sure you want to leave?</source>
|
||
<translation>你确定要离开吗?</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::Logout</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/Logout.cpp" line="+47"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Logout. Are you sure?</source>
|
||
<translation>登出。确定吗?</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::PlaceCall</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/PlaceCall.cpp" line="+60"/>
|
||
<source>Voice</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::PreviewUploadOverlay</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/PreviewUploadOverlay.cpp" line="+41"/>
|
||
<source>Upload</source>
|
||
<translation>上传</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Cancel</source>
|
||
<translation>取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+84"/>
|
||
<source>Media type: %1
|
||
Media size: %2
|
||
</source>
|
||
<translation>媒体类型:%1
|
||
媒体大小:%2
|
||
</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::ReCaptcha</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/ReCaptcha.cpp" line="+31"/>
|
||
<source>Cancel</source>
|
||
<translation type="unfinished">取消</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Confirm</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Solve the reCAPTCHA and press the confirm button</source>
|
||
<translation>解决 reCAPTCHA 并按确认按钮</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::ReadReceipts</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/ReadReceipts.cpp" line="+120"/>
|
||
<source>Read receipts</source>
|
||
<translation>阅读回执</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Close</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::ReceiptItem</name>
|
||
<message>
|
||
<location line="-46"/>
|
||
<source>Today %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Yesterday %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::RoomSettings</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/RoomSettings.cpp" line="+135"/>
|
||
<source>Settings</source>
|
||
<translation>设置</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Info</source>
|
||
<translation>信息</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+11"/>
|
||
<source>Internal ID</source>
|
||
<translation>内部 ID</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+10"/>
|
||
<source>Room Version</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Notifications</source>
|
||
<translation>通知</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Muted</source>
|
||
<translation>静默</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Mentions only</source>
|
||
<translation>只限提及</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>All messages</source>
|
||
<translation>所有消息</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+97"/>
|
||
<source>Room access</source>
|
||
<translation>聊天室访问</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+2"/>
|
||
<source>Anyone and guests</source>
|
||
<translation>所有人和访客</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Anyone</source>
|
||
<translation>所有人</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Invited users</source>
|
||
<translation>被邀请的用户</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+50"/>
|
||
<source>Encryption</source>
|
||
<translation>加密</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>End-to-End Encryption</source>
|
||
<translation>端到端加密</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Encryption is currently experimental and things might break unexpectedly. <br>Please take note that it can't be disabled afterwards.</source>
|
||
<translation>加密正在实验阶段,可能会意外地坏掉。<br>请注意此后无法禁用。</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+27"/>
|
||
<source>Respond to key requests</source>
|
||
<translation>回应密钥请求</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Whether or not the client should respond automatically with the session keys
|
||
upon request. Use with caution, this is a temporary measure to test the
|
||
E2E implementation until device verification is completed.</source>
|
||
<translation>客户端是否应该自动在请求时回应会话密钥。
|
||
请谨慎使用,直到设备验证功能完成前,
|
||
这是一个临时的测试端到端加密的方案。</translation>
|
||
</message>
|
||
<message numerus="yes">
|
||
<location line="+51"/>
|
||
<source>%n member(s)</source>
|
||
<translation>
|
||
<numerusform>%n 成员</numerusform>
|
||
</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+140"/>
|
||
<source>Failed to enable encryption: %1</source>
|
||
<translation>启用加密失败:%1</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+147"/>
|
||
<source>Select an avatar</source>
|
||
<translation>选择一个头像</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+0"/>
|
||
<source>All Files (*)</source>
|
||
<translation>所有文件(*)</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+12"/>
|
||
<source>The selected file is not an image</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>Error while reading file: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+35"/>
|
||
<location line="+20"/>
|
||
<source>Failed to upload image: %s</source>
|
||
<translation>上传图像失败:%s</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>dialogs::UserProfile</name>
|
||
<message>
|
||
<location filename="../../src/dialogs/UserProfile.cpp" line="+64"/>
|
||
<source>Ban the user from the room</source>
|
||
<translation>在这个聊天室封禁这个用户</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Ignore messages from this user</source>
|
||
<translation>忽略这个用户的消息</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+9"/>
|
||
<source>Kick the user from the room</source>
|
||
<translation>把这个用户踢出聊天室</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+8"/>
|
||
<source>Start a conversation</source>
|
||
<translation>开始一个聊天</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+14"/>
|
||
<source>Confirm DM</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>Do you really want to invite %1 (%2) to a direct chat?</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+54"/>
|
||
<source>Devices</source>
|
||
<translation>设备</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>emoji::Panel</name>
|
||
<message>
|
||
<location filename="../../src/emoji/Panel.cpp" line="+122"/>
|
||
<source>Smileys & People</source>
|
||
<translatorcomment>笑脸和人</translatorcomment>
|
||
<translation>Smileys & People</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Animals & Nature</source>
|
||
<translatorcomment>动物和自然</translatorcomment>
|
||
<translation>Animals & Nature</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Food & Drink</source>
|
||
<translatorcomment>食物和饮料</translatorcomment>
|
||
<translation>Food & Drink</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Activity</source>
|
||
<translatorcomment>活动</translatorcomment>
|
||
<translation>Activity</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+4"/>
|
||
<source>Travel & Places</source>
|
||
<translatorcomment>旅行和地点</translatorcomment>
|
||
<translation>Travel & Places</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Objects</source>
|
||
<translatorcomment>对象</translatorcomment>
|
||
<translation>Objects</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Symbols</source>
|
||
<translatorcomment>符号</translatorcomment>
|
||
<translation>Symbols</translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>Flags</source>
|
||
<translatorcomment>旗子</translatorcomment>
|
||
<translation>Flags</translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>message-description sent:</name>
|
||
<message>
|
||
<location filename="../../src/Utils.h" line="+106"/>
|
||
<source>You sent an audio clip</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent an audio clip</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You sent an image</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent an image</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You sent a file</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent a file</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You sent a video</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent a video</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You sent a sticker</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent a sticker</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You sent a notification</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent a notification</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You: %1</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1: %2</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+7"/>
|
||
<source>You sent an encrypted message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 sent an encrypted message</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You placed a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 placed a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You answered a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 answered a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+5"/>
|
||
<source>You ended a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+3"/>
|
||
<source>%1 ended a call</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>popups::UserMentions</name>
|
||
<message>
|
||
<location filename="../../src/popups/UserMentions.cpp" line="+64"/>
|
||
<source>This Room</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
<message>
|
||
<location line="+1"/>
|
||
<source>All Rooms</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
<context>
|
||
<name>utils</name>
|
||
<message>
|
||
<location filename="../../src/Utils.h" line="+4"/>
|
||
<source>Unknown Message Type</source>
|
||
<translation type="unfinished"></translation>
|
||
</message>
|
||
</context>
|
||
</TS>
|