Newer
Older
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en">
<location filename="../qml/voip/ActiveCallBar.qml" line="+66"/>
<source>Calling...</source>
<translation>Calling...</translation>
</message>
<message>
<location line="+10"/>
<location line="+10"/>
<source>Connecting...</source>
<translation>Connecting...</translation>
</message>
<message>
<location line="+76"/>
<source>Toggle camera view</source>
<translation>Toggle camera view</translation>
</message>
<message>
<location line="+13"/>
</message>
<message>
<location line="+0"/>
<source>Mute Mic</source>
</message>
</context>
<context>
<name>AwaitingVerificationConfirmation</name>
<message>
<location filename="../qml/device-verification/AwaitingVerificationConfirmation.qml" line="+7"/>
<source>Awaiting Confirmation</source>
<translation>Awaiting Confirmation</translation>
</message>
<message>
<location line="+12"/>
<source>Waiting for other side to complete verification.</source>
<translation>Waiting for other side to complete verification.</translation>
</message>
<message>
<location line="+12"/>
<source>Cancel</source>
<context>
<name>Cache</name>
<message>
<location filename="../../src/Cache.cpp" line="+1978"/>
<source>You joined this room.</source>
<translation>You joined this room.</translation>
<location filename="../qml/voip/CallInvite.qml" line="+66"/>
<source>Video Call</source>
<translation>Video Call</translation>
</message>
<message>
<location line="+0"/>
<source>Voice Call</source>
<translation>Voice Call</translation>
</message>
<message>
<source>No microphone found.</source>
<translation>No microphone found.</translation>
</message>
</context>
<context>
<name>CallInviteBar</name>
<message>
<location filename="../qml/voip/CallInviteBar.qml" line="+60"/>
<source>Video Call</source>
<translation>Video Call</translation>
</message>
<message>
<location line="+0"/>
<source>Voice Call</source>
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
</message>
<message>
<location line="+16"/>
<source>Devices</source>
<translation>Devices</translation>
</message>
<message>
<location line="+11"/>
<source>Accept</source>
<translation>Accept</translation>
</message>
<message>
<location line="+12"/>
<source>Unknown microphone: %1</source>
<translation>Unknown microphone: %1</translation>
</message>
<message>
<location line="+8"/>
<source>Unknown camera: %1</source>
<translation>Unknown camera: %1</translation>
</message>
<message>
<location line="+13"/>
<source>Decline</source>
<translation>Decline</translation>
</message>
<message>
<location line="-28"/>
<source>No microphone found.</source>
<translation>No microphone found.</translation>
</message>
</context>
<location filename="../../src/ChatPage.cpp" line="+211"/>
<source>Failed to invite user: %1</source>
<translation>Failed to invite user: %1</translation>
</message>
<message>
<location line="+4"/>
<source>Invited user: %1</source>
<translation>Invited user: %1</translation>
<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>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.</translation>
</message>
<message>
<source>Room %1 created.</source>
<translation>Room %1 created.</translation>
</message>
<message>
</message>
<message>
<location line="+1"/>
<source>Do you really want to invite %1 (%2)?</source>
<translation>Do you really want to invite %1 (%2)?</translation>
</message>
<message>
<location line="+11"/>
<source>Failed to invite %1 to %2: %3</source>
<translation>Failed to invite %1 to %2: %3</translation>
<location line="+15"/>
<source>Confirm kick</source>
</message>
<message>
<location line="+1"/>
<source>Do you really want to kick %1 (%2)?</source>
<translation>Do you really want to kick %1 (%2)?</translation>
<source>Kicked user: %1</source>
<translation>Kicked user: %1</translation>
<location line="+10"/>
<source>Confirm ban</source>
</message>
<message>
<location line="+1"/>
<source>Do you really want to ban %1 (%2)?</source>
<translation>Do you really want to ban %1 (%2)?</translation>
</message>
<message>
<location line="+11"/>
<source>Failed to ban %1 in %2: %3</source>
<translation>Failed to ban %1 in %2: %3</translation>
<location line="+5"/>
<source>Banned user: %1</source>
<translation>Banned user: %1</translation>
<location line="+10"/>
<source>Confirm unban</source>
</message>
<message>
<location line="+1"/>
<source>Do you really want to unban %1 (%2)?</source>
<translation>Do you really want to unban %1 (%2)?</translation>
</message>
<message>
<location line="+11"/>
<source>Failed to unban %1 in %2: %3</source>
<translation>Failed to unban %1 in %2: %3</translation>
</message>
<message>
<location line="+5"/>
<source>Unbanned user: %1</source>
<translation>Unbanned user: %1</translation>
<source>Incompatible cache version</source>
<translation>Incompatible cache version</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>The cache on your disk is newer than this version of Nheko supports. Please update or clear your cache.</translation>
<source>Failed to restore OLM account. Please login again.</source>
<translation>Failed to restore OLM account. Please login again.</translation>
<source>Failed to restore save data. Please login again.</source>
<translation>Failed to restore save data. Please login again.</translation>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</translation>
<source>Please try to login again: %1</source>
<translation>Please try to login again: %1</translation>
<source>Failed to join room: %1</source>
<translation>Failed to join room: %1</translation>
</message>
<message>
<location line="+5"/>
<source>You joined the room</source>
<translation>You joined the room</translation>
</message>
<message>
<location line="+6"/>
<source>Failed to remove invite: %1</source>
<translation>Failed to remove invite: %1</translation>
<source>Room creation failed: %1</source>
<translation>Room creation failed: %1</translation>
<source>Failed to leave room: %1</source>
<translation>Failed to leave room: %1</translation>
<message>
<location line="+54"/>
<source>Failed to kick %1 from %2: %3</source>
<translation>Failed to kick %1 from %2: %3</translation>
</context>
<context>
<name>CommunitiesListItem</name>
<message>
<location filename="../../src/CommunitiesListItem.cpp" line="+26"/>
<source>Hide rooms with this tag or from this community</source>
<translation>Hide rooms with this tag or from this community</translation>
</message>
<message>
<location line="+153"/>
<translation>All rooms</translation>
</message>
<message>
<location line="+4"/>
<source>Favourite rooms</source>
<translation>Favourite rooms</translation>
</message>
<message>
<location line="+2"/>
<source>Low priority rooms</source>
<translation>Low priority rooms</translation>
<message>
<location line="+2"/>
<source>Server Notices</source>
<comment>Tag translation for m.server_notice</comment>
<message>
<location line="+2"/>
</message>
<message>
<location line="+3"/>
<source> (community)</source>
<translation> (community)</translation>
<context>
<name>CrossSigningSecrets</name>
<message>
<location filename="../../src/ChatPage.cpp" line="+227"/>
<source>Decrypt secrets</source>
<translation>Decrypt secrets</translation>
</message>
<message>
<location line="+2"/>
<source>Enter your recovery key or passphrase to decrypt your secrets:</source>
<translation>Enter your recovery key or passphrase to decrypt your secrets:</translation>
</message>
<message>
<location line="+3"/>
<source>Enter your recovery key or passphrase called %1 to decrypt your secrets:</source>
<translation>Enter your recovery key or passphrase called %1 to decrypt your secrets:</translation>
</message>
<message>
<location line="+17"/>
<source>Decryption failed</source>
<translation>Decryption failed</translation>
</message>
<message>
<location line="+1"/>
<source>Failed to decrypt secrets with the provided recovery key or passphrase</source>
<translation>Failed to decrypt secrets with the provided recovery key or passphrase</translation>
</message>
</context>
<context>
<name>DigitVerification</name>
<message>
<location filename="../qml/device-verification/DigitVerification.qml" line="+7"/>
<source>Verification Code</source>
<translation>Verification Code</translation>
</message>
<message>
<location line="+10"/>
<source>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press 'They do not match!' to abort verification!</source>
<translation>Please verify the following digits. You should see the same numbers on both sides. If they differ, please press 'They do not match!' to abort verification!</translation>
</message>
<message>
<location line="+31"/>
<source>They do not match!</source>
<translation>They do not match!</translation>
</message>
<message>
<location line="+13"/>
<source>They match!</source>
<context>
<name>EditModal</name>
<message>
<location filename="../../src/dialogs/RoomSettings.cpp" line="+73"/>
<location line="+1"/>
<source>Cancel</source>
</message>
<message>
<location line="+2"/>
<source>Topic</source>
<context>
<name>EmojiPicker</name>
<message>
<location filename="../qml/emoji/EmojiPicker.qml" line="+113"/>
</message>
<message>
<location line="+2"/>
<source>Nature</source>
</message>
<message>
<location line="+2"/>
<source>Food</source>
</message>
<message>
<location line="+2"/>
<source>Activity</source>
</message>
<message>
<location line="+2"/>
<source>Travel</source>
</message>
<message>
<location line="+2"/>
<source>Objects</source>
</message>
<message>
<location line="+2"/>
<source>Symbols</source>
</message>
<message>
<location line="+2"/>
<source>Flags</source>
<context>
<name>EmojiVerification</name>
<message>
<location filename="../qml/device-verification/EmojiVerification.qml" line="+7"/>
<source>Verification Code</source>
<translation>Verification Code</translation>
</message>
<message>
<location line="+10"/>
<source>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press 'They do not match!' to abort verification!</source>
<translation>Please verify the following emoji. You should see the same emoji on both sides. If they differ, please press 'They do not match!' to abort verification!</translation>
</message>
<message>
<location line="+376"/>
<source>They do not match!</source>
<translation>They do not match!</translation>
</message>
<message>
<location line="+13"/>
<source>They match!</source>
<location filename="../qml/EncryptionIndicator.qml" line="+19"/>
<message>
<location line="+2"/>
<source>This message is not encrypted!</source>
<translation>This message is not encrypted!</translation>
<context>
<name>EventStore</name>
<message>
<location filename="../../src/timeline/EventStore.cpp" line="+559"/>
<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>-- Encrypted Event (No keys found for decryption) --</translation>
<message>
<location line="+7"/>
<source>-- Encrypted Event (Key not valid for this index) --</source>
<comment>Placeholder, when the message can't be decrypted with this key since it is not valid for this index </comment>
<translation>-- Encrypted Event (Key not valid for this index) --</translation>
<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>-- Decryption Error (failed to retrieve megolm keys from db) --</translation>
<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>-- Decryption Error (%1) --</translation>
<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>-- Encrypted Event (Unknown event type) --</translation>
</message>
<message>
<location line="+13"/>
<source>-- Replay attack! This message index was reused! --</source>
<translation>-- Replay attack! This message index was reused! --</translation>
</message>
<message>
<location line="+7"/>
<source>-- Message by unverified device! --</source>
<translation>-- Message by unverified device! --</translation>
<context>
<name>Failed</name>
<message>
<location filename="../qml/device-verification/Failed.qml" line="+7"/>
<source>Verification failed</source>
<translation>Verification failed</translation>
</message>
<message>
<location line="+15"/>
<source>Other client does not support our verification protocol.</source>
<translation>Other client does not support our verification protocol.</translation>
</message>
<message>
<location line="+4"/>
<source>Key mismatch detected!</source>
<translation>Key mismatch detected!</translation>
</message>
<message>
<location line="+2"/>
<location line="+4"/>
<source>Device verification timed out.</source>
<translation>Device verification timed out.</translation>
</message>
<message>
<location line="-2"/>
<source>Other party canceled the verification.</source>
<translation>Other party canceled the verification.</translation>
</message>
<message>
<location line="+18"/>
<source>Close</source>
<location filename="../../src/timeline/InputBar.cpp" line="+227"/>
</message>
<message>
<location line="+0"/>
<source>All Files (*)</source>
<source>Failed to upload media. Please try again.</source>
<translation>Failed to upload media. Please try again.</translation>
<context>
<name>InviteeItem</name>
<message>
<location filename="../../src/InviteeItem.cpp" line="+18"/>
<location filename="../../src/LoginPage.cpp" line="+92"/>
<translation>Matrix ID</translation>
<translation>e.g @joe:matrix.org</translation>
<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>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.</translation>
</message>
<message>
<location line="+2"/>
<source>Your password.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+3"/>
<translation>Device name</translation>
<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>A name for this device, which will be shown to others, when verifying your devices. If none is provided a default is used.</translation>
<location line="+4"/>
<source>Homeserver address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
<source>server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
<source>The address that can be used to contact you homeservers client API.
Example: https://server.my:8787</source>
<translation>The address that can be used to contact you homeservers client API.
Example: https://server.my:8787</translation>
</message>
<message>
<location line="-151"/>
<location line="+11"/>
<location line="+157"/>
<location line="+11"/>
<source>You have entered an invalid Matrix ID e.g @joe:matrix.org</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="-132"/>
<source>Autodiscovery failed. Received malformed response.</source>
<translation>Autodiscovery failed. Received malformed response.</translation>
<source>Autodiscovery failed. Unknown error when requesting .well-known.</source>
<translation>Autodiscovery failed. Unknown error while requesting .well-known.</translation>
<source>The required endpoints were not found. Possibly not a Matrix server.</source>
<translation>The required endpoints were not found. Possibly not a Matrix server.</translation>
</message>
<message>
<location line="+6"/>
<source>Received malformed response. Make sure the homeserver domain is valid.</source>
<translation>Received malformed response. Make sure the homeserver domain is valid.</translation>
<location line="+5"/>
<source>An unknown error occured. Make sure the homeserver domain is valid.</source>
<translation>An unknown error occured. Make sure the homeserver domain is valid.</translation>
<source>SSO LOGIN</source>
<translation>SSO LOGIN</translation>
</message>
<message>
<source>Empty password</source>
<translation>Empty password</translation>
<source>SSO login failed</source>
<translation>SSO login failed</translation>
</message>
<location filename="../../src/dialogs/MemberList.cpp" line="+90"/>
<translation>Room members</translation>
<location line="+4"/>
<source>OK</source>
<context>
<name>MessageDelegate</name>
<message>
<location filename="../qml/delegates/MessageDelegate.qml" line="+123"/>
<translation>Encryption enabled</translation>
<translation>room name changed to: %1</translation>
</message>
<message>
<location line="+0"/>
<source>removed room name</source>
<translation>removed room name</translation>
<translation>topic changed to: %1</translation>
</message>
<message>
<location line="+0"/>
<source>removed topic</source>
<translation>removed topic</translation>
<translation>%1 created and configured room: %2</translation>
<translation>%1 placed a voice call.</translation>
<translation>%1 placed a video call.</translation>
<translation>%1 placed a call.</translation>
<translation>Negotiating call…</translation>
<source>%1 answered the call.</source>
<translation>%1 answered the call.</translation>
</message>
<message>
</message>
<message>
<location line="+72"/>
<source>%1 ended the call.</source>
<translation>%1 ended the call.</translation>
</message>
<context>
<name>MessageInput</name>
<message>
<location filename="../qml/MessageInput.qml" line="+38"/>
</message>
<message>
<location line="+0"/>
<source>Place a call</source>
<translation>Write a message…</translation>
<location line="+170"/>
<context>
<name>NewVerificationRequest</name>
<message>
<location filename="../qml/device-verification/NewVerificationRequest.qml" line="+7"/>
<source>Send Verification Request</source>
<translation>Send Verification Request</translation>
<source>Received Verification Request</source>
<translation>Received Verification Request</translation>
<location line="+15"/>
<source>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify %1 now?</source>
<translation>To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify %1 now?</translation>
<location line="+2"/>
<source>To ensure that no malicious user can eavesdrop on your encrypted communications you can verify the other party.</source>
<translation>To ensure that no malicious user can eavesdrop on your encrypted communications you can verify the other party.</translation>
<location line="+3"/>
<source>%1 has requested to verify their device %2.</source>
<translation>%1 has requested to verify their device %2.</translation>
</message>
<message>
<location line="+2"/>
<source>%1 using the device %2 has requested to be verified.</source>
<translation>%1 using the device %2 has requested to be verified.</translation>
</message>
<message>
<location line="+2"/>
<source>Your device (%1) has requested to be verified.</source>
<translation>Your device (%1) has requested to be verified.</translation>
</message>
<message>
<location line="+10"/>
</message>
<message>
<location line="+0"/>
<source>Deny</source>
</message>
<message>
<location line="+13"/>
<source>Start verification</source>
<translation>Start verification</translation>
</message>
<message>
<location line="+0"/>
<source>Accept</source>
<location filename="../qml/voip/PlaceCall.qml" line="+36"/>
<source>Place a call to %1?</source>
<translation>Place a call to %1?</translation>
</message>
<message>
<location line="+16"/>
<source>No microphone found.</source>
<translation>No microphone found.</translation>
</message>
<message>
<location line="+22"/>
<source>Voice</source>
<translation>Voice</translation>
</message>
<message>
<location line="+13"/>
<source>Video</source>
<translation>Video</translation>
</message>
<message>
<location line="+13"/>
<source>Cancel</source>
<translation>Cancel</translation>
</message>
</context>
<context>
<name>Placeholder</name>
<message>
<location filename="../qml/delegates/Placeholder.qml" line="+4"/>
<source>unimplemented event: </source>
<translation>unimplemented event: </translation>
<context>
<name>QCoreApplication</name>
<message>
<location filename="../../src/main.cpp" line="+179"/>
<source>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</source>
<translation>Create a unique profile, which allows you to log into several accounts at the same time and start multiple instances of nheko.</translation>
<location filename="../../src/QuickSwitcher.cpp" line="+74"/>
<translation>Search for a room…</translation>
</context>
<context>
<name>RegisterPage</name>
<location filename="../../src/RegisterPage.cpp" line="+89"/>
<source>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</source>
<translation>The username must not be empty, and must contain only the characters a-z, 0-9, ., _, =, -, and /.</translation>
</message>
<message>
<source>Please choose a secure password. The exact requirements for password strength may depend on your server.</source>
<translation>Please choose a secure password. The exact requirements for password strength may depend on your server.</translation>
</message>
<message>
<location line="+4"/>
<source>Password confirmation</source>
<translation>Password confirmation</translation>
</message>
<message>
<location line="+4"/>
<source>Homeserver</source>
<translation>Homeserver</translation>
<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>A server that allows registration. Since matrix is decentralized, you need to first find a server you can register on or host your own.</translation>
</message>
<message>
<translation>No supported registration flows!</translation>
<source>One or more fields have invalid inputs. Please correct those issues and try again.</source>
<translation>One or more fields have invalid inputs. Please correct those issues and try again.</translation>
<source>Password is not long enough (min 8 chars)</source>
<translation>Password is not long enough (min 8 chars)</translation>
<translation>Passwords don't match</translation>
<translation>Invalid server name</translation>
<context>
<name>ReplyPopup</name>
<message>
<location filename="../qml/ReplyPopup.qml" line="+43"/>
<source>Close</source>
<context>
<name>RoomInfo</name>
<message>
<location filename="../../src/Cache.cpp" line="+1868"/>
<translation>no version stored</translation>
<context>
<name>RoomInfoListItem</name>
<message>
<location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<translation>Leave room</translation>
<location line="+7"/>
<source>Tag room as:</source>
<source>Favourite</source>
<comment>Standard matrix tag for favourites</comment>
</message>
<message>
<location line="+3"/>
<source>Low Priority</source>
<comment>Standard matrix tag for low priority rooms</comment>
</message>
<message>
<location line="+3"/>
<source>Server Notice</source>
<comment>Standard matrix tag for server notices</comment>
<source>Adds or removes the specified tag.</source>
<comment>WhatsThis hint for tag menu actions</comment>
<translation>Adds or removes the specified tag.</translation>
<source>New tag...</source>
<comment>Add a new tag to the room</comment>
<source>New Tag</source>
<comment>Tag name prompt title</comment>
</message>
</context>
<context>
<name>SideBarActions</name>
<message>
<location filename="../../src/SideBarActions.cpp" line="+40"/>
<source>User settings</source>
<translation>User settings</translation>
</message>
<message>
<location line="+7"/>
<translation>Create new room</translation>
</message>
<message>
<location line="+1"/>
<source>Join a room</source>
<translation>Join a room</translation>
<message>
<location line="+16"/>
<source>Start a new chat</source>
<translation>Start a new chat</translation>
</message>
<message>
<location line="+15"/>
<source>Room directory</source>
<translation>Room directory</translation>
</message>
</context>
<context>
<name>StatusIndicator</name>
<message>
<location filename="../qml/StatusIndicator.qml" line="+17"/>
<context>
<name>Success</name>
<message>
<location filename="../qml/device-verification/Success.qml" line="+6"/>
<source>Successful Verification</source>
<translation>Successful Verification</translation>
</message>
<message>
<location line="+12"/>
<source>Verification successful! Both sides verified their devices!</source>
<translation>Verification successful! Both sides verified their devices!</translation>
</message>
<message>
<location line="+12"/>
<source>Close</source>
<location filename="../../src/timeline/TimelineModel.cpp" line="+860"/>
<translation>Message redaction failed: %1</translation>
<location line="+5"/>
<source>Failed to encrypt event, sending aborted!</source>
<translation>Failed to encrypt event, sending aborted!</translation>
</message>
<message>
<location line="+2"/>
<source>Save video</source>
</message>
<message>
<location line="+2"/>
<source>Save audio</source>
</message>
<message>
<location line="+2"/>
<source>Save file</source>
<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>
<numerusform>%1%2 is typing.</numerusform>
<numerusform>%1 and %2 are typing.</numerusform>
<source>%1 opened the room to the public.</source>
<translation>%1 opened the room to the public.</translation>
<source>%1 made this room require and invitation to join.</source>
<translation>%1 made this room require an invitation to join.</translation>
<source>%1 made the room open to guests.</source>
<translation>%1 made the room open to guests.</translation>
<source>%1 has closed the room to guest access.</source>
<translation>%1 has closed the room to guest access.</translation>
<source>%1 made the room history world readable. Events may be now read by non-joined people.</source>
<translation>%1 made the room history world readable. Events may be now read by non-joined people.</translation>
<source>%1 set the room history visible to members from this point on.</source>
<translation>%1 set the room history visible to members from this point on.</translation>
<source>%1 set the room history visible to members since they were invited.</source>
<translation>%1 set the room history visible to members since they were invited.</translation>
<source>%1 set the room history visible to members since they joined the room.</source>
<translation>%1 set the room history visible to members since they joined the room.</translation>
</message>
<message>
<location line="+22"/>
<source>%1 has changed the room's permissions.</source>
<translation>%1 has changed the room's permissions.</translation>
<translation>%1 was invited.</translation>
<source>%1 changed their display name and avatar.</source>
<translation>%1 changed their display name and avatar.</translation>
</message>
<message>
<location line="+2"/>
<source>%1 changed their display name.</source>
<translation>%1 changed their display name.</translation>
</message>
<message>
<location line="+2"/>
<source>%1 changed their avatar.</source>
<translation>%1 changed their avatar.</translation>
<message>
<location line="+2"/>
<source>%1 changed some profile info.</source>
<translation>%1 changed some profile info.</translation>
<message>
<location line="+4"/>
<source>%1 joined.</source>
<source>%1 rejected their invite.</source>
<translation>%1 rejected their invite.</translation>
</message>
<message>
<location line="+2"/>
<source>Revoked the invite to %1.</source>
<translation>Revoked the invite to %1.</translation>
</message>
<message>
<location line="+3"/>
<source>%1 left the room.</source>
<translation>%1 left the room.</translation>
</message>
<message>
<location line="+2"/>
<source>Kicked %1.</source>
</message>
<message>
<location line="+2"/>
<source>Unbanned %1.</source>
<translation>Unbanned %1.</translation>
<location line="+14"/>
<source>%1 was banned.</source>
<translation>%1 was banned.</translation>
</message>
<message>
<location line="-11"/>
<source>%1 redacted their knock.</source>
<translation>%1 redacted their knock.</translation>
<source>You joined this room.</source>
<translation>You joined this room.</translation>
</message>
<message>
<source>Rejected the knock from %1.</source>
<translation>Rejected the knock from %1.</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>%1 left after having already left!</translation>
<location line="+15"/>
<translation>Reason: %1</translation>
<translation>%1 knocked.</translation>
</context>
<context>
<name>TimelineRow</name>
<message>
<location filename="../qml/TimelineRow.qml" line="+97"/>
</context>
<context>
<name>TimelineView</name>
<location filename="../qml/TimelineView.qml" line="+83"/>
Nicolas Werner
committed
<source>Reply</source>
Nicolas Werner
committed
</message>
<message>
<translation>Read receipts</translation>
<translation>Mark as read</translation>
<translation>View raw message</translation>
<source>View decrypted raw message</source>
<translation>View decrypted raw message</translation>
<message>
<location line="+7"/>
<source>Open in external program</source>
<translation>Open in external program</translation>
<translation>No room open</translation>
</context>
<context>
<name>TimelineViewManager</name>
<location filename="../../src/timeline/TimelineViewManager.cpp" line="+423"/>
<source>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</source>
<translation>No encrypted private chat found with this user. Create an encrypted private chat with this user and try again.</translation>
</message>
</context>
<context>
<name>TopBar</name>
<message>
<location filename="../qml/TopBar.qml" line="+43"/>
<translation>Back to room list</translation>
<translation>No room selected</translation>
<context>
<name>TrayIcon</name>
<message>
<location filename="../../src/TrayIcon.cpp" line="+122"/>
</message>
<message>
<location line="+1"/>
<source>Quit</source>
<location filename="../../src/UserInfoWidget.cpp" line="+95"/>
<message>
<location line="+20"/>
<source>Set custom status message</source>
<translation>Set custom status message</translation>
</message>
<message>
<location line="+4"/>
<source>Custom status message</source>
<translation>Custom status message</translation>
</message>
<message>
<location line="+1"/>
<source>Status:</source>
</message>
<message>
<location line="+9"/>
<source>Set presence automatically</source>
<translation>Set presence automatically</translation>
</message>
<message>
<location line="+6"/>
<source>Online</source>
</message>
<message>
<location line="+5"/>
<source>Unavailable</source>
</message>
<message>
<location line="+6"/>
<source>Offline</source>
<context>
<name>UserProfile</name>
<message>
<location filename="../qml/UserProfile.qml" line="+54"/>
</message>
<message>
<location line="+20"/>
<source>Start a private chat</source>
<translation>Start a private chat</translation>
</message>
<message>
<location line="+8"/>
<source>Kick the user</source>
<context>
<name>UserSettingsPage</name>
<location filename="../../src/UserSettingsPage.cpp" line="+794"/>
<translation>Minimize to tray</translation>
<translation>Start in tray</translation>
<source>Group's sidebar</source>
<translation>Group's sidebar</translation>
<translation>Circular Avatars</translation>
<location line="+46"/>
<source>Cross Signing Keys</source>
<translation>Cross Signing Keys</translation>
</message>
<message>
<location line="+4"/>
<source>REQUEST</source>
<translation>REQUEST</translation>
</message>
<message>
<location line="+1"/>
<source>DOWNLOAD</source>
<translation>DOWNLOAD</translation>
</message>
<message>
<location line="+27"/>
<source>Keep the application running in the background after closing the client window.</source>
<translation>Keep the application running in the background after closing the client window.</translation>
</message>
<message>
<location line="+3"/>
<source>Start the application in the background without showing the client window.</source>
<translation>Start the application in the background without showing the client window.</translation>
</message>
<message>
<location line="+4"/>
<source>Change the appearance of user avatars in chats.
OFF - square, ON - Circle.</source>
<translation>Change the appearance of user avatars in chats.
OFF - square, ON - Circle.</translation>
</message>
<message>
<location line="+3"/>
<source>Show a column containing groups and tags next to the room list.</source>
<translation>Show a column containing groups and tags next to the room list.</translation>
<translation>Decrypt messages in sidebar</translation>
<location line="+2"/>
<source>Decrypt the messages shown in the sidebar.
Only affects messages in encrypted chats.</source>
<translation>Decrypt the messages shown in the sidebar.
Only affects messages in encrypted chats.</translation>
Nicolas Werner
committed
<source>Show buttons in timeline</source>
<translation>Show buttons in timeline</translation>
Nicolas Werner
committed
</message>
<message>
<location line="+2"/>
<source>Show buttons to quickly reply, react or access additional options next to each message.</source>
<translation>Show buttons to quickly reply, react or access additional options next to each message.</translation>
</message>
<message>
<location line="+2"/>
<source>Limit width of timeline</source>
<translation>Limit width of timeline</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>Set the max width of messages in the timeline (in pixels). This can help readability on wide screen, when Nheko is maximised.</translation>
<source>Typing notifications</source>
<translation>Typing notifications</translation>
<location line="+2"/>
<source>Show who is typing in a room.
This will also enable or disable sending typing notifications to others.</source>
<translation>Show who is typing in a room.
This will also enable or disable sending typing notifications to others.</translation>
<translation>Sort rooms by unreads</translation>
<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>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.</translation>
<source>Read receipts</source>
<translation>Read receipts</translation>
<location line="+2"/>
<source>Show if your message was read.
Status is displayed next to timestamps.</source>
<translation>Show if your message was read.
Status is displayed next to timestamps.</translation>
<source>Send messages as Markdown</source>
<translation>Send messages as Markdown</translation>
<location line="+2"/>
<source>Allow using markdown in messages.
When disabled, all messages are sent as a plain text.</source>
<translation>Allow using markdown in messages.
When disabled, all messages are sent as a plain text.</translation>
<source>Desktop notifications</source>
<translation>Desktop notifications</translation>
<message>
<location line="+2"/>
<source>Notify about received message when the client is not currently focused.</source>
<translation>Notify about received message when the client is not currently focused.</translation>
<translation>Alert on notification</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>Show an alert when a message is received.
This usually causes the application icon in the task bar to animate in some fashion.</translation>
<source>Highlight message on hover</source>
<translation>Highlight message on hover</translation>
<message>
<location line="+2"/>
<source>Change the background color of messages when you hover over them.</source>
<translation>Change the background color of messages when you hover over them.</translation>
</message>
<message>
<location line="+1"/>
<source>Large Emoji in timeline</source>
<translation>Large Emoji in timeline</translation>
</message>
<message>
<location line="+2"/>
<source>Make font size larger if messages with only a few emojis are displayed.</source>
<translation>Make font size larger if messages with only a few emojis are displayed.</translation>
<location line="+56"/>
<source>Share keys with verified users and devices</source>
<translation>Share keys with verified users and devices</translation>
</message>
<message>
<location line="+395"/>
<source>CACHED</source>
<translation>CACHED</translation>
</message>
<message>
<location line="+6"/>
<source>NOT CACHED</source>
<translation>NOT CACHED</translation>
<translation>Scale factor</translation>
<message>
<location line="+2"/>
<source>Change the scale factor of the whole user interface.</source>
<translation>Change the scale factor of the whole user interface.</translation>
<translation>Font size</translation>
<translation>Font Family</translation>
</message>
<message>
<location line="+2"/>
<source>Set the notification sound to play when a call invite arrives</source>
<translation>Set the notification sound to play when a call invite arrives</translation>
</message>
<message>
<location line="+1"/>
<source>Microphone</source>
</message>
<message>
<location line="+1"/>
<source>Camera</source>
</message>
<message>
<location line="+1"/>
<source>Camera resolution</source>
</message>
<message>
<location line="+1"/>
<source>Camera frame rate</source>
</message>
<message>
<location line="+14"/>
<source>Allow fallback call assist server</source>
<translation>Allow fallback call assist server</translation>
</message>
<message>
<location line="+2"/>
<source>Will use turn.matrix.org as assist when your home server does not offer one.</source>
<translation>Will use turn.matrix.org as assist when your home server does not offer one.</translation>
</message>
<message>
<location line="+4"/>
<translation>Device ID</translation>
<source>Device Fingerprint</source>
<translation>Device Fingerprint</translation>
<translation>Session Keys</translation>
</message>
<message>
<location line="+4"/>
<source>IMPORT</source>
<translation>ENCRYPTION</translation>
<translation>INTERFACE</translation>
<location line="+2"/>
<source>Will prevent text selection in the timeline to make touch scrolling easier.</source>
<translation>Will prevent text selection in the timeline to make touch scrolling easier.</translation>
<location line="+12"/>
<source>Emoji Font Family</source>
<translation>Emoji Font Family</translation>
</message>
<message>
<location line="+40"/>
<source>Automatically replies to key requests from other users, if they are verified.</source>
<translation>Automatically replies to key requests from other users, if they are verified.</translation>
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
<message>
<location line="+5"/>
<source>Master signing key</source>
<translation>Master signing key</translation>
</message>
<message>
<location line="+2"/>
<source>Your most important key. You don't need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</source>
<translation>Your most important key. You don't need to have it cached, since not caching it makes it less likely it can be stolen and it is only needed to rotate your other signing keys.</translation>
</message>
<message>
<location line="+3"/>
<source>User signing key</source>
<translation>User signing key</translation>
</message>
<message>
<location line="+2"/>
<source>The key to verify other users. If it is cached, verifying a user will verify all their devices.</source>
<translation>The key to verify other users. If it is cached, verifying a user will verify all their devices.</translation>
</message>
<message>
<location line="+3"/>
<source>Self signing key</source>
<translation>Self signing key</translation>
</message>
<message>
<location line="+2"/>
<source>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</source>
<translation>The key to verify your own devices. If it is cached, verifying one of your devices will mark it verified for all your other devices and for users, that have verified you.</translation>
</message>
<message>
<location line="+3"/>
<source>Backup key</source>
<translation>Backup key</translation>
</message>
<message>
<location line="+2"/>
<source>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</source>
<translation>The key to decrypt online key backups. If it is cached, you can enable online key backup to store encryption keys securely encrypted on the server.</translation>
</message>
<location line="+54"/>
<source>Select a file</source>
</message>
<message>
<location line="+0"/>
<source>All Files (*)</source>
<source>Open Sessions File</source>
<translation>Open Sessions File</translation>
</message>
<message>
<location line="+4"/>
<location line="+18"/>
<location line="+9"/>
<location line="+19"/>
<location line="+18"/>
<source>Error</source>
<source>File Password</source>
<translation>File Password</translation>
<source>Enter the passphrase to decrypt the file:</source>
<translation>Enter the passphrase to decrypt the file:</translation>
</message>
<message>
<location line="+8"/>
<source>The password cannot be empty</source>
<translation>The password cannot be empty</translation>
</message>
<message>
<location line="-8"/>
<source>Enter passphrase to encrypt your session keys:</source>
<translation>Enter passphrase to encrypt your session keys:</translation>
<source>File to save the exported session keys</source>
<translation>File to save the exported session keys</translation>
<context>
<name>Waiting</name>
<message>
<location filename="../qml/device-verification/Waiting.qml" line="+7"/>
<translation>Waiting for other party…</translation>
</message>
<message>
<location line="+15"/>
<source>Waiting for other side to accept the verification request.</source>
<translation>Waiting for other side to accept the verification request.</translation>
</message>
<message>
<location line="+2"/>
<source>Waiting for other side to continue the verification process.</source>
<translation>Waiting for other side to continue the verification process.</translation>
</message>
<message>
<location line="+2"/>
<source>Waiting for other side to complete the verification process.</source>
<translation>Waiting for other side to complete the verification process.</translation>
</message>
<message>
<location line="+15"/>
<source>Cancel</source>
<context>
<name>WelcomePage</name>
<message>
<location filename="../../src/WelcomePage.cpp" line="+46"/>
<source>Welcome to nheko! The desktop client for the Matrix protocol.</source>
<translation>Welcome to nheko! The desktop client for the Matrix protocol.</translation>
</message>
<message>
<location line="+1"/>
<source>Enjoy your stay!</source>
<translation>Enjoy your stay!</translation>
<translation>REGISTER</translation>
<context>
<name>descriptiveTime</name>
<message>
<location filename="../../src/Utils.cpp" line="+147"/>
<translation>Yesterday</translation>
<location filename="../../src/dialogs/CreateRoom.cpp" line="+36"/>
<source>Create room</source>
<translation>Create room</translation>
<location line="+2"/>
<source>Cancel</source>
</message>
<message>
<location line="+10"/>
</message>
<message>
<location line="+3"/>
<source>Topic</source>
</message>
<message>
<location line="+3"/>
<source>Alias</source>
</message>
<message>
<location line="+8"/>
<source>Room Visibility</source>
<translation>Room Visibility</translation>
<translation>Room Preset</translation>
<translation>Direct Chat</translation>
<context>
<name>dialogs::FallbackAuth</name>
<message>
<location filename="../../src/dialogs/FallbackAuth.cpp" line="+30"/>
<source>Open Fallback in Browser</source>
<translation>Open Fallback in Browser</translation>
</message>
<message>
<location line="+1"/>
<source>Cancel</source>
</message>
<message>
<location line="+1"/>
<source>Confirm</source>
</message>
<message>
<location line="+12"/>
<source>Open the fallback, follow the steps and confirm after completing them.</source>
<translation>Open the fallback, follow the steps and confirm after completing them.</translation>
<location filename="../../src/dialogs/InviteUsers.cpp" line="+42"/>
<translation>User ID to invite</translation>
</context>
<context>
<name>dialogs::JoinRoom</name>
<location filename="../../src/dialogs/JoinRoom.cpp" line="+30"/>
<source>Join</source>
<location line="+2"/>
<source>Cancel</source>
</message>
<message>
<location line="+7"/>
<translation>Room ID or alias</translation>
</context>
<context>
<name>dialogs::LeaveRoom</name>
<location filename="../../src/dialogs/LeaveRoom.cpp" line="+31"/>
<source>Cancel</source>
<source>Are you sure you want to leave?</source>
<translation>Are you sure you want to leave?</translation>
</context>
<context>
<name>dialogs::Logout</name>
<location filename="../../src/dialogs/Logout.cpp" line="+47"/>
<source>Cancel</source>
<translation>Logout. Are you sure?</translation>
<location filename="../../src/dialogs/PreviewUploadOverlay.cpp" line="+41"/>
<source>Media type: %1
Media size: %2
</source>
<translation>Media type: %1
Media size: %2
</translation>
</message>
</context>
<context>
<location filename="../../src/dialogs/ReCaptcha.cpp" line="+31"/>
<source>Cancel</source>
<location line="+1"/>
<source>Confirm</source>
<source>Solve the reCAPTCHA and press the confirm button</source>
<translation>Solve the reCAPTCHA and press the confirm button</translation>
</message>
</context>
<context>
<location filename="../../src/dialogs/ReadReceipts.cpp" line="+120"/>
<translation>Read receipts</translation>
<message>
<location line="+4"/>
<source>Close</source>
<context>
<name>dialogs::ReceiptItem</name>
<translation>Today %1</translation>
<translation>Yesterday %1</translation>
<location filename="../../src/dialogs/RoomSettings.cpp" line="+135"/>
<translation>Settings</translation>
<location line="+3"/>
<source>Info</source>
</message>
<message>
<location line="+11"/>
<source>Internal ID</source>
<translation>Internal ID</translation>
<message>
<location line="+10"/>
<source>Room Version</source>
<translation>Room Version</translation>
<message>
<location line="+4"/>
<translation>Notifications</translation>
<translation>Mentions only</translation>
</message>
<message>
<location line="+1"/>
<source>All messages</source>
<translation>All messages</translation>
<translation>Room access</translation>
<message>
<location line="+2"/>
<source>Anyone and guests</source>
<translation>Anyone and guests</translation>
</message>
<message>
<location line="+1"/>
<source>Anyone</source>
<translation>Anyone who knows the room link (no guests)</translation>
</message>
<message>
<location line="+1"/>
<source>Invited users</source>
<translation>Invited users</translation>
<message>
<location line="+50"/>
<source>Encryption</source>
<translation>Encryption</translation>
<location line="+11"/>
<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>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.</translation>
</message>
<message>
<location line="+20"/>
<source>End-to-End Encryption</source>
<translation>End-to-End Encryption</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>Encryption is currently experimental and things might break unexpectedly. <br>Please take note that it can't be disabled afterwards.</translation>
<source>Respond to key requests</source>
<translation>Respond to key requests</translation>
</message>
<message numerus="yes">
<translation>
<numerusform>%n member</numerusform>
<numerusform>%n members</numerusform>
</translation>
</message>
<message>
<source>Failed to enable encryption: %1</source>
<translation>Failed to enable encryption: %1</translation>
<source>Select an avatar</source>
<translation>Select an avatar</translation>
</message>
<message>
<location line="+0"/>
<source>All Files (*)</source>
<translation>All Files (*)</translation>
</message>
<message>
<location line="+12"/>
<source>The selected file is not an image</source>
<translation>The selected file is not an image</translation>
</message>
<message>
<location line="+5"/>
<source>Error while reading file: %1</source>
<translation>Error while reading file: %1</translation>
</message>
<message>
<location line="+35"/>
<location line="+20"/>
<source>Failed to upload image: %s</source>
<translation>Failed to upload image: %s</translation>
<location filename="../../src/Utils.h" line="+108"/>
<translation>You sent an audio clip</translation>
<translation>%1 sent an audio clip</translation>
</message>
<message>
<location line="+5"/>
<source>You sent an image</source>
<translation>You sent an image</translation>
</message>
<message>
<location line="+3"/>
<source>%1 sent an image</source>
<translation>%1 sent an image</translation>
</message>
<message>
<location line="+5"/>
<source>You sent a file</source>
<translation>You sent a file</translation>
<translation>%1 sent a file</translation>
</message>
<message>
<location line="+5"/>
<source>You sent a video</source>
<translation>You sent a video</translation>
</message>
<message>
<location line="+3"/>
<source>%1 sent a video</source>
<translation>%1 sent a video</translation>
</message>
<message>
<location line="+5"/>
<source>You sent a sticker</source>
<translation>You sent a sticker</translation>
<translation>%1 sent a sticker</translation>
</message>
<message>
<location line="+5"/>
<source>You sent a notification</source>
<translation>You sent a notification</translation>
<translation>%1 sent a notification</translation>
</message>
<message>
<location line="+5"/>
<source>You: %1</source>
<translation>You sent an encrypted message</translation>
<location line="+3"/>
<source>%1 sent an encrypted message</source>
<translation>%1 sent an encrypted message</translation>
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
<message>
<location line="+5"/>
<source>You placed a call</source>
<translation>You placed a call</translation>
</message>
<message>
<location line="+3"/>
<source>%1 placed a call</source>
<translation>%1 placed a call</translation>
</message>
<message>
<location line="+5"/>
<source>You answered a call</source>
<translation>You answered a call</translation>
</message>
<message>
<location line="+3"/>
<source>%1 answered a call</source>
<translation>%1 answered a call</translation>
</message>
<message>
<location line="+5"/>
<source>You ended a call</source>
<translation>You ended a call</translation>
</message>
<message>
<location line="+3"/>
<source>%1 ended a call</source>
<translation>%1 ended a call</translation>
</message>
<location filename="../../src/popups/UserMentions.cpp" line="+64"/>
<location line="+1"/>
<source>All Rooms</source>
</message>
</context>
<context>
<name>utils</name>
<message>
<location filename="../../src/Utils.h" line="+4"/>
<translation>Unknown Message Type</translation>