diff --git a/lib/l10n/app_bg.arb b/lib/l10n/app_bg.arb index 6a01033..fae8e10 100644 --- a/lib/l10n/app_bg.arb +++ b/lib/l10n/app_bg.arb @@ -1,5 +1,5 @@ { - "profileDeleted": "Профилът „{name}“ е премахнат", + "profileDeleted": "Профилът \"{name}\" е премахнат", "@profileDeleted": { "description": "The text when a profile has been deleted", "placeholders": { @@ -139,7 +139,7 @@ } } }, - "deleteProfileMessage": "Желаете ли профила „{name}“ да бъде премахнат? Действието е необратимо. То ще премахне всички контакти и съобщения. Уверете се, че имате резервно копие.", + "deleteProfileMessage": "Желаете ли профила \"{name}\" да бъде премахнат? Действието е необратимо. То ще премахне всички контакти и съобщения. Уверете се, че имате резервно копие.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -158,5 +158,911 @@ "example": "Hello" } } + }, + "copyToxId": "Копиране на Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox ID е копиран", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "Невалиден Tox ID, проверете го за грешки", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} няма да получава съобщения, докато не влезете отново в него.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Приемане на заявката за приятелство", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Отхвърляне на заявката за приятелство", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "На линия", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Извън линия", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Премахване на контакт", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Да се премахне ли \"{name}\" от контактите Ви?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Контактът \"{name}\" е премахнат", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Импортиране", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Парола", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Грешна парола", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Профилът \"{name}\" е импортиран", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Този профил вече е в bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Експортиране на данните", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Всички акаунти и съобщения, шифровани с парола", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Импортиране на данни", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Експорт от bTox или профил на Tox от друг клиент", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Експортиране", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{Резервното копие няма нови акаунти} =1{1 акаунт е възстановен} other{{count} акаунта са възстановени}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Това не е профил на Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Оставане на линия при затваряне", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Поддържа на линия всички акаунти, в които сте влезли", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Акаунти", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Приложение", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Акаунт: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Автоматично приемане на файлове до", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Никога", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Приемане", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Отхвърляне", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Изтегляне", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Отменено", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "На пауза, докато подателят не се появи на линия", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Използване на UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Когато е изключено, връзката е само през TCP релета", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Използване на IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Локално откриване", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Директно намиране на приятели в същата мрежа", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Изключено при използване на прокси, което пренася само TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Прокси", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Без", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Хост", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Порт", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Въведете хост", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Въведете порт от 1 до 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Запазване", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Камера", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Галерия", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Файл", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Местоположение", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Свързване на акаунт", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Връзка за сдвояване", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Поставете връзката за сдвояване от устройството, на което работи акаунтът.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Това не е връзка за сдвояване", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Свързване", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Свързан акаунт", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (свързан)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Съобщението не можа да бъде изпратено", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Не можа да бъде запазено", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Файлът не можа да бъде импортиран", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Акаунтът не можа да бъде свързан", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Чатове", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Обаждания", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Гласово обаждане", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Видеообаждане", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Изходящо видеообаждане", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Входящо видеообаждане", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Пропуснато видеообаждане", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Камера", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Смяна на камерата", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox няма достъп до камерата, затова обаждането продължава без нея", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Изходящо гласово обаждане", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Входящо гласово обаждане", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Пропуснато гласово обаждане", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Входящи обаждания", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Пропуснати обаждания", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Обаждане в ход", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Обаждане…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Свързване…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Отговор", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Отхвърляне", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Затваряне", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Заглушаване", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Високоговорител", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Телефон", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Слушалки", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Скриване на обаждането", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Връщане към обаждането", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Обажданията изискват микрофона", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Обажданията не могат да звънят върху заключения екран", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Разрешаване", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Имена от ретранслиращ бот", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Спиране на показването на имена от ретранслиращия бот", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Показване на имената", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Няма скорошни обаждания", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Обажданията минават през устройството, с което е свързан този акаунт, а то не може да ги приеме сега", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Все още не е налично", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Няма приложение, което да отвори тази връзка", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Отговор", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Препращане", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Подробности за чата", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 участник} other{{count} участници}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Вие", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Заглушаване на известията", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Включване на известията", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "За 1 час", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "За 8 часа", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "За 1 седмица", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Винаги", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Известявай ме все пак при споменаване", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Заглушен до {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Заглушен", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Изпращане на снимките като QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Без загуби, но по-големи, а и не всяко приложение показва QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Видени чрез {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Показване на още 1} other{Показване на още {count}}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Основател", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Модератор", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Наблюдател", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Отсъства", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Зает", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Участниците се показват, докато основното устройство на акаунта е на линия", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Публичен ключ", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Публичният ключ е копиран", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Копиране", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Избиране", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Препращане до", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Съобщението е препратено} other{{count} съобщения са препратени}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Подробности за съобщението", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Изпратено", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Изпраща се", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Доставено", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Получено", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "От", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "Избрани: {count}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Съобщението е копирано} other{{count} съобщения са копирани}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Информация", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Днес", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Вчера", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Нещо се обърка", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Местоположение", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Емоджи", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Изпращане", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Прикачване", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Отказ от отговора", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Премахване", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Не можа да бъде прикачено", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Чернова:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID на съобщенията от TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Скрива ID, което TRIfA добавя към съобщенията, и показва само веднъж съобщение, което изпраща повторно", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Премахване завинаги и на съобщенията и файловете Ви в чата", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Профилът \"{name}\" не можа да бъде премахнат", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Обединяване с друг чат", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Показване на чатовете поотделно", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Обединяване на чатове", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Обединяване с", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Бот в {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "Ретранслирани {relayed} от {count} съобщения", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Няма други групови чатове", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Обединяване", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Данните са експортирани", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Данните не можаха да бъдат експортирани", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Включете местоположението, за да споделите къде сте", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox се нуждае от разрешение за достъп до местоположението Ви", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Местоположението Ви не можа да бъде определено", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Настройки", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Това е Вашият собствен Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Контактът не можа да бъде добавен", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Вече не можете да изпращате съобщения в този чат", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Заявка за приятелство", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Покана за чат", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} Ви покани в {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} Ви покани в конференция", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Присъединяване", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Отхвърляне", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Присъединяване…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Нужна е паролата на групата. Поискайте нова покана.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Присъединяването не бе успешно. Поискайте нова покана.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Присъединяването не бе успешно", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Оставете празно, ако групата няма парола", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Нов опит", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Най-новите съобщения", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Все още няма чатове", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Добавете контакт с бутона +, за да започнете чат", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_ca.arb b/lib/l10n/app_ca.arb index 257acac..adc6b89 100644 --- a/lib/l10n/app_ca.arb +++ b/lib/l10n/app_ca.arb @@ -24,5 +24,1045 @@ "example": "Hello" } } + }, + "toxId": "ID de Tox", + "@toxId": { + "description": "The text for the Tox ID field" + }, + "copyToxId": "Copia l'ID de Tox", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "S'ha copiat l'ID de Tox", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "defaultAddContactMessage": "Ei, sóc {nick}, vine a xatejar amb mi a bTox!", + "@defaultAddContactMessage": { + "description": "The default message to send when adding a contact", + "placeholders": { + "nick": { + "type": "String", + "example": "Alice" + } + } + }, + "addContactMessageLengthError": "Màxim {max} caràcters ({length} és massa llarg)", + "@addContactMessageLengthError": { + "description": "The error message when the friend request message is too long", + "placeholders": { + "max": { + "type": "int", + "example": "256" + }, + "length": { + "type": "int", + "example": "300" + } + } + }, + "add": "Afegeix", + "@add": { + "description": "The text for the button to add a contact" + }, + "toxIdLengthError": "Ha de tenir {length} caràcters hexadecimals", + "@toxIdLengthError": { + "description": "The error message when the Tox ID is not the right length or format", + "placeholders": { + "length": { + "type": "int", + "example": "76" + } + } + }, + "toxIdChecksumError": "No és un ID de Tox vàlid, comprova si hi ha errors", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "messageEmptyError": "El missatge no pot estar buit", + "@messageEmptyError": { + "description": "The error message when the message is empty" + }, + "menuProfile": "Perfil", + "@menuProfile": { + "description": "The text for the profile menu item" + }, + "menuSettings": "Configuració", + "@menuSettings": { + "description": "The text for the settings menu item" + }, + "nickLengthError": "El sobrenom ha de tenir entre 1 i {max} caràcters", + "@nickLengthError": { + "description": "The error message when the nickname is too short or too long", + "placeholders": { + "max": { + "type": "int", + "example": "32" + } + } + }, + "statusMessageLengthError": "El missatge d'estat no pot superar els {max} caràcters", + "@statusMessageLengthError": { + "description": "The error message when the status message is longer than the supported maximum", + "placeholders": { + "max": { + "type": "int", + "example": "128" + } + } + }, + "profileTextFieldNick": "Sobrenom", + "@profileTextFieldNick": { + "description": "The text for the nickname field" + }, + "profileTextFieldUserStatusMessage": "Missatge d'estat", + "@profileTextFieldUserStatusMessage": { + "description": "The text for the status message field" + }, + "applyChanges": "Aplica els canvis", + "@applyChanges": { + "description": "The text for the button to apply changes" + }, + "applied": "Aplicat", + "@applied": { + "description": "The text when changes have been applied" + }, + "newProfile": "Perfil nou", + "@newProfile": { + "description": "The title text for the create profile dialog" + }, + "create": "Crea", + "@create": { + "description": "The text for the button create a new profile" + }, + "logout": "Tanca la sessió", + "@logout": { + "description": "The text for the logout menu item" + }, + "logoutMessage": "{name} deixarà de rebre missatges fins que hi tornis a iniciar la sessió.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteProfile": "Suprimeix el perfil", + "@deleteProfile": { + "description": "The text for the delete profile menu item" + }, + "deleteProfileMessage": "Segur que vols suprimir el teu perfil \"{name}\"? Aquesta acció no es pot desfer. Se suprimiran tots els teus contactes i missatges. Assegura't que tens una còpia de seguretat.", + "@deleteProfileMessage": { + "description": "The message to confirm the deletion of a profile", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "cancel": "Cancel·la", + "@cancel": { + "description": "The text for the cancel button" + }, + "delete": "Suprimeix", + "@delete": { + "description": "The text for the delete button" + }, + "acceptFriendRequest": "Accepta la sol·licitud d'amistat", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Rebutja la sol·licitud d'amistat", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "En línia", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Fora de línia", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Suprimeix el contacte", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Vols suprimir \"{name}\" dels teus contactes?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "S'ha suprimit el contacte \"{name}\"", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importa", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Contrasenya", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Contrasenya incorrecta", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "S'ha importat el perfil \"{name}\"", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Aquest perfil ja és a bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Exporta les dades", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Tots els comptes i missatges, xifrats amb una contrasenya", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importa dades", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Una exportació de bTox o un perfil de Tox d'un altre client", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exporta", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{La còpia de seguretat no té cap compte nou} =1{S'ha restaurat 1 compte} other{S'han restaurat {count} comptes}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "No és un perfil de Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Mantén-te en línia en tancar", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Manté en línia tots els comptes amb la sessió iniciada", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Comptes", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Aplicació", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Compte: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Accepta fitxers automàticament fins a", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Mai", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Accepta", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Rebutja", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Baixa", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Cancel·lat", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "En pausa fins que torni a estar en línia", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Utilitza UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Si està desactivat, només es connecta a través de repetidors TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Utilitza IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Descobriment local", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Troba directament amics a la mateixa xarxa", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Desactivat mentre s'utilitzi un servidor intermediari, que només transporta TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Servidor intermediari", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Cap", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Amfitrió", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Port", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Introdueix un amfitrió", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Introdueix un port de l'1 al 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Desa", + "@save": { + "description": "The text for the save button" + }, + "profileDeleted": "S'ha suprimit el perfil \"{name}\"", + "@profileDeleted": { + "description": "The text when a profile has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "attachCamera": "Càmera", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galeria", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Fitxer", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Ubicació", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Vincula un compte", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Enllaç de vinculació", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Enganxa l'enllaç de vinculació del dispositiu on s'executa el compte.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Això no és un enllaç de vinculació", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Vincula", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Compte vinculat", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (vinculat)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "No s'ha pogut enviar el missatge", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "No s'ha pogut desar", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "No s'ha pogut importar aquest fitxer", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "No s'ha pogut vincular el compte", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Xats", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Trucades", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Trucada de veu", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videotrucada", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Videotrucada sortint", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Videotrucada entrant", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Videotrucada perduda", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Càmera", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Canvia de càmera", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox no pot utilitzar la càmera, així que la trucada continua sense", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Trucada de veu sortint", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Trucada de veu entrant", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Trucada de veu perduda", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Trucades entrants", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Trucades perdudes", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Trucada en curs", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "S'està trucant…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "S'està connectant…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Respon", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Rebutja", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Penja", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Silencia", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Altaveu", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Telèfon", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Auriculars", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Amaga la trucada", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Torna a la trucada", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Les trucades necessiten el micròfon", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Les trucades no poden sonar sobre la pantalla de bloqueig", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Permet", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Noms d'un bot de retransmissió", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Deixa de mostrar els noms del bot de retransmissió", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Mostra els noms", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "No hi ha trucades recents", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Les trucades passen pel dispositiu al qual està vinculat aquest compte, que ara no les pot atendre", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Encara no està disponible", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Cap aplicació pot obrir aquest enllaç", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Respon", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Reenvia", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Detalls del xat", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 membre} other{{count} membres}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Tu", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Silencia les notificacions", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Activa les notificacions", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Durant 1 hora", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Durant 8 hores", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Durant 1 setmana", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Sempre", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Notifica'm igualment les mencions", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Silenciat fins a {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Silenciat", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Envia les imatges com a QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sense pèrdua, però més grans, i no totes les aplicacions mostren QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Vist a través de {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Mostra'n 1 més} other{Mostra'n {count} més}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fundador", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderador", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Observador", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Absent", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Ocupat", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Qui hi ha es mostra mentre el dispositiu principal del compte està en línia", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Clau pública", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "S'ha copiat la clau pública", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copia", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Selecciona", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Reenvia a", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{S'ha reenviat el missatge} other{S'han reenviat {count} missatges}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Detalls del missatge", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Enviat", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "S'està enviant", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Lliurat", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Rebut", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "De", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, one{{count} seleccionat} other{{count} seleccionats}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{S'ha copiat el missatge} other{S'han copiat {count} missatges}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Informació", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Avui", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Ahir", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Alguna cosa ha anat malament", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Ubicació", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Envia", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Adjunta", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Cancel·la la resposta", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Elimina", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "No s'ha pogut adjuntar", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Esborrany:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID de missatge de TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Amaga l'ID que TRIfA afegeix als missatges i mostra només un cop un missatge que torna a enviar", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Suprimeix també definitivament els teus missatges i fitxers amb aquesta persona", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "No s'ha pogut suprimir el perfil \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Combina amb un altre xat", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Mostra els xats per separat", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Combina xats", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Combina amb", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot a {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} de {count} missatges retransmesos", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "No hi ha altres xats de grup", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Combina", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "S'han exportat les dades", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "No s'han pogut exportar les dades", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Activa la ubicació per compartir on ets", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox necessita permís per utilitzar la teva ubicació", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "No s'ha pogut trobar on ets", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Configuració", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Aquest és el teu propi ID de Tox", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "No s'ha pogut afegir el contacte", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Ja no pots enviar missatges a aquest xat", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Sol·licitud d'amistat", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Invitació a un xat", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} t'ha convidat a {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} t'ha convidat a una conferència", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Uneix-t'hi", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Rebutja", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "S'està unint…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Cal la contrasenya del grup. Demana una invitació nova.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "No t'hi has pogut unir. Demana una invitació nova.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "No t'hi has pogut unir", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Deixa-ho buit si el grup no en té", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Torna-ho a provar", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Missatges més recents", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Encara no hi ha xats", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Afegeix un contacte amb el botó + per començar a xatejar", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index c6391c1..bd40cdb 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -30,7 +30,7 @@ "@profileTextFieldUserStatusMessage": { "description": "The text for the status message field" }, - "defaultContactName": "Eine Person", + "defaultContactName": "Unbekannt", "@defaultContactName": { "description": "The default name for a contact when the name is not yet known" }, @@ -52,7 +52,7 @@ } } }, - "addContactMessageLengthError": "Maximum {max} Zeichen ({length} ist zu lang)", + "addContactMessageLengthError": "Maximal {max} Zeichen ({length} ist zu lang)", "@addContactMessageLengthError": { "description": "The error message when the friend request message is too long", "placeholders": { @@ -66,7 +66,7 @@ } } }, - "toxIdLengthError": "Muss {length} hexadezimale Zeichen sein", + "toxIdLengthError": "Muss aus {length} Hexadezimalzeichen bestehen", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -102,7 +102,7 @@ "@applyChanges": { "description": "The text for the button to apply changes" }, - "applied": "Angewendet", + "applied": "Übernommen", "@applied": { "description": "The text when changes have been applied" }, @@ -130,7 +130,7 @@ "@delete": { "description": "The text for the delete button" }, - "profileDeleted": "Profil „{name}“ gelöscht", + "profileDeleted": "Profil \"{name}\" gelöscht", "@profileDeleted": { "description": "The text when a profile has been deleted", "placeholders": { @@ -140,7 +140,7 @@ } } }, - "deleteProfileMessage": "Möchten Sie Ihr Profil „{name}“ wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden. Dabei werden alle Ihre Kontakte und Nachrichten gelöscht. Stellen Sie sicher, dass Sie ein Backup haben.", + "deleteProfileMessage": "Möchtest du dein Profil \"{name}\" wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden. Dabei werden alle deine Kontakte und Nachrichten gelöscht. Stelle sicher, dass du ein Backup hast.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -159,5 +159,911 @@ "example": "Hello" } } + }, + "copyToxId": "Tox-ID kopieren", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox-ID kopiert", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "Keine gültige Tox-ID, bitte auf Tippfehler prüfen", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} empfängt keine Nachrichten mehr, bis du dich wieder damit anmeldest.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Kontaktanfrage annehmen", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Kontaktanfrage ablehnen", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "Online", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Offline", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Kontakt löschen", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "\"{name}\" aus deinen Kontakten löschen?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Kontakt \"{name}\" gelöscht", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importieren", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Passwort", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Falsches Passwort", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Profil \"{name}\" importiert", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Dieses Profil ist bereits in bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Daten exportieren", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Alle Konten und Nachrichten, mit einem Passwort verschlüsselt", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Daten importieren", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Ein bTox-Export oder ein Tox-Profil aus einem anderen Client", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exportieren", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{Das Backup enthält keine neuen Konten} =1{1 Konto wiederhergestellt} other{{count} Konten wiederhergestellt}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Kein Tox-Profil", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Nach dem Schließen online bleiben", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Hält alle angemeldeten Konten online", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Konten", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "App", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Konto: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Dateien automatisch annehmen bis", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Nie", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Annehmen", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Ablehnen", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Herunterladen", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Abgebrochen", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Pausiert, bis die Person wieder online ist", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "UDP verwenden", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Wenn aus, nur über TCP-Relays verbinden", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "IPv6 verwenden", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Lokale Erkennung", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Kontakte im selben Netzwerk direkt finden", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Aus, solange ein Proxy verwendet wird, der nur TCP überträgt", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Keiner", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Host", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Port", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Gib einen Host ein", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Gib einen Port von 1 bis 65535 ein", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Speichern", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Kamera", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galerie", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Datei", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Standort", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Konto verknüpfen", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Kopplungslink", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Füge den Kopplungslink des Geräts ein, auf dem das Konto läuft.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Das ist kein Kopplungslink", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Verknüpfen", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Verknüpftes Konto", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (verknüpft)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Die Nachricht konnte nicht gesendet werden", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Konnte nicht gespeichert werden", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Diese Datei konnte nicht importiert werden", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Das Konto konnte nicht verknüpft werden", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Chats", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Anrufe", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Sprachanruf", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videoanruf", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Ausgehender Videoanruf", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Eingehender Videoanruf", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Verpasster Videoanruf", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Kamera", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Kamera wechseln", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox darf die Kamera nicht verwenden, der Anruf läuft ohne sie weiter", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Ausgehender Sprachanruf", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Eingehender Sprachanruf", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Verpasster Sprachanruf", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Eingehende Anrufe", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Verpasste Anrufe", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Anruf läuft", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Wird angerufen…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Verbinden…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Annehmen", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Ablehnen", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Auflegen", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Stummschalten", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Lautsprecher", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Telefon", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Kopfhörer", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Anruf ausblenden", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Zurück zum Anruf", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Anrufe benötigen das Mikrofon", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Anrufe können nicht über dem Sperrbildschirm klingeln", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Erlauben", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Namen von einem Relay-Bot", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Namen vom Relay-Bot nicht mehr anzeigen", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Namen anzeigen", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Keine kürzlichen Anrufe", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Anrufe laufen über das Gerät, mit dem dieses Konto verknüpft ist, und es kann sie gerade nicht annehmen", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Noch nicht verfügbar", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Keine App kann diesen Link öffnen", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Antworten", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Weiterleiten", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Chatdetails", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 Mitglied} other{{count} Mitglieder}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Du", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Benachrichtigungen stummschalten", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Stummschaltung aufheben", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Für 1 Stunde", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Für 8 Stunden", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Für 1 Woche", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Immer", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Bei Erwähnungen trotzdem benachrichtigen", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Stummgeschaltet bis {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Stummgeschaltet", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Bilder als QOI senden", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Verlustfrei, aber größer, und nicht jede App zeigt QOI an", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Gesehen über {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{1 weiteren anzeigen} other{{count} weitere anzeigen}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Gründer", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderator", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Beobachter", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Abwesend", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Beschäftigt", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Wer hier ist, wird angezeigt, solange das Hauptgerät des Kontos online ist", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Öffentlicher Schlüssel", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Öffentlicher Schlüssel kopiert", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Kopieren", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Auswählen", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Weiterleiten an", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Nachricht weitergeleitet} other{{count} Nachrichten weitergeleitet}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Nachrichtendetails", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Gesendet", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Wird gesendet", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Zugestellt", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Empfangen", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "Von", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count} ausgewählt", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Nachricht kopiert} other{{count} Nachrichten kopiert}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Info", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Heute", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Gestern", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Etwas ist schiefgelaufen", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Standort", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Senden", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Anhängen", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Antwort abbrechen", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Entfernen", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Konnte nicht angehängt werden", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Entwurf:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA-Nachrichten-IDs", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Blendet die ID aus, die TRIfA an Nachrichten anhängt, und zeigt erneut gesendete Nachrichten nur einmal an", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Auch deine Nachrichten und Dateien mit dieser Person endgültig löschen", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Profil \"{name}\" konnte nicht gelöscht werden", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Mit anderem Chat zusammenführen", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Chats getrennt anzeigen", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Chats zusammenführen", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Zusammenführen mit", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot in {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} von {count} Nachrichten übermittelt", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Keine anderen Gruppenchats", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Zusammenführen", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Daten exportiert", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Die Daten konnten nicht exportiert werden", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Schalte den Standort ein, um ihn zu teilen", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox benötigt die Berechtigung, deinen Standort zu verwenden", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Dein Standort konnte nicht ermittelt werden", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Einstellungen", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Das ist deine eigene Tox-ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Der Kontakt konnte nicht hinzugefügt werden", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Du kannst in diesem Chat keine Nachrichten mehr senden", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Kontaktanfrage", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Einladung zu einem Chat", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} hat dich zu {chat} eingeladen", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} hat dich zu einer Konferenz eingeladen", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Beitreten", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Ablehnen", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Beitritt läuft…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Benötigt das Gruppenpasswort. Bitte um eine neue Einladung.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Beitritt fehlgeschlagen. Bitte um eine neue Einladung.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Beitritt fehlgeschlagen", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Leer lassen, wenn die Gruppe keins hat", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Erneut versuchen", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Neueste Nachrichten", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Noch keine Chats", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Füge mit der +-Schaltfläche einen Kontakt hinzu, um zu chatten", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 72639e6..079acbd 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -3,7 +3,7 @@ "@defaultContactName": { "description": "The default name for a contact when the name is not yet known" }, - "addContact": "Agregar contacto", + "addContact": "Añadir contacto", "@addContact": { "description": "The text for the button to add a contact" }, @@ -29,7 +29,7 @@ "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "Hola, yo soy {nick}, ven a charlar conmigo en bTox!", + "defaultAddContactMessage": "Hola, soy {nick}, ¡ven a charlar conmigo en bTox!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -57,7 +57,7 @@ "@add": { "description": "The text for the button to add a contact" }, - "toxIdLengthError": "Debe ser {length} caracteres hexadecimales", + "toxIdLengthError": "Debe tener {length} caracteres hexadecimales", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -79,7 +79,7 @@ "@menuSettings": { "description": "The text for the settings menu item" }, - "nickLengthError": "El apodo debe ser entre 1 y {max} caracteres", + "nickLengthError": "El apodo debe tener entre 1 y {max} caracteres", "@nickLengthError": { "description": "The error message when the nickname is too short or too long", "placeholders": { @@ -107,7 +107,7 @@ "@profileTextFieldUserStatusMessage": { "description": "The text for the status message field" }, - "applyChanges": "Aplica cambios", + "applyChanges": "Aplicar cambios", "@applyChanges": { "description": "The text for the button to apply changes" }, @@ -158,5 +158,911 @@ "example": "Alice" } } + }, + "copyToxId": "Copiar ID Tox", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "ID Tox copiado", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "No es un ID Tox válido, revisa que no tenga errores", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} dejará de recibir mensajes hasta que vuelvas a iniciar sesión.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Aceptar solicitud de amistad", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Rechazar solicitud de amistad", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "En línea", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Desconectado", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Borrar contacto", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "¿Borrar a \"{name}\" de tus contactos?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Contacto \"{name}\" borrado", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importar", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Contraseña", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Contraseña incorrecta", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Perfil \"{name}\" importado", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Este perfil ya está en bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Exportar datos", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Todas las cuentas y mensajes, cifrados con una contraseña", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importar datos", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Una exportación de bTox o un perfil Tox de otro cliente", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exportar", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{La copia no tiene cuentas nuevas} =1{1 cuenta restaurada} other{{count} cuentas restauradas}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "No es un perfil Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Seguir en línea al cerrar", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Mantiene en línea todas las cuentas con sesión iniciada", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Cuentas", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Aplicación", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Cuenta: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Aceptar archivos automáticamente hasta", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Nunca", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Aceptar", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Rechazar", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Descargar", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Cancelado", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "En pausa hasta que vuelva a estar en línea", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Usar UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Si está desactivado, conecta solo mediante relés TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Usar IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Descubrimiento local", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Encuentra amigos directamente en la misma red", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Desactivado con un proxy, que solo transmite TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Ninguno", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Host", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Puerto", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Introduce un host", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Introduce un puerto del 1 al 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Guardar", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Cámara", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galería", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Archivo", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Ubicación", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Vincular una cuenta", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Enlace de vinculación", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Pega el enlace de vinculación del dispositivo en el que funciona la cuenta.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Esto no es un enlace de vinculación", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Vincular", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Cuenta vinculada", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (vinculada)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "No se pudo enviar el mensaje", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "No se pudo guardar", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "No se pudo importar este archivo", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "No se pudo vincular la cuenta", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Chats", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Llamadas", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Llamada de voz", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videollamada", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Videollamada saliente", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Videollamada entrante", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Videollamada perdida", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Cámara", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Cambiar cámara", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox no puede usar la cámara, así que la llamada sigue sin vídeo", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Llamada de voz saliente", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Llamada de voz entrante", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Llamada de voz perdida", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Llamadas entrantes", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Llamadas perdidas", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Llamada en curso", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Llamando…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Conectando…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Contestar", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Rechazar", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Colgar", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Silenciar", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Altavoz", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Teléfono", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Auriculares", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Ocultar la llamada", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Volver a la llamada", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Las llamadas necesitan el micrófono", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Las llamadas no pueden sonar sobre la pantalla de bloqueo", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Permitir", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Nombres de un bot retransmisor", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Dejar de mostrar los nombres del bot retransmisor", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Mostrar nombres", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "No hay llamadas recientes", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Las llamadas pasan por el dispositivo al que está vinculada esta cuenta, que ahora no puede atenderlas", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Aún no disponible", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Ninguna app puede abrir este enlace", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Responder", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Reenviar", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Detalles del chat", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 miembro} other{{count} miembros}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Tú", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Silenciar notificaciones", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Activar notificaciones", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Durante 1 hora", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Durante 8 horas", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Durante 1 semana", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Siempre", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Notificarme igualmente las menciones", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Silenciado hasta {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Silenciado", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Enviar imágenes como QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sin pérdida, pero más pesadas, y no todas las apps muestran QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Vistos a través de {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Mostrar 1 más} other{Mostrar {count} más}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fundador", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderador", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Observador", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Ausente", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Ocupado", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Los miembros se muestran mientras el dispositivo principal de la cuenta está en línea", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Clave pública", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Clave pública copiada", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copiar", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Seleccionar", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Reenviar a", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Mensaje reenviado} other{{count} mensajes reenviados}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Detalles del mensaje", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Enviado", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Enviando", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Entregado", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Recibido", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "De", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, =1{1 seleccionado} other{{count} seleccionados}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Mensaje copiado} other{{count} mensajes copiados}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Info", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Hoy", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Ayer", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Algo salió mal", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Ubicación", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Enviar", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Adjuntar", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Cancelar respuesta", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Quitar", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "No se pudo adjuntar", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Borrador:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID de mensaje de TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Oculta el ID que TRIfA añade a los mensajes y muestra solo una vez un mensaje que reenvía", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Borrar también para siempre tus mensajes y archivos con este contacto", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "No se pudo borrar el perfil \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Unir con otro chat", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Mostrar los chats por separado", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Unir chats", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Unir con", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot en {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} de {count} mensajes retransmitidos", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "No hay otros chats de grupo", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Unir", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Datos exportados", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "No se pudieron exportar los datos", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Activa la ubicación para compartir dónde estás", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox necesita permiso para usar tu ubicación", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "No se pudo encontrar tu ubicación", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Ajustes", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Este es tu propio ID Tox", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "No se pudo añadir el contacto", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Ya no puedes enviar mensajes a este chat", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Solicitud de amistad", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Invitación a un chat", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} te invitó a {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} te invitó a una conferencia", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Unirse", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Rechazar", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Uniéndote…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Hace falta la contraseña del grupo. Pide una nueva invitación.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "No fue posible unirse. Pide una nueva invitación.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "No fue posible unirse", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Déjalo vacío si el grupo no tiene ninguna", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Reintentar", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Mensajes más recientes", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Aún no hay chats", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Añade un contacto con el botón + para empezar a chatear", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index c0039ef..07eef96 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -29,7 +29,7 @@ "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "Salut, je suis {nick}, viens discuter avec moi sur bTox !", + "defaultAddContactMessage": "Salut, je suis {nick}, viens discuter avec moi sur bTox !", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -43,7 +43,7 @@ "@add": { "description": "The text for the button to add a contact" }, - "toxIdLengthError": "Doit être {length} caractères hexadécimaux", + "toxIdLengthError": "Doit comporter {length} caractères hexadécimaux", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -65,7 +65,7 @@ "@menuSettings": { "description": "The text for the settings menu item" }, - "applyChanges": "Appliquer changements", + "applyChanges": "Appliquer les modifications", "@applyChanges": { "description": "The text for the button to apply changes" }, @@ -81,11 +81,11 @@ "@create": { "description": "The text for the button create a new profile" }, - "deleteProfile": "Supprimer profil", + "deleteProfile": "Supprimer le profil", "@deleteProfile": { "description": "The text for the delete profile menu item" }, - "deleteProfileMessage": "Êtes-vous sûr(e) de vouloir supprimer votre profil \"{name}\" ? Cette action ne peut pas être annulée. Elle supprimera tous vos contacts et messages. Assurez-vous d’avoir une sauvegarde.", + "deleteProfileMessage": "Êtes-vous sûr(e) de vouloir supprimer votre profil \"{name}\" ? Cette action ne peut pas être annulée. Elle supprimera tous vos contacts et messages. Assurez-vous d’avoir une sauvegarde.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -117,7 +117,7 @@ "@profileTextFieldNick": { "description": "The text for the nickname field" }, - "nickLengthError": "Le pseudonyme doit être entre 1 et {max} caractères", + "nickLengthError": "Le pseudonyme doit comporter entre 1 et {max} caractères", "@nickLengthError": { "description": "The error message when the nickname is too short or too long", "placeholders": { @@ -158,5 +158,911 @@ "logout": "Déconnexion", "@logout": { "description": "The text for the logout menu item" + }, + "copyToxId": "Copier l’ID Tox", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "ID Tox copié", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "ID Tox non valide, vérifiez qu’il ne contient pas de faute de frappe", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} ne recevra plus de messages jusqu’à ce que vous vous y reconnectiez.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Accepter la demande d’ami", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Refuser la demande d’ami", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "En ligne", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Hors ligne", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Supprimer le contact", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Supprimer \"{name}\" de vos contacts ?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Contact \"{name}\" supprimé", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importer", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Mot de passe", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Mot de passe incorrect", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Profil \"{name}\" importé", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Ce profil est déjà dans bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Exporter les données", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Tous les comptes et messages, chiffrés avec un mot de passe", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importer des données", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Un export bTox, ou un profil Tox d’un autre client", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exporter", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{La sauvegarde ne contient aucun nouveau compte} =1{1 compte restauré} other{{count} comptes restaurés}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Ce n’est pas un profil Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Rester en ligne après fermeture", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Garde en ligne tous les comptes connectés", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Comptes", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Application", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Compte : {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Accepter automatiquement les fichiers jusqu’à", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Jamais", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Accepter", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Refuser", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Télécharger", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Annulé", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "En pause jusqu’à son retour en ligne", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Utiliser UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Désactivé, connexion uniquement via des relais TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Utiliser IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Découverte locale", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Trouver directement les amis sur le même réseau", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Désactivé avec un proxy, qui ne transmet que TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Aucun", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Hôte", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Port", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Saisissez un hôte", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Saisissez un port entre 1 et 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Enregistrer", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Appareil photo", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galerie", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Fichier", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Position", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Associer un compte", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Lien d’association", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Collez le lien d’association de l’appareil sur lequel le compte fonctionne.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Ce n’est pas un lien d’association", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Associer", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Compte associé", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (associé)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Impossible d’envoyer le message", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Impossible d’enregistrer", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Impossible d’importer ce fichier", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Impossible d’associer le compte", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Discussions", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Appels", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Appel vocal", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Appel vidéo", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Appel vidéo sortant", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Appel vidéo entrant", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Appel vidéo manqué", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Caméra", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Changer de caméra", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox n’a pas accès à la caméra, l’appel continue sans vidéo", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Appel vocal sortant", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Appel vocal entrant", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Appel vocal manqué", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Appels entrants", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Appels manqués", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Appel en cours", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Appel…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Connexion…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Répondre", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Refuser", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Raccrocher", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Couper le micro", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Haut-parleur", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Téléphone", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Écouteurs", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Masquer l’appel", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Revenir à l’appel", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Les appels nécessitent le micro", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Les appels ne peuvent pas sonner sur l’écran de verrouillage", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Autoriser", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Noms transmis par un bot relais", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Ne plus afficher les noms du bot relais", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Afficher les noms", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Aucun appel récent", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Les appels passent par l’appareil auquel ce compte est associé, qui ne peut pas les prendre pour l’instant", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Pas encore disponible", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Aucune application ne peut ouvrir ce lien", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Répondre", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Transférer", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Détails de la discussion", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, one{{count} membre} other{{count} membres}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Vous", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Désactiver les notifications", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Réactiver les notifications", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Pendant 1 heure", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Pendant 8 heures", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Pendant 1 semaine", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Toujours", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Me notifier quand même des mentions", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "En sourdine jusqu’à {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "En sourdine", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Envoyer les photos en QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sans perte, mais plus lourd, et certaines applis n’affichent pas QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Vus via {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Afficher 1 de plus} other{Afficher {count} de plus}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fondateur", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Modérateur", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Observateur", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Absent", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Occupé", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Les membres s’affichent quand l’appareil principal du compte est en ligne", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Clé publique", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Clé publique copiée", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copier", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Sélectionner", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Transférer à", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Message transféré} other{{count} messages transférés}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Détails du message", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Envoyé", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Envoi en cours", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Distribué", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Reçu", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "De", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, one{{count} sélectionné} other{{count} sélectionnés}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Message copié} other{{count} messages copiés}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Infos", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Aujourd’hui", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Hier", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Une erreur s’est produite", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Position", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Envoyer", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Joindre", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Annuler la réponse", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Retirer", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Impossible de joindre cet élément", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Brouillon :", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID de message TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Masque l’ID que TRIfA ajoute aux messages et n’affiche qu’une fois un message qu’il renvoie", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Supprimer aussi définitivement vos messages et fichiers avec ce contact", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Impossible de supprimer le profil \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Fusionner avec une autre discussion", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Séparer les discussions", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Fusionner les discussions", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Fusionner avec", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot dans {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} messages relayés sur {count}", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Aucune autre discussion de groupe", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Fusionner", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Données exportées", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Impossible d’exporter les données", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Activez la localisation pour partager votre position", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox a besoin de l’autorisation d’accéder à votre position", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Impossible de déterminer votre position", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Paramètres", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "C’est votre propre ID Tox", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Impossible d’ajouter le contact", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Vous ne pouvez plus envoyer de messages dans cette discussion", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Demande d’ami", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Invitation à une discussion", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} vous a invité dans {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} vous a invité à une conférence", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Rejoindre", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Refuser", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Connexion à la discussion…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Le mot de passe du groupe est requis. Demandez une nouvelle invitation.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Impossible de rejoindre. Demandez une nouvelle invitation.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Impossible de rejoindre", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Laissez vide si le groupe n’en a pas", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Réessayer", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Messages les plus récents", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Aucune discussion pour l’instant", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Ajoutez un contact avec le bouton + pour commencer à discuter", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_hu.arb b/lib/l10n/app_hu.arb index b0d63db..476c6c2 100644 --- a/lib/l10n/app_hu.arb +++ b/lib/l10n/app_hu.arb @@ -29,7 +29,7 @@ "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "Helló, {nick} vagyok, gyere, beszélgessünk a bTox-on!", + "defaultAddContactMessage": "Helló, {nick} vagyok, gyere, beszélgessünk a bToxon!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -131,7 +131,7 @@ "@deleteProfile": { "description": "The text for the delete profile menu item" }, - "deleteProfileMessage": "Biztosan törölni szeretné a(z) „{name}” profilját? Ezt a műveletet nem lehet visszavonni. Az összes partnere és üzenete törölve lesz. Győződjön meg arról, hogy van biztonsági mentése.", + "deleteProfileMessage": "Biztosan törölni szeretné a(z) \"{name}\" profilját? Ezt a műveletet nem lehet visszavonni. Az összes partnere és üzenete törölve lesz. Győződjön meg arról, hogy van biztonsági mentése.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -149,7 +149,7 @@ "@delete": { "description": "The text for the delete button" }, - "profileDeleted": "A(z) „{name}\" profil törölve", + "profileDeleted": "A(z) \"{name}\" profil törölve", "@profileDeleted": { "description": "The text when a profile has been deleted", "placeholders": { @@ -158,5 +158,911 @@ "example": "Alice" } } + }, + "copyToxId": "Tox-azonosító másolása", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox-azonosító kimásolva", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "Érvénytelen Tox-azonosító, ellenőrizze, nincs-e benne elírás", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} nem kap üzeneteket, amíg újra be nem jelentkezik.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Ismerőskérés elfogadása", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Ismerőskérés elutasítása", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "Elérhető", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Nem elérhető", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Partner törlése", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Törli \"{name}\" partnert?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "\"{name}\" partner törölve", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importálás", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Jelszó", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Hibás jelszó", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "A(z) \"{name}\" profil importálva", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Ez a profil már megvan a bToxban", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Adatok exportálása", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Minden fiók és üzenet, jelszóval titkosítva", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Adatok importálása", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "bTox-exportfájl vagy egy másik kliens Tox-profilja", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exportálás", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{A mentésben nincs új fiók} =1{1 fiók visszaállítva} other{{count} fiók visszaállítva}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Ez nem Tox-profil", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Elérhető marad bezárás után", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Minden bejelentkezett fiók elérhető marad", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Fiókok", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Alkalmazás", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Fiók: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Fájlok automatikus fogadása eddig a méretig", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Soha", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Fogadás", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Elutasítás", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Letöltés", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Megszakítva", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Szüneteltetve, amíg újra elérhető nem lesz", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "UDP használata", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Kikapcsolva csak TCP-továbbítókon át csatlakozik", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "IPv6 használata", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Helyi felderítés", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Ismerősök közvetlen keresése ugyanazon a hálózaton", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Proxy használatakor kikapcsolva, mert az csak TCP-t továbbít", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Nincs", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Kiszolgáló", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Port", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Adjon meg egy kiszolgálót", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Adjon meg egy portot 1 és 65535 között", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Mentés", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Kamera", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galéria", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Fájl", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Helyzet", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Fiók társítása", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Párosítási link", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Illessze be a párosítási linket a fiókot futtató eszközről.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Ez nem párosítási link", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Társítás", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Társított fiók", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (társított)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Nem sikerült elküldeni az üzenetet", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Nem sikerült menteni", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Nem sikerült importálni ezt a fájlt", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Nem sikerült társítani a fiókot", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Csevegések", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Hívások", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Hanghívás", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videóhívás", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Kimenő videóhívás", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Bejövő videóhívás", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Nem fogadott videóhívás", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Kamera", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Kameraváltás", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "A bTox nem használhatja a kamerát, ezért a hívás kamera nélkül folytatódik", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Kimenő hanghívás", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Bejövő hanghívás", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Nem fogadott hanghívás", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Bejövő hívások", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Nem fogadott hívások", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Hívás folyamatban", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Hívás…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Kapcsolódás…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Fogadás", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Elutasítás", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Bontás", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Némítás", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Kihangosító", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Telefon", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Fejhallgató", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Hívás elrejtése", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Vissza a híváshoz", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "A hívásokhoz mikrofon szükséges", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "A hívások nem csöröghetnek a lezárási képernyőn", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Engedélyezés", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Továbbító bot által küldött nevek", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Ne jelenjenek meg a továbbító bot nevei", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Nevek megjelenítése", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Nincsenek legutóbbi hívások", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "A hívások azon az eszközön át mennek, amelyhez ez a fiók társítva van, és az most nem tudja fogadni őket", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Még nem érhető el", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Egyik alkalmazás sem tudja megnyitni ezt a linket", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Válasz", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Továbbítás", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Csevegés részletei", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 tag} other{{count} tag}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Ön", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Értesítések némítása", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Értesítések némításának feloldása", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "1 órára", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "8 órára", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "1 hétre", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Mindig", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Említéseknél továbbra is értesítsen", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Némítva eddig: {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Némítva", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Képek küldése QOI formátumban", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Veszteségmentes, de nagyobb, és nem minden alkalmazás jeleníti meg a QOI-t", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "{bot} közvetítésével", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Még 1 megjelenítése} other{Még {count} megjelenítése}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Alapító", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderátor", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Megfigyelő", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Távol", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Elfoglalt", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "A jelenlévők akkor látszanak, amikor a fiók otthoni eszköze elérhető", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Nyilvános kulcs", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Nyilvános kulcs kimásolva", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Másolás", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Kijelölés", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Továbbítás ide", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Üzenet továbbítva} other{{count} üzenet továbbítva}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Üzenet részletei", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Elküldve", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Küldés", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Kézbesítve", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Fogadva", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "Feladó", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count} kijelölve", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Üzenet kimásolva} other{{count} üzenet kimásolva}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Infó", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Ma", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Tegnap", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Hiba történt", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Helyzet", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Küldés", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Csatolás", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Válasz elvetése", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Eltávolítás", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Nem sikerült csatolni", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Piszkozat:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA-üzenetazonosítók", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Elrejti a TRIfA által az üzenetekhez fűzött azonosítót, és az általa újraküldött üzenetet csak egyszer jeleníti meg", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "A vele közös üzenetek és fájlok végleges törlése is", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Nem sikerült törölni a(z) \"{name}\" profilt", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Egyesítés egy másik csevegéssel", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Csevegések külön megjelenítése", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Csevegések egyesítése", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Egyesítés ezzel", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot itt: {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count} üzenetből {relayed} továbbítva", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Nincs más csoportos csevegés", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Egyesítés", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Adatok exportálva", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Nem sikerült exportálni az adatokat", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Kapcsolja be a helymeghatározást a helyzete megosztásához", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "A bToxnak engedélyre van szüksége a helyzete használatához", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Nem sikerült meghatározni a helyzetét", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Beállítások", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Ez a saját Tox-azonosítója", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Nem sikerült hozzáadni a partnert", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Ebbe a csevegésbe már nem küldhet üzenetet", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Ismerőskérés", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Meghívás csevegésbe", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} meghívta Önt ide: {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} meghívta Önt egy konferenciába", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Csatlakozás", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Elutasítás", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Csatlakozás…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "A csoport jelszava szükséges. Kérjen új meghívót.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Nem sikerült csatlakozni. Kérjen új meghívót.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Nem sikerült csatlakozni", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Hagyja üresen, ha a csoportnak nincs jelszava", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Újra", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Legújabb üzenetek", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Még nincsenek csevegések", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Adjon hozzá egy partnert a + gombbal a csevegés indításához", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_lv.arb b/lib/l10n/app_lv.arb index 505ff3d..f1a7895 100644 --- a/lib/l10n/app_lv.arb +++ b/lib/l10n/app_lv.arb @@ -3,7 +3,7 @@ "@newProfile": { "description": "The title text for the create profile dialog" }, - "defaultContactName": "Nezināma persona", + "defaultContactName": "Nezināms", "@defaultContactName": { "description": "The default name for a contact when the name is not yet known" }, @@ -109,7 +109,7 @@ "@cancel": { "description": "The text for the cancel button" }, - "logout": "Atteikties", + "logout": "Izrakstīties", "@logout": { "description": "The text for the logout menu item" }, @@ -117,7 +117,7 @@ "@messageEmptyError": { "description": "The error message when the message is empty" }, - "defaultAddContactMessage": "Sveiki, es esmu {nick}, nāc tērzēt ar mani bTox!", + "defaultAddContactMessage": "Čau, es esmu {nick}, nāc tērzēt ar mani bTox lietotnē!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -158,5 +158,911 @@ "delete": "Dzēst", "@delete": { "description": "The text for the delete button" + }, + "copyToxId": "Kopēt Tox-ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox-ID nokopēts", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "Nederīgs Tox-ID, pārbaudiet, vai nav drukas kļūdu", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} nesaņems ziņojumus, līdz jūs tajā atkal pierakstīsieties.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Pieņemt drauga pieprasījumu", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Noraidīt drauga pieprasījumu", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "Tiešsaistē", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Bezsaistē", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Dzēst kontaktpersonu", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Dzēst \"{name}\" no jūsu kontaktpersonām?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Kontaktpersona \"{name}\" dzēsta", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importēt", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Parole", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Nepareiza parole", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Profils \"{name}\" importēts", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Šis profils jau ir bTox lietotnē", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Eksportēt datus", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Visi konti un ziņojumi, šifrēti ar paroli", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importēt datus", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "bTox eksports vai Tox profils no cita klienta", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Eksportēt", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{Rezerves kopijā nav jaunu kontu} one{Atjaunots {count} konts} other{Atjaunoti {count} konti}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Tas nav Tox profils", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Palikt tiešsaistē pēc aizvēršanas", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Uztur tiešsaistē visus pierakstītos kontus", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Konti", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Lietotne", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Konts: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Automātiski pieņemt failus līdz", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Nekad", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Pieņemt", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Noraidīt", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Lejupielādēt", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Atcelts", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Apturēts, līdz sūtītājs atkal būs tiešsaistē", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Izmantot UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Ja izslēgts, savienoties tikai caur TCP retranslatoriem", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Izmantot IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Lokālā atklāšana", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Atrast draugus tieši tajā pašā tīklā", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Izslēgts, kamēr tiek izmantots starpniekserveris, kas pārraida tikai TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Starpniekserveris", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Nav", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Resursdators", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Ports", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Ievadiet resursdatoru", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Ievadiet portu no 1 līdz 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Saglabāt", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Kamera", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galerija", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Fails", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Atrašanās vieta", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Piesaistīt kontu", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Savienošanas saite", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Ielīmējiet savienošanas saiti no ierīces, kurā darbojas konts.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Šī nav savienošanas saite", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Piesaistīt", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Piesaistīts konts", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (piesaistīts)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Neizdevās nosūtīt ziņojumu", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Neizdevās saglabāt", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Neizdevās importēt šo failu", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Neizdevās piesaistīt kontu", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Sarunas", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Zvani", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Balss zvans", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videozvans", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Izejošs videozvans", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Ienākošs videozvans", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Neatbildēts videozvans", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Kamera", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Pārslēgt kameru", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox nedrīkst izmantot kameru, tāpēc zvans turpinās bez tās", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Izejošs balss zvans", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Ienākošs balss zvans", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Neatbildēts balss zvans", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Ienākošie zvani", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Neatbildētie zvani", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Notiek zvans", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Zvana…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Savienojas…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Atbildēt", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Noraidīt", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Beigt zvanu", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Apklusināt", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Skaļrunis", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Tālrunis", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Austiņas", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Paslēpt zvanu", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Atgriezties zvanā", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Zvaniem nepieciešams mikrofons", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Zvani nevar parādīties bloķēšanas ekrānā", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Atļaut", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Vārdi no retranslācijas bota", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Nerādīt vārdus no retranslācijas bota", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Rādīt vārdus", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Nav nesenu zvanu", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Zvani notiek caur ierīci, kurai šis konts ir piesaistīts, un tā pašlaik tos nevar pieņemt", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Vēl nav pieejams", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Neviena lietotne nevar atvērt šo saiti", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Atbildēt", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Pārsūtīt", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Sarunas informācija", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, one{{count} dalībnieks} other{{count} dalībnieki}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Jūs", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Izslēgt paziņojumus", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Ieslēgt paziņojumus", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Uz 1 stundu", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Uz 8 stundām", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Uz 1 nedēļu", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Vienmēr", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Tomēr paziņot par pieminējumiem", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Paziņojumi izslēgti līdz {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Paziņojumi izslēgti", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Sūtīt attēlus kā QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Bez kvalitātes zuduma, bet lielāki, un ne visas lietotnes rāda QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Redzēti caur {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Rādīt vēl 1} other{Rādīt vēl {count}}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Dibinātājs", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderators", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Novērotājs", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Prom", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Aizņemts", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Dalībnieki tiek rādīti, kamēr konta galvenā ierīce ir tiešsaistē", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Publiskā atslēga", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Publiskā atslēga nokopēta", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Kopēt", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Atlasīt", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Pārsūtīt uz", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, one{{count} ziņojums pārsūtīts} other{{count} ziņojumi pārsūtīti}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Ziņojuma informācija", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Nosūtīts", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Tiek sūtīts", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Piegādāts", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Saņemts", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "No", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "Atlasīti: {count}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, one{{count} ziņojums nokopēts} other{{count} ziņojumi nokopēti}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Informācija", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Šodien", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Vakar", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Kaut kas nogāja greizi", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Atrašanās vieta", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emocijzīmes", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Sūtīt", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Pievienot", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Atcelt atbildi", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Noņemt", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Neizdevās pievienot", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Melnraksts:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA ziņojumu ID", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Paslēpj ID, ko TRIfA pievieno ziņojumiem, un atkārtoti sūtītu ziņojumu rāda tikai vienreiz", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Neatgriezeniski dzēst arī jūsu ziņojumus un failus ar šo kontaktpersonu", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Neizdevās dzēst profilu \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Apvienot ar citu sarunu", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Rādīt sarunas atsevišķi", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Apvienot sarunas", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Apvienot ar", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bots sarunā {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "Retranslēti {relayed} no {count} ziņojumiem", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Nav citu grupas sarunu", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Apvienot", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Dati eksportēti", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Neizdevās eksportēt datus", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Ieslēdziet atrašanās vietu, lai kopīgotu, kur atrodaties", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox nepieciešama atļauja izmantot jūsu atrašanās vietu", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Neizdevās noteikt jūsu atrašanās vietu", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Iestatījumi", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Šis ir jūsu paša Tox-ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Neizdevās pievienot kontaktpersonu", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Jūs vairs nevarat sūtīt ziņojumus šajā sarunā", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Drauga pieprasījums", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Uzaicinājums uz sarunu", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} uzaicināja jūs uz {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} uzaicināja jūs uz konferenci", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Pievienoties", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Noraidīt", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Pievienojas…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Nepieciešama grupas parole. Palūdziet jaunu uzaicinājumu.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Neizdevās pievienoties. Palūdziet jaunu uzaicinājumu.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Neizdevās pievienoties", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Atstājiet tukšu, ja grupai tādas nav", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Mēģināt vēlreiz", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Jaunākie ziņojumi", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Vēl nav sarunu", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Pievienojiet kontaktpersonu ar pogu +, lai sāktu sarunu", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index d3cb5f3..03dbf59 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -29,7 +29,7 @@ "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "Oi, sou o {nick}, venha conversar comigo no bTox!", + "defaultAddContactMessage": "Olá, sou {nick}, venha conversar comigo no bTox!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -39,7 +39,7 @@ } } }, - "addContactMessageLengthError": "Máximo {max} caracteres ({length} é muito longo)", + "addContactMessageLengthError": "Máximo de {max} caracteres ({length} é demasiado longo)", "@addContactMessageLengthError": { "description": "The error message when the friend request message is too long", "placeholders": { @@ -57,7 +57,7 @@ "@add": { "description": "The text for the button to add a contact" }, - "toxIdLengthError": "Deve ser {length} caracteres hexadecimais", + "toxIdLengthError": "Deve ter {length} caracteres hexadecimais", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -75,11 +75,11 @@ "@menuProfile": { "description": "The text for the profile menu item" }, - "menuSettings": "Configurações", + "menuSettings": "Definições", "@menuSettings": { "description": "The text for the settings menu item" }, - "nickLengthError": "O apelido deve estar entre 1 e {max} caracteres", + "nickLengthError": "A alcunha deve ter entre 1 e {max} caracteres", "@nickLengthError": { "description": "The error message when the nickname is too short or too long", "placeholders": { @@ -89,7 +89,7 @@ } } }, - "statusMessageLengthError": "Mensagem de estado não pode exceder {max} caracteres", + "statusMessageLengthError": "A mensagem de estado não pode exceder {max} caracteres", "@statusMessageLengthError": { "description": "The error message when the status message is longer than the supported maximum", "placeholders": { @@ -99,7 +99,7 @@ } } }, - "profileTextFieldNick": "Apelido", + "profileTextFieldNick": "Alcunha", "@profileTextFieldNick": { "description": "The text for the nickname field" }, @@ -107,7 +107,7 @@ "@profileTextFieldUserStatusMessage": { "description": "The text for the status message field" }, - "applyChanges": "Aplicar mudanças", + "applyChanges": "Aplicar alterações", "@applyChanges": { "description": "The text for the button to apply changes" }, @@ -123,7 +123,7 @@ "@create": { "description": "The text for the button create a new profile" }, - "logout": "Desconectar", + "logout": "Terminar sessão", "@logout": { "description": "The text for the logout menu item" }, @@ -131,7 +131,7 @@ "@deleteProfile": { "description": "The text for the delete profile menu item" }, - "deleteProfileMessage": "Tem certeza que deseja apagar o seu perfil \"{name}\"? Esta ação não pode ser desfeita. Isto irá apagar todos os seus contactos e mensagens. Certifique-se de ter um backup.", + "deleteProfileMessage": "Tem a certeza de que pretende apagar o seu perfil \"{name}\"? Esta ação não pode ser anulada. Todos os seus contactos e mensagens serão apagados. Certifique-se de que tem uma cópia de segurança.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -158,5 +158,911 @@ "example": "Alice" } } + }, + "copyToxId": "Copiar ID Tox", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "ID Tox copiado", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "ID Tox inválido, verifique se há erros de escrita", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "A conta {name} deixa de receber mensagens até voltar a iniciar sessão nela.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Aceitar pedido de amizade", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Recusar pedido de amizade", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "Online", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Offline", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Apagar contacto", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Apagar \"{name}\" dos seus contactos?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Contacto \"{name}\" apagado", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importar", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Palavra-passe", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Palavra-passe incorreta", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Perfil \"{name}\" importado", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Este perfil já está no bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Exportar dados", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Todas as contas e mensagens, cifradas com uma palavra-passe", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importar dados", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Uma exportação do bTox ou um perfil Tox de outro cliente", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exportar", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{A cópia de segurança não tem contas novas} =1{1 conta restaurada} other{{count} contas restauradas}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Não é um perfil Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Continuar online ao fechar", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Mantém online todas as contas com sessão iniciada", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Contas", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Aplicação", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Conta: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Aceitar ficheiros automaticamente até", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Nunca", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Aceitar", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Recusar", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Transferir", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Cancelado", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Em pausa até o contacto voltar a estar online", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Usar UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Se desativado, só liga através de relays TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Usar IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Descoberta local", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Encontrar amigos diretamente na mesma rede", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Desativado ao usar um proxy, que só transporta TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Nenhum", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Servidor", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Porta", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Introduza um servidor", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Introduza uma porta de 1 a 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Guardar", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Câmara", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galeria", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Ficheiro", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Localização", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Associar uma conta", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Ligação de emparelhamento", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Cole a ligação de emparelhamento do dispositivo onde a conta é executada.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Isto não é uma ligação de emparelhamento", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Associar", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Conta associada", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (associada)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Não foi possível enviar a mensagem", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Não foi possível guardar", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Não foi possível importar este ficheiro", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Não foi possível associar a conta", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Conversas", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Chamadas", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Chamada de voz", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videochamada", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Videochamada efetuada", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Videochamada recebida", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Videochamada perdida", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Câmara", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Trocar de câmara", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "O bTox não tem permissão para usar a câmara, por isso a chamada continua sem ela", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Chamada de voz efetuada", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Chamada de voz recebida", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Chamada de voz perdida", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Chamadas recebidas", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Chamadas perdidas", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Chamada em curso", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "A chamar…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "A conectar…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Atender", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Recusar", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Desligar", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Silenciar", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Altifalante", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Telefone", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Auscultadores", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Ocultar a chamada", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Voltar à chamada", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "As chamadas precisam do microfone", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "As chamadas não podem tocar no ecrã de bloqueio", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Permitir", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Nomes de um bot de retransmissão", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Deixar de mostrar os nomes do bot de retransmissão", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Mostrar nomes", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Sem chamadas recentes", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "As chamadas passam pelo dispositivo ao qual esta conta está associada, que agora não as pode receber", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Ainda não disponível", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Nenhuma aplicação consegue abrir esta ligação", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Responder", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Reencaminhar", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Detalhes da conversa", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 membro} other{{count} membros}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Você", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Silenciar notificações", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Reativar notificações", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Durante 1 hora", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Durante 8 horas", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Durante 1 semana", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Sempre", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Continuar a notificar menções", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Silenciada até {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Silenciada", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Enviar imagens como QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sem perdas, mas maiores, e nem todas as aplicações mostram QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Vistos através de {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Mostrar mais 1} other{Mostrar mais {count}}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fundador", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderador", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Observador", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Ausente", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Ocupado", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Quem está aqui aparece quando o dispositivo principal da conta está online", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Chave pública", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Chave pública copiada", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copiar", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Selecionar", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Reencaminhar para", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Mensagem reencaminhada} other{{count} mensagens reencaminhadas}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Detalhes da mensagem", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Enviada", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "A enviar", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Entregue", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Recebida", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "De", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, =1{1 selecionada} other{{count} selecionadas}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Mensagem copiada} other{{count} mensagens copiadas}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Informação", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Hoje", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Ontem", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Algo correu mal", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Localização", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Enviar", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Anexar", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Cancelar resposta", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Remover", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Não foi possível anexar", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Rascunho:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "IDs de mensagem do TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Oculta o ID que o TRIfA adiciona às mensagens e mostra só uma vez uma mensagem que ele reenvia", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Apagar também as mensagens e ficheiros com este contacto, para sempre", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Não foi possível apagar o perfil \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Juntar com outra conversa", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Mostrar as conversas em separado", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Juntar conversas", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Juntar com", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot em {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} de {count} mensagens retransmitidas", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Não há outras conversas de grupo", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Juntar", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Dados exportados", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Não foi possível exportar os dados", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Ative a localização para partilhar onde está", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "O bTox precisa de permissão para usar a sua localização", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Não foi possível determinar onde está", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Definições", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Este é o seu próprio ID Tox", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Não foi possível adicionar o contacto", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Já não pode enviar mensagens para esta conversa", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Pedido de amizade", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Convite para uma conversa", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} enviou-lhe um convite para {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} enviou-lhe um convite para uma conferência", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Entrar", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Recusar", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "A entrar…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Requer a palavra-passe do grupo. Peça um novo convite.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Não foi possível entrar. Peça um novo convite.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Não foi possível entrar", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Deixe em branco se o grupo não tiver palavra-passe", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Tentar novamente", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Mensagens mais recentes", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Ainda sem conversas", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Adicione um contacto com o botão + para começar a conversar", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_pt_BR.arb b/lib/l10n/app_pt_BR.arb index 494a525..1b2f2a4 100644 --- a/lib/l10n/app_pt_BR.arb +++ b/lib/l10n/app_pt_BR.arb @@ -29,7 +29,7 @@ "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "Oi, eu sou o {nick}, venha conversar comigo no bTox!", + "defaultAddContactMessage": "Oi, eu sou {nick}, venha conversar comigo no bTox!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -57,7 +57,7 @@ "@add": { "description": "The text for the button to add a contact" }, - "toxIdLengthError": "Deve ser {length} caracteres hexadecimais", + "toxIdLengthError": "Deve ter {length} caracteres hexadecimais", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -79,7 +79,7 @@ "@menuSettings": { "description": "The text for the settings menu item" }, - "nickLengthError": "O apelido deve estar entre 1 e {max} caracteres", + "nickLengthError": "O apelido deve ter entre 1 e {max} caracteres", "@nickLengthError": { "description": "The error message when the nickname is too short or too long", "placeholders": { @@ -89,7 +89,7 @@ } } }, - "statusMessageLengthError": "Mensagem de estado não pode exceder {max} caracteres", + "statusMessageLengthError": "A mensagem de status não pode exceder {max} caracteres", "@statusMessageLengthError": { "description": "The error message when the status message is longer than the supported maximum", "placeholders": { @@ -103,7 +103,7 @@ "@profileTextFieldNick": { "description": "The text for the nickname field" }, - "profileTextFieldUserStatusMessage": "Mensagem de estado", + "profileTextFieldUserStatusMessage": "Mensagem de status", "@profileTextFieldUserStatusMessage": { "description": "The text for the status message field" }, @@ -131,7 +131,7 @@ "@deleteProfile": { "description": "The text for the delete profile menu item" }, - "deleteProfileMessage": "Tem certeza de que deseja excluir o seu perfil \"{name}\"? Esta ação não pode ser desfeita. Isto irá excluir todos os seus contatos e mensagens. Certifique-se de ter um backup.", + "deleteProfileMessage": "Tem certeza de que deseja apagar o seu perfil \"{name}\"? Esta ação não pode ser desfeita. Isto irá apagar todos os seus contatos e mensagens. Certifique-se de ter um backup.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -149,7 +149,7 @@ "@delete": { "description": "The text for the delete button" }, - "profileDeleted": "Perfil \"{name}\" excluído", + "profileDeleted": "Perfil \"{name}\" apagado", "@profileDeleted": { "description": "The text when a profile has been deleted", "placeholders": { @@ -158,5 +158,911 @@ "example": "Alice" } } + }, + "copyToxId": "Copiar ID Tox", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "ID Tox copiado", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "ID Tox inválido, verifique se há erros de digitação", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "A conta {name} para de receber mensagens até você se conectar a ela de novo.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Aceitar pedido de amizade", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Recusar pedido de amizade", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "Online", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Offline", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Apagar contato", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Apagar \"{name}\" dos seus contatos?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Contato \"{name}\" apagado", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Importar", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Senha", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Senha incorreta", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Perfil \"{name}\" importado", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Este perfil já está no bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Exportar dados", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Todas as contas e mensagens, criptografadas com uma senha", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Importar dados", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Uma exportação do bTox ou um perfil Tox de outro cliente", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Exportar", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{O backup não tem contas novas} =1{1 conta restaurada} other{{count} contas restauradas}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Não é um perfil Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Continuar online ao fechar", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Mantém online todas as contas conectadas", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Contas", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Aplicativo", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Conta: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Aceitar arquivos automaticamente até", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Nunca", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Aceitar", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Recusar", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Baixar", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Cancelado", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Pausado até o contato ficar online de novo", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Usar UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Se desativado, conecta apenas por relays TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Usar IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Descoberta local", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Encontrar amigos diretamente na mesma rede", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Desativado ao usar um proxy, que só funciona com TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Nenhum", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Host", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Porta", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Insira um host", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Insira uma porta de 1 a 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Salvar", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Câmera", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Galeria", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Arquivo", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Localização", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Vincular uma conta", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Link de pareamento", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Cole o link de pareamento do dispositivo onde a conta é executada.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Isto não é um link de pareamento", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Vincular", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Conta vinculada", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (vinculada)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Não foi possível enviar a mensagem", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Não foi possível salvar", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Não foi possível importar este arquivo", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Não foi possível vincular a conta", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Conversas", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Chamadas", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Chamada de voz", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videochamada", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Videochamada realizada", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Videochamada recebida", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Videochamada perdida", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Câmera", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Trocar de câmera", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "O bTox não tem permissão para usar a câmera, então a chamada continua sem ela", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Chamada de voz realizada", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Chamada de voz recebida", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Chamada de voz perdida", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Chamadas recebidas", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Chamadas perdidas", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Chamada em andamento", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Chamando…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Conectando…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Atender", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Recusar", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Desligar", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Silenciar", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Alto-falante", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Telefone", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Fones de ouvido", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Ocultar a chamada", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Voltar à chamada", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "As chamadas precisam do microfone", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "As chamadas não podem tocar na tela de bloqueio", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Permitir", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Nomes de um bot de retransmissão", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Parar de mostrar os nomes do bot de retransmissão", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Mostrar nomes", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Nenhuma chamada recente", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "As chamadas passam pelo dispositivo ao qual esta conta está vinculada, que não pode recebê-las agora", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Ainda não disponível", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Nenhum app consegue abrir este link", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Responder", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Encaminhar", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Detalhes da conversa", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 membro} other{{count} membros}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Você", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Silenciar notificações", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Reativar notificações", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Por 1 hora", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Por 8 horas", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Por 1 semana", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Sempre", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Continuar notificando menções", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Silenciada até {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Silenciada", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Enviar imagens como QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sem perdas, mas maiores, e nem todos os apps mostram QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Vistos através de {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Mostrar mais 1} other{Mostrar mais {count}}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fundador", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderador", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Observador", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Ausente", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Ocupado", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Quem está aqui aparece enquanto o dispositivo principal da conta está online", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Chave pública", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Chave pública copiada", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copiar", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Selecionar", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Encaminhar para", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Mensagem encaminhada} other{{count} mensagens encaminhadas}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Detalhes da mensagem", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Enviada", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Enviando", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Entregue", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Recebida", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "De", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, =1{1 selecionada} other{{count} selecionadas}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Mensagem copiada} other{{count} mensagens copiadas}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Informações", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Hoje", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Ontem", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Algo deu errado", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Localização", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Enviar", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Anexar", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Cancelar resposta", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Remover", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Não foi possível anexar", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Rascunho:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "IDs de mensagem do TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Oculta o ID que o TRIfA adiciona às mensagens e mostra só uma vez uma mensagem que ele reenvia", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Apagar também as mensagens e arquivos com este contato, para sempre", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Não foi possível apagar o perfil \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Mesclar com outra conversa", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Mostrar as conversas separadas", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Mesclar conversas", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Mesclar com", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot em {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} de {count} mensagens retransmitidas", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Nenhuma outra conversa em grupo", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Mesclar", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Dados exportados", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Não foi possível exportar os dados", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Ative a localização para compartilhar onde você está", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "O bTox precisa de permissão para usar sua localização", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Não foi possível determinar onde você está", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Configurações", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Este é o seu próprio ID Tox", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Não foi possível adicionar o contato", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Você não pode mais enviar mensagens para esta conversa", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Pedido de amizade", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Convite para uma conversa", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} convidou você para {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} convidou você para uma conferência", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Entrar", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Recusar", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Entrando…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Requer a senha do grupo. Peça um novo convite.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Não foi possível entrar. Peça um novo convite.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Não foi possível entrar", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Deixe em branco se o grupo não tiver senha", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Tentar novamente", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Mensagens mais recentes", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Nenhuma conversa ainda", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Adicione um contato com o botão + para começar a conversar", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_ru.arb b/lib/l10n/app_ru.arb new file mode 100644 index 0000000..ecbef34 --- /dev/null +++ b/lib/l10n/app_ru.arb @@ -0,0 +1,1069 @@ +{ + "@@locale": "ru", + "defaultContactName": "Неизвестный", + "@defaultContactName": { + "description": "The default name for a contact when the name is not yet known" + }, + "addContact": "Добавить контакт", + "@addContact": { + "description": "The text for the button to add a contact" + }, + "message": "Сообщение", + "@message": { + "description": "The text for the message field" + }, + "messageInput": "Сообщение Tox", + "@messageInput": { + "description": "The placeholder text for the message input field" + }, + "re": "Re: {message}", + "@re": { + "description": "The prefix for a reply message", + "placeholders": { + "message": { + "type": "String", + "example": "Hello" + } + } + }, + "toxId": "Tox ID", + "@toxId": { + "description": "The text for the Tox ID field" + }, + "copyToxId": "Копировать Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox ID скопирован", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "defaultAddContactMessage": "Привет, я {nick}, давай общаться в bTox!", + "@defaultAddContactMessage": { + "description": "The default message to send when adding a contact", + "placeholders": { + "nick": { + "type": "String", + "example": "Alice" + } + } + }, + "addContactMessageLengthError": "Максимум {max} символов ({length} — слишком много)", + "@addContactMessageLengthError": { + "description": "The error message when the friend request message is too long", + "placeholders": { + "max": { + "type": "int", + "example": "256" + }, + "length": { + "type": "int", + "example": "300" + } + } + }, + "add": "Добавить", + "@add": { + "description": "The text for the button to add a contact" + }, + "toxIdLengthError": "Должен содержать {length} шестнадцатеричных символов", + "@toxIdLengthError": { + "description": "The error message when the Tox ID is not the right length or format", + "placeholders": { + "length": { + "type": "int", + "example": "76" + } + } + }, + "toxIdChecksumError": "Недействительный Tox ID, проверьте, нет ли опечаток", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "messageEmptyError": "Сообщение не может быть пустым", + "@messageEmptyError": { + "description": "The error message when the message is empty" + }, + "menuProfile": "Профиль", + "@menuProfile": { + "description": "The text for the profile menu item" + }, + "menuSettings": "Настройки", + "@menuSettings": { + "description": "The text for the settings menu item" + }, + "nickLengthError": "Псевдоним должен содержать от 1 до {max} символов", + "@nickLengthError": { + "description": "The error message when the nickname is too short or too long", + "placeholders": { + "max": { + "type": "int", + "example": "32" + } + } + }, + "statusMessageLengthError": "Текст статуса не может быть длиннее {max} символов", + "@statusMessageLengthError": { + "description": "The error message when the status message is longer than the supported maximum", + "placeholders": { + "max": { + "type": "int", + "example": "128" + } + } + }, + "profileTextFieldNick": "Псевдоним", + "@profileTextFieldNick": { + "description": "The text for the nickname field" + }, + "profileTextFieldUserStatusMessage": "Текст статуса", + "@profileTextFieldUserStatusMessage": { + "description": "The text for the status message field" + }, + "applyChanges": "Применить изменения", + "@applyChanges": { + "description": "The text for the button to apply changes" + }, + "applied": "Применено", + "@applied": { + "description": "The text when changes have been applied" + }, + "newProfile": "Новый профиль", + "@newProfile": { + "description": "The title text for the create profile dialog" + }, + "create": "Создать", + "@create": { + "description": "The text for the button create a new profile" + }, + "logout": "Выйти", + "@logout": { + "description": "The text for the logout menu item" + }, + "logoutMessage": "{name} не будет получать сообщения, пока вы снова не войдёте в этот аккаунт.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteProfile": "Удалить профиль", + "@deleteProfile": { + "description": "The text for the delete profile menu item" + }, + "deleteProfileMessage": "Вы уверены, что хотите удалить профиль \"{name}\"? Это действие нельзя отменить. Будут удалены все ваши контакты и сообщения. Убедитесь, что у вас есть резервная копия.", + "@deleteProfileMessage": { + "description": "The message to confirm the deletion of a profile", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "cancel": "Отмена", + "@cancel": { + "description": "The text for the cancel button" + }, + "delete": "Удалить", + "@delete": { + "description": "The text for the delete button" + }, + "acceptFriendRequest": "Принять запрос в друзья", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Отклонить запрос в друзья", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "В сети", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Не в сети", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Удалить контакт", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Удалить \"{name}\" из контактов?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Контакт \"{name}\" удалён", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Импортировать", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Пароль", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Неверный пароль", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Профиль \"{name}\" импортирован", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Этот профиль уже есть в bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Экспорт данных", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Все аккаунты и сообщения, зашифрованные паролем", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Импорт данных", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Экспорт bTox или профиль Tox из другого клиента", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Экспортировать", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{В резервной копии нет новых аккаунтов} one{Восстановлен {count} аккаунт} few{Восстановлено {count} аккаунта} many{Восстановлено {count} аккаунтов} other{Восстановлено {count} аккаунта}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Это не профиль Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Оставаться в сети после закрытия", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Все аккаунты, в которые выполнен вход, остаются в сети", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Аккаунты", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Приложение", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Аккаунт: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Автоматически принимать файлы до", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Никогда", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Принять", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Отклонить", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Скачать", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Отменено", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Приостановлено, пока собеседник не в сети", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Использовать UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Если выключено, подключаться только через TCP-ретрансляторы", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Использовать IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Обнаружение в локальной сети", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Находить друзей в той же сети напрямую", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Выключено при использовании прокси, который передаёт только TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Прокси", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Нет", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Хост", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Порт", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Введите хост", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Введите порт от 1 до 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Сохранить", + "@save": { + "description": "The text for the save button" + }, + "profileDeleted": "Профиль \"{name}\" удалён", + "@profileDeleted": { + "description": "The text when a profile has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "attachCamera": "Камера", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Галерея", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Файл", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Геопозиция", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Привязать аккаунт", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Ссылка для привязки", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Вставьте ссылку для привязки с устройства, на котором работает аккаунт.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Это не ссылка для привязки", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Привязать", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Привязанный аккаунт", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (привязанный)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Не удалось отправить сообщение", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Не удалось сохранить", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Не удалось импортировать этот файл", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Не удалось привязать аккаунт", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Чаты", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Звонки", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Голосовой звонок", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Видеозвонок", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Исходящий видеозвонок", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Входящий видеозвонок", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Пропущенный видеозвонок", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Камера", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Сменить камеру", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "У bTox нет доступа к камере, поэтому звонок продолжится без неё", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Исходящий голосовой звонок", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Входящий голосовой звонок", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Пропущенный голосовой звонок", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Входящие звонки", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Пропущенные звонки", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Идёт звонок", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Вызов…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Подключение…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Ответить", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Отклонить", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Завершить", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Выкл. звук", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Динамик", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Телефон", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Наушники", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Свернуть звонок", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Вернуться к звонку", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Для звонков нужен доступ к микрофону", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Звонки не могут появляться на экране блокировки", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Разрешить", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Имена от бота-ретранслятора", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Не показывать имена от бота-ретранслятора", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Показывать имена", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Нет недавних звонков", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Звонки идут через устройство, к которому привязан этот аккаунт, а оно сейчас не может их принять", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Пока недоступно", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Нет приложения, которое может открыть эту ссылку", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Ответить", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Переслать", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Сведения о чате", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, one{{count} участник} few{{count} участника} many{{count} участников} other{{count} участника}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Вы", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Отключить уведомления", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Включить уведомления", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "На 1 час", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "На 8 часов", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "На 1 неделю", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Всегда", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Всё равно уведомлять об упоминаниях", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Без звука до {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Без звука", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Отправлять изображения в QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Без потерь, но файлы больше, и не все приложения показывают QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Замечены через {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "Показать ещё {count}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Основатель", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Модератор", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Наблюдатель", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Нет на месте", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Не беспокоить", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Участники видны, пока домашнее устройство аккаунта в сети", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Открытый ключ", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Открытый ключ скопирован", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Копировать", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Выбрать", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Переслать в", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, one{{count} сообщение переслано} few{{count} сообщения пересланы} many{{count} сообщений переслано} other{{count} сообщения переслано}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Сведения о сообщении", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Отправлено", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Отправляется", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Доставлено", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Получено", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "От", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "Выбрано: {count}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, one{{count} сообщение скопировано} few{{count} сообщения скопированы} many{{count} сообщений скопировано} other{{count} сообщения скопировано}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Сведения", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Сегодня", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Вчера", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Что-то пошло не так", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Геопозиция", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Эмодзи", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Отправить", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Прикрепить", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Отменить ответ", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Убрать", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Не удалось прикрепить", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Черновик:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID сообщений TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Скрывает ID, который TRIfA добавляет к сообщениям, и показывает повторно отправленное им сообщение только один раз", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Также навсегда удалить переписку и файлы с этим контактом", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Не удалось удалить профиль \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Объединить с другим чатом", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Показывать чаты отдельно", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Объединение чатов", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Объединить с", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Бот в {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count, plural, one{Ретранслировано {relayed} из {count} сообщения} few{Ретранслировано {relayed} из {count} сообщений} many{Ретранслировано {relayed} из {count} сообщений} other{Ретранслировано {relayed} из {count} сообщения}}", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Нет других групповых чатов", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Объединить", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Данные экспортированы", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Не удалось экспортировать данные", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Включите геолокацию, чтобы поделиться местоположением", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox нужно разрешение на доступ к геопозиции", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Не удалось определить ваше местоположение", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Настройки", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Это ваш собственный Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Не удалось добавить контакт", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Вы больше не можете отправлять сообщения в этот чат", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Запрос в друзья", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Приглашение в чат", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "Приглашение от {friend} в {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "Приглашение от {friend} в конференцию", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Присоединиться", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Отклонить", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Присоединение…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Нужен пароль группы. Попросите новое приглашение.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Не удалось присоединиться. Попросите новое приглашение.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Не удалось присоединиться", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Оставьте пустым, если у группы нет пароля", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Повторить", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "К последним сообщениям", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Пока нет чатов", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Добавьте контакт кнопкой +, чтобы начать общение", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" + } +} diff --git a/lib/l10n/app_ta.arb b/lib/l10n/app_ta.arb index 8c32727..2ed8ac2 100644 --- a/lib/l10n/app_ta.arb +++ b/lib/l10n/app_ta.arb @@ -11,15 +11,15 @@ "@message": { "description": "The text for the message field" }, - "messageInput": "டாக்சு செய்தி", + "messageInput": "Tox செய்தி", "@messageInput": { "description": "The placeholder text for the message input field" }, - "toxId": "நச்சு ஐடி", + "toxId": "Tox ஐடி", "@toxId": { "description": "The text for the Tox ID field" }, - "defaultAddContactMessage": "ஏய், நான் {nick}, BTOX இல் என்னுடன் அரட்டையடிக்க வாருங்கள்!", + "defaultAddContactMessage": "வணக்கம், நான் {nick}, bTox-இல் என்னுடன் அரட்டையடிக்க வாருங்கள்!", "@defaultAddContactMessage": { "description": "The default message to send when adding a contact", "placeholders": { @@ -43,7 +43,7 @@ } } }, - "add": "கூட்டு", + "add": "சேர்", "@add": { "description": "The text for the button to add a contact" }, @@ -99,7 +99,7 @@ "@create": { "description": "The text for the button create a new profile" }, - "logout": "வெளியேற்றம்", + "logout": "வெளியேறு", "@logout": { "description": "The text for the logout menu item" }, @@ -135,7 +135,7 @@ } } }, - "statusMessageLengthError": "நிலை செய்தி {max} எழுத்துக்களை விட அதிகமாக இருக்காது", + "statusMessageLengthError": "நிலை செய்தி {max} எழுத்துக்களை விட அதிகமாக இருக்கக்கூடாது", "@statusMessageLengthError": { "description": "The error message when the status message is longer than the supported maximum", "placeholders": { @@ -158,5 +158,911 @@ "example": "Hello" } } + }, + "copyToxId": "Tox ஐடியை நகலெடு", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox ஐடி நகலெடுக்கப்பட்டது", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "சரியான Tox ஐடி அல்ல, எழுத்துப் பிழைகள் உள்ளனவா எனச் சரிபார்க்கவும்", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "மீண்டும் உள்நுழையும் வரை {name} செய்திகளைப் பெறாது.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "நண்பர் கோரிக்கையை ஏற்கவும்", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "நண்பர் கோரிக்கையை நிராகரிக்கவும்", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "ஆன்லைன்", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "ஆஃப்லைன்", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "தொடர்பை நீக்கு", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "\"{name}\" என்பவரை உங்கள் தொடர்புகளிலிருந்து நீக்கவா?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "தொடர்பு \"{name}\" நீக்கப்பட்டது", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "இறக்குமதி செய்", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "கடவுச்சொல்", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "தவறான கடவுச்சொல்", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "சுயவிவரம் \"{name}\" இறக்குமதி செய்யப்பட்டது", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "இந்தச் சுயவிவரம் ஏற்கெனவே bTox-இல் உள்ளது", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "தரவை ஏற்றுமதி செய்", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "எல்லாக் கணக்குகளும் செய்திகளும், கடவுச்சொல்லால் மறையாக்கப்பட்டவை", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "தரவை இறக்குமதி செய்", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "bTox ஏற்றுமதி, அல்லது வேறொரு கிளையண்டின் Tox சுயவிவரம்", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "ஏற்றுமதி செய்", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{காப்புப்பிரதியில் புதிய கணக்குகள் இல்லை} =1{1 கணக்கு மீட்டெடுக்கப்பட்டது} other{{count} கணக்குகள் மீட்டெடுக்கப்பட்டன}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "இது Tox சுயவிவரம் அல்ல", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "மூடிய பிறகும் ஆன்லைனில் இரு", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "உள்நுழைந்துள்ள எல்லாக் கணக்குகளையும் ஆன்லைனில் வைத்திருக்கும்", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "கணக்குகள்", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "செயலி", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "கணக்கு: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "இந்த அளவு வரையிலான கோப்புகளைத் தானாக ஏற்கவும்", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "ஒருபோதும் இல்லை", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "ஏற்கவும்", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "மறு", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "பதிவிறக்கு", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "ரத்துசெய்யப்பட்டது", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "அவர் மீண்டும் ஆன்லைனுக்கு வரும் வரை இடைநிறுத்தப்பட்டது", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "UDP-ஐப் பயன்படுத்து", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "முடக்கினால், TCP ரிலேக்கள் வழியாக மட்டுமே இணையும்", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "IPv6-ஐப் பயன்படுத்து", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "உள்ளூர் கண்டறிதல்", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "அதே நெட்வொர்க்கில் உள்ள நண்பர்களை நேரடியாகக் கண்டறியும்", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "ப்ராக்ஸி பயன்படுத்தும்போது முடக்கப்படும், அது TCP-ஐ மட்டுமே கொண்டுசெல்லும்", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "ப்ராக்ஸி", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "எதுவுமில்லை", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "ஹோஸ்ட்", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "போர்ட்", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "ஒரு ஹோஸ்டை உள்ளிடவும்", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "1 முதல் 65535 வரையிலான போர்ட்டை உள்ளிடவும்", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "சேமி", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "கேமரா", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "கேலரி", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "கோப்பு", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "இருப்பிடம்", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "கணக்கை இணை", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "ஜோடியாக்கும் இணைப்பு", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "கணக்கை இயக்கும் சாதனத்திலிருந்து ஜோடியாக்கும் இணைப்பை ஒட்டவும்.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "இது ஜோடியாக்கும் இணைப்பு அல்ல", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "இணை", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "இணைக்கப்பட்ட கணக்கு", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (இணைக்கப்பட்டது)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "செய்தியை அனுப்ப முடியவில்லை", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "அதைச் சேமிக்க முடியவில்லை", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "இந்தக் கோப்பை இறக்குமதி செய்ய முடியவில்லை", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "கணக்கை இணைக்க முடியவில்லை", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "அரட்டைகள்", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "அழைப்புகள்", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "குரல் அழைப்பு", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "வீடியோ அழைப்பு", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "வெளிச்செல்லும் வீடியோ அழைப்பு", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "உள்வரும் வீடியோ அழைப்பு", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "தவறிய வீடியோ அழைப்பு", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "கேமரா", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "கேமராவை மாற்று", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox கேமராவைப் பயன்படுத்த அனுமதி இல்லை, எனவே அழைப்பு கேமரா இல்லாமல் தொடரும்", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "வெளிச்செல்லும் குரல் அழைப்பு", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "உள்வரும் குரல் அழைப்பு", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "தவறிய குரல் அழைப்பு", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "உள்வரும் அழைப்புகள்", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "தவறிய அழைப்புகள்", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "அழைப்பு நடைபெறுகிறது", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "அழைக்கிறது…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "இணைக்கிறது…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "பதிலளி", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "மறு", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "துண்டி", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "ஒலியடக்கு", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "ஸ்பீக்கர்", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "ஃபோன்", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "ஹெட்ஃபோன்கள்", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "அழைப்பை மறை", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "அழைப்புக்குத் திரும்பு", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "அழைப்புகளுக்கு மைக்ரோஃபோன் தேவை", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "பூட்டுத் திரையின் மேல் அழைப்புகள் ஒலிக்க முடியாது", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "அனுமதி", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "ரிலே பாட் வழியான பெயர்கள்", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "ரிலே பாட் வழியான பெயர்களைக் காட்டுவதை நிறுத்து", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "பெயர்களைக் காட்டு", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "சமீபத்திய அழைப்புகள் இல்லை", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "அழைப்புகள் இந்தக் கணக்கு இணைக்கப்பட்டுள்ள சாதனம் வழியாகச் செல்கின்றன, அது இப்போது அவற்றை ஏற்க முடியாது", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "இன்னும் கிடைக்கவில்லை", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "இந்த இணைப்பைத் திறக்க எந்தச் செயலியும் இல்லை", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "பதிலளி", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "முன்னனுப்பு", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "அரட்டை விவரங்கள்", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 உறுப்பினர்} other{{count} உறுப்பினர்கள்}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "நீங்கள்", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "அறிவிப்புகளை ஒலியடக்கு", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "அறிவிப்புகளின் ஒலியடக்கத்தை நீக்கு", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "1 மணிநேரத்திற்கு", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "8 மணிநேரத்திற்கு", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "1 வாரத்திற்கு", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "எப்போதும்", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "குறிப்பிடப்பட்டால் இன்னும் அறிவி", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "{time} வரை ஒலியடக்கப்பட்டது", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "ஒலியடக்கப்பட்டது", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "படங்களை QOI ஆக அனுப்பு", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "தரம் குறையாது, ஆனால் பெரியது, எல்லாச் செயலிகளும் QOI-ஐக் காட்டாது", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "{bot} வழியாகக் காணப்பட்டவர்கள்", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{மேலும் 1 காட்டு} other{மேலும் {count} காட்டு}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "நிறுவனர்", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "மட்டுறுத்துநர்", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "பார்வையாளர்", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "வெளியே", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "பிஸி", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "கணக்கின் முதன்மைச் சாதனம் ஆன்லைனில் இருக்கும்போது இங்கு உள்ளவர்கள் தெரிவார்கள்", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "பொது விசை", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "பொது விசை நகலெடுக்கப்பட்டது", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "நகலெடு", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "தேர்ந்தெடு", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "இதற்கு முன்னனுப்பு", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{செய்தி முன்னனுப்பப்பட்டது} other{{count} செய்திகள் முன்னனுப்பப்பட்டன}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "செய்தி விவரங்கள்", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "அனுப்பப்பட்டது", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "அனுப்புகிறது", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "சென்றடைந்தது", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "பெறப்பட்டது", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "அனுப்பியவர்", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count} தேர்ந்தெடுக்கப்பட்டன", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{செய்தி நகலெடுக்கப்பட்டது} other{{count} செய்திகள் நகலெடுக்கப்பட்டன}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "தகவல்", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "இன்று", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "நேற்று", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "ஏதோ தவறு நடந்துவிட்டது", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "இருப்பிடம்", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "எமோஜி", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "அனுப்பு", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "இணைப்பு சேர்", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "பதிலை ரத்துசெய்", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "அகற்று", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "அதை இணைக்க முடியவில்லை", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "வரைவு:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA செய்தி ஐடிகள்", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "TRIfA செய்திகளில் சேர்க்கும் ஐடியை மறைக்கும், அது மீண்டும் அனுப்பும் செய்தியை ஒருமுறை மட்டுமே காட்டும்", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "அவருடனான உங்கள் செய்திகளையும் கோப்புகளையும் நிரந்தரமாக நீக்கு", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "சுயவிவரம் \"{name}\"-ஐ நீக்க முடியவில்லை", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "வேறொரு அரட்டையுடன் இணை", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "அரட்டைகளைத் தனித்தனியாகக் காட்டு", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "அரட்டைகளை இணை", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "இதனுடன் இணை", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "{chat}-இல் உள்ள பாட்", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count} செய்திகளில் {relayed} ரிலே செய்யப்பட்டன", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "வேறு குழு அரட்டைகள் இல்லை", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "இணை", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "தரவு ஏற்றுமதி செய்யப்பட்டது", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "தரவை ஏற்றுமதி செய்ய முடியவில்லை", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "நீங்கள் இருக்கும் இடத்தைப் பகிர இருப்பிடத்தை இயக்கவும்", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "உங்கள் இருப்பிடத்தைப் பயன்படுத்த bTox-க்கு அனுமதி தேவை", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "நீங்கள் இருக்கும் இடத்தைக் கண்டறிய முடியவில்லை", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "அமைப்புகள்", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "இது உங்கள் சொந்த Tox ஐடி", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "தொடர்பைச் சேர்க்க முடியவில்லை", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "இந்த அரட்டைக்கு இனி செய்திகளை அனுப்ப முடியாது", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "நண்பர் கோரிக்கை", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "அரட்டைக்கான அழைப்பு", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} உங்களை {chat}-க்கு அழைத்துள்ளார்", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} உங்களை ஒரு மாநாட்டுக்கு அழைத்துள்ளார்", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "சேர்", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "மறு", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "சேர்கிறது…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "குழுவின் கடவுச்சொல் தேவை. புதிய அழைப்பைக் கேளுங்கள்.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "சேர முடியவில்லை. புதிய அழைப்பைக் கேளுங்கள்.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "சேர முடியவில்லை", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "குழுவுக்குக் கடவுச்சொல் இல்லையெனில் காலியாக விடவும்", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "மீண்டும் முயல்க", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "புதிய செய்திகள்", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "இன்னும் அரட்டைகள் இல்லை", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "அரட்டையைத் தொடங்க + பொத்தான் மூலம் ஒரு தொடர்பைச் சேர்க்கவும்", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb new file mode 100644 index 0000000..e28d782 --- /dev/null +++ b/lib/l10n/app_uk.arb @@ -0,0 +1,1069 @@ +{ + "@@locale": "uk", + "defaultContactName": "Невідомий", + "@defaultContactName": { + "description": "The default name for a contact when the name is not yet known" + }, + "addContact": "Додати контакт", + "@addContact": { + "description": "The text for the button to add a contact" + }, + "message": "Повідомлення", + "@message": { + "description": "The text for the message field" + }, + "messageInput": "Повідомлення Tox", + "@messageInput": { + "description": "The placeholder text for the message input field" + }, + "re": "Re: {message}", + "@re": { + "description": "The prefix for a reply message", + "placeholders": { + "message": { + "type": "String", + "example": "Hello" + } + } + }, + "toxId": "Tox ID", + "@toxId": { + "description": "The text for the Tox ID field" + }, + "copyToxId": "Копіювати Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox ID скопійовано", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "defaultAddContactMessage": "Привіт, я {nick}, спілкуймося в bTox!", + "@defaultAddContactMessage": { + "description": "The default message to send when adding a contact", + "placeholders": { + "nick": { + "type": "String", + "example": "Alice" + } + } + }, + "addContactMessageLengthError": "Максимум символів: {max} ({length} — забагато)", + "@addContactMessageLengthError": { + "description": "The error message when the friend request message is too long", + "placeholders": { + "max": { + "type": "int", + "example": "256" + }, + "length": { + "type": "int", + "example": "300" + } + } + }, + "add": "Додати", + "@add": { + "description": "The text for the button to add a contact" + }, + "toxIdLengthError": "Має містити {length} шістнадцяткових символів", + "@toxIdLengthError": { + "description": "The error message when the Tox ID is not the right length or format", + "placeholders": { + "length": { + "type": "int", + "example": "76" + } + } + }, + "toxIdChecksumError": "Недійсний Tox ID, перевірте, чи немає в ньому помилок", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "messageEmptyError": "Повідомлення не може бути порожнім", + "@messageEmptyError": { + "description": "The error message when the message is empty" + }, + "menuProfile": "Профіль", + "@menuProfile": { + "description": "The text for the profile menu item" + }, + "menuSettings": "Налаштування", + "@menuSettings": { + "description": "The text for the settings menu item" + }, + "nickLengthError": "Псевдонім має містити від 1 до {max} символів", + "@nickLengthError": { + "description": "The error message when the nickname is too short or too long", + "placeholders": { + "max": { + "type": "int", + "example": "32" + } + } + }, + "statusMessageLengthError": "Повідомлення статусу не може бути довшим за {max} символів", + "@statusMessageLengthError": { + "description": "The error message when the status message is longer than the supported maximum", + "placeholders": { + "max": { + "type": "int", + "example": "128" + } + } + }, + "profileTextFieldNick": "Псевдонім", + "@profileTextFieldNick": { + "description": "The text for the nickname field" + }, + "profileTextFieldUserStatusMessage": "Повідомлення статусу", + "@profileTextFieldUserStatusMessage": { + "description": "The text for the status message field" + }, + "applyChanges": "Застосувати зміни", + "@applyChanges": { + "description": "The text for the button to apply changes" + }, + "applied": "Застосовано", + "@applied": { + "description": "The text when changes have been applied" + }, + "newProfile": "Новий профіль", + "@newProfile": { + "description": "The title text for the create profile dialog" + }, + "create": "Створити", + "@create": { + "description": "The text for the button create a new profile" + }, + "logout": "Вийти", + "@logout": { + "description": "The text for the logout menu item" + }, + "logoutMessage": "Обліковий запис \"{name}\" не отримуватиме повідомлень, доки ви знову не ввійдете в нього.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteProfile": "Видалити профіль", + "@deleteProfile": { + "description": "The text for the delete profile menu item" + }, + "deleteProfileMessage": "Ви справді хочете видалити свій профіль \"{name}\"? Цю дію неможливо скасувати. Буде видалено всі ваші контакти й повідомлення. Переконайтеся, що маєте резервну копію.", + "@deleteProfileMessage": { + "description": "The message to confirm the deletion of a profile", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "cancel": "Скасувати", + "@cancel": { + "description": "The text for the cancel button" + }, + "delete": "Видалити", + "@delete": { + "description": "The text for the delete button" + }, + "acceptFriendRequest": "Прийняти запит у друзі", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Відхилити запит у друзі", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "У мережі", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Не в мережі", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Видалити контакт", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Видалити \"{name}\" з ваших контактів?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Контакт \"{name}\" видалено", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Імпортувати", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Пароль", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Неправильний пароль", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Профіль \"{name}\" імпортовано", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "Цей профіль уже є в bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Експортувати дані", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Усі облікові записи й повідомлення, зашифровані паролем", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Імпортувати дані", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "Експорт bTox або профіль Tox з іншого клієнта", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Експортувати", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{У резервній копії немає нових облікових записів} one{Відновлено {count} обліковий запис} few{Відновлено {count} облікові записи} many{Відновлено {count} облікових записів} other{Відновлено {count} облікового запису}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "Це не профіль Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Залишатися в мережі після закриття", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Усі облікові записи, у які виконано вхід, залишаються в мережі", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Облікові записи", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "Застосунок", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Обліковий запис: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Автоматично приймати файли розміром до", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Ніколи", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Прийняти", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Відхилити", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Завантажити", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Скасовано", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "Призупинено, доки відправник не повернеться в мережу", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Використовувати UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Якщо вимкнено, з’єднуватися лише через TCP-ретранслятори", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Використовувати IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Локальне виявлення", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Знаходити контакти в тій самій мережі напряму", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Вимкнено, поки використовується проксі, що передає лише TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Проксі", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Немає", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Хост", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Порт", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Введіть хост", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Введіть порт від 1 до 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Зберегти", + "@save": { + "description": "The text for the save button" + }, + "profileDeleted": "Профіль \"{name}\" видалено", + "@profileDeleted": { + "description": "The text when a profile has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "attachCamera": "Камера", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Галерея", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "Файл", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Місцезнаходження", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Прив’язати обліковий запис", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Посилання для прив’язки", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Вставте посилання для прив’язки з пристрою, на якому працює обліковий запис.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "Це не посилання для прив’язки", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Прив’язати", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Прив’язаний обліковий запис", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (прив’язаний)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "Не вдалося надіслати повідомлення", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "Не вдалося зберегти", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "Не вдалося імпортувати цей файл", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "Не вдалося прив’язати обліковий запис", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Чати", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Виклики", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Голосовий виклик", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Відеовиклик", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Вихідний відеовиклик", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Вхідний відеовиклик", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Пропущений відеовиклик", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Камера", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Змінити камеру", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox не має доступу до камери, тож виклик триває без неї", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Вихідний голосовий виклик", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Вхідний голосовий виклик", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Пропущений голосовий виклик", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Вхідні виклики", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Пропущені виклики", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Триває виклик", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Виклик…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "З’єднання…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Відповісти", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Відхилити", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Завершити", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Вимкнути мікрофон", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Динамік", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Телефон", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Навушники", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Сховати виклик", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Повернутися до виклику", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Для викликів потрібен мікрофон", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Виклики не можуть з’являтися поверх екрана блокування", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Дозволити", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Імена від бота-ретранслятора", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "Не показувати імена від бота-ретранслятора", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Показати імена", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Немає недавніх викликів", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Виклики проходять через пристрій, до якого прив’язано цей обліковий запис, а він зараз не може їх прийняти", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Ще недоступно", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Немає застосунку, який може відкрити це посилання", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Відповісти", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Переслати", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Відомості про чат", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, one{{count} учасник} few{{count} учасники} many{{count} учасників} other{{count} учасника}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Ви", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Вимкнути сповіщення", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Увімкнути сповіщення", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "На 1 годину", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "На 8 годин", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "На 1 тиждень", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Завжди", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Усе одно сповіщати про згадки", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Без звуку до {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Без звуку", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Надсилати зображення як QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Без втрат якості, але більший розмір, і не всі застосунки показують QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Помічено через {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "Показати ще {count}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Засновник", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Модератор", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Спостерігач", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Не на місці", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Зайнято", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Учасників видно, коли основний пристрій облікового запису в мережі", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Відкритий ключ", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Відкритий ключ скопійовано", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Копіювати", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Вибрати", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Переслати до", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, one{Переслано {count} повідомлення} few{Переслано {count} повідомлення} many{Переслано {count} повідомлень} other{Переслано {count} повідомлення}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Відомості про повідомлення", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Надіслано", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Надсилається", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Доставлено", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Отримано", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "Від", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "Вибрано: {count}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, one{Скопійовано {count} повідомлення} few{Скопійовано {count} повідомлення} many{Скопійовано {count} повідомлень} other{Скопійовано {count} повідомлення}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Інформація", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Сьогодні", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Учора", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Щось пішло не так", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Місцезнаходження", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Емодзі", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Надіслати", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Прикріпити", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Скасувати відповідь", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Вилучити", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "Не вдалося прикріпити", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Чернетка:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "Ідентифікатори повідомлень TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Приховує ідентифікатор, який TRIfA додає до повідомлень, і показує повторно надіслане повідомлення лише раз", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Також назавжди видалити ваші повідомлення й файли з цим контактом", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "Не вдалося видалити профіль \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Об’єднати з іншим чатом", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Показувати чати окремо", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Об’єднання чатів", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Об’єднати з", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Бот у чаті \"{chat}\"", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count, plural, one{Ретрансльовано {relayed} з {count} повідомлення} few{Ретрансльовано {relayed} з {count} повідомлень} many{Ретрансльовано {relayed} з {count} повідомлень} other{Ретрансльовано {relayed} з {count} повідомлення}}", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Немає інших групових чатів", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Об’єднати", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Дані експортовано", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "Не вдалося експортувати дані", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Увімкніть геолокацію, щоб поділитися своїм місцезнаходженням", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox потребує дозволу на доступ до вашого місцезнаходження", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "Не вдалося визначити ваше місцезнаходження", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Налаштування", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "Це ваш власний Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "Не вдалося додати контакт", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "Ви більше не можете надсилати повідомлення в цей чат", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Запит у друзі", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Запрошення до чату", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} запрошує вас до \"{chat}\"", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} запрошує вас на конференцію", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Приєднатися", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Відхилити", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Приєднання…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Потрібен пароль групи. Попросіть нове запрошення.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "Не вдалося приєднатися. Попросіть нове запрошення.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "Не вдалося приєднатися", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Залиште порожнім, якщо в групи немає пароля", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Спробувати знову", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Найновіші повідомлення", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Ще немає чатів", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Додайте контакт кнопкою +, щоб почати спілкування", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" + } +} diff --git a/lib/l10n/app_vec.arb b/lib/l10n/app_vec.arb index f09fc27..4c18538 100644 --- a/lib/l10n/app_vec.arb +++ b/lib/l10n/app_vec.arb @@ -1,6 +1,6 @@ { "@@locale": "vec", - "defaultContactName": "Mìa conjonesto", + "defaultContactName": "Desconosesto", "@defaultContactName": { "description": "The default name for a contact when the name is not yet known" }, @@ -12,11 +12,11 @@ "@message": { "description": "The text for the message field" }, - "messageInput": "Tox mesajo", + "messageInput": "Mesajo Tox", "@messageInput": { "description": "The placeholder text for the message input field" }, - "re": "Re:{message}", + "re": "Re: {message}", "@re": { "description": "The prefix for a reply message", "placeholders": { @@ -40,7 +40,7 @@ } } }, - "addContactMessageLengthError": "Maximum {max} caractere({length} l'è stra grando)", + "addContactMessageLengthError": "Màsimo {max} caràtari ({length} xe massa)", "@addContactMessageLengthError": { "description": "The error message when the friend request message is too long", "placeholders": { @@ -58,7 +58,7 @@ "@add": { "description": "The text for the button to add a contact" }, - "toxIdLengthError": "Toca da èsar {length} hexadecimal caractere", + "toxIdLengthError": "Ła ga da èsar de {length} caràtari esadesimałi", "@toxIdLengthError": { "description": "The error message when the Tox ID is not the right length or format", "placeholders": { @@ -68,7 +68,7 @@ } } }, - "messageEmptyError": "El mesajo no pol mìa da èsar łevro", + "messageEmptyError": "El mesajo no pol mìa èsar vodo", "@messageEmptyError": { "description": "The error message when the message is empty" }, @@ -80,7 +80,7 @@ "@menuSettings": { "description": "The text for the settings menu item" }, - "nickLengthError": "Nickname el toca da gaver 1 e {max} caractere", + "nickLengthError": "El nickname el ga da gaver tra 1 e {max} caràtari", "@nickLengthError": { "description": "The error message when the nickname is too short or too long", "placeholders": { @@ -90,7 +90,7 @@ } } }, - "statusMessageLengthError": "El Status mesajo no pol èsar pì {max} caractere", + "statusMessageLengthError": "El mesajo de stato no pol pasar i {max} caràtari", "@statusMessageLengthError": { "description": "The error message when the status message is longer than the supported maximum", "placeholders": { @@ -104,15 +104,15 @@ "@profileTextFieldNick": { "description": "The text for the nickname field" }, - "profileTextFieldUserStatusMessage": "Status mesajo", + "profileTextFieldUserStatusMessage": "Mesajo de stato", "@profileTextFieldUserStatusMessage": { "description": "The text for the status message field" }, - "applyChanges": "Łaudar łe muanse", + "applyChanges": "Aplicar łe muanse", "@applyChanges": { "description": "The text for the button to apply changes" }, - "applied": "Łaudà", + "applied": "Aplicà", "@applied": { "description": "The text when changes have been applied" }, @@ -132,7 +132,7 @@ "@deleteProfile": { "description": "The text for the delete profile menu item" }, - "deleteProfileMessage": "Sito ti segur da butar via el to \"{name}\" profiło? 'Sto no pol èsar undone. Tuti i contati e i mesaji tui i sarà butar via. Vardè se te ghè un backup.", + "deleteProfileMessage": "Sito segur de voler butar via el to profiło \"{name}\"? No se pol pì tornar indrio. Tuti i to contati e mesaji i vegnarà butài via. Varda de gaver un backup.", "@deleteProfileMessage": { "description": "The message to confirm the deletion of a profile", "placeholders": { @@ -150,7 +150,7 @@ "@delete": { "description": "The text for the delete button" }, - "profileDeleted": "Profiło \"{name}\" el ga butà via", + "profileDeleted": "Profiło \"{name}\" butà via", "@profileDeleted": { "description": "The text when a profile has been deleted", "placeholders": { @@ -159,5 +159,911 @@ "example": "Alice" } } + }, + "copyToxId": "Copiar ła Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "Tox ID copiada", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "toxIdChecksumError": "No ła xe mìa na Tox ID vàłida, controła se ghe xe erori", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "logoutMessage": "{name} no ricevarà pì mesaji fin che no te ghe fa de novo el login.", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "acceptFriendRequest": "Acetar ła domanda de amicisia", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "Refudar ła domanda de amicisia", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "In łinea", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "Fora łinea", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "Butar via el contato", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "Butar via \"{name}\" dai to contati?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "Contato \"{name}\" butà via", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "Inportar", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "Password", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "Password sbajada", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "Profiło \"{name}\" inportà", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "'Sto profiło el xe zà in bTox", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "Esportar i dati", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "Tuti i account e i mesaji, sifrài co na password", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "Inportar i dati", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "N'esportasion de bTox, o un profiło Tox da n'altro client", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "Esportar", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{El backup no'l ga account novi} =1{1 account recuperà} other{{count} account recuperài}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "No'l xe mìa un profiło Tox", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "Restar in łinea co ła app xe sarada", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "Tien in łinea tuti i account conetùi", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "Account", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "App", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "Account: {name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "Acetar i file in automàtico fin a", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "Mai", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "Acetar", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "Refudar", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "Scaricar", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "Anułà", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "In pausa fin che no i torna in łinea", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "Doparar UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "Se destivà, conetarse soło traverso i relay TCP", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "Doparar IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "Scoperta łocałe", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "Catar diretamente i amighi so ła stesa rede", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "Destivà co se dopara un proxy, che'l porta soło TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "Proxy", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "Nisun", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "Host", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "Porta", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "Meti un host", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "Meti na porta da 1 a 65535", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "Salvar", + "@save": { + "description": "The text for the save button" + }, + "attachCamera": "Fotocàmara", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "Gałeria", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "File", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "Posision", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "Cołegar un account", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "Link de abinamento", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "Incoła el link de abinamento dal dispositivo che fa ndar l'account.", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "'Sto chi no'l xe mìa un link de abinamento", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "Cołegar", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "Account cołegà", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name} (cołegà)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "No se ga podùo mandar el mesajo", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "No se ga podùo salvarlo", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "No se ga podùo inportar 'sto file", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "No se ga podùo cołegar l'account", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "Chat", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "Ciamade", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "Ciamada vocałe", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "Videociamada", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "Videociamada in partensa", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "Videociamada in arivo", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "Videociamada persa", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "Fotocàmara", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "Canbiar fotocàmara", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox no pol doparar ła fotocàmara, cusì ła ciamada ła va vanti sensa", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "Ciamada vocałe in partensa", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "Ciamada vocałe in arivo", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "Ciamada vocałe persa", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "Ciamade in arivo", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "Ciamade perse", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "Ciamada in corso", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "Drio ciamar…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "Drio conetarse…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "Respóndar", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "Refudar", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "Tacar sù", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "Muto", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "Vivavose", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "Tełéfono", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "Cufie", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "Bluetooth", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "Scóndar ła ciamada", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "Tornar a ła ciamada", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "Łe ciamade łe ga bisogno del micròfono", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "Łe ciamade no łe pol sonar so ła schermada de bloco", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "Parmétar", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "Nomi da un bot ponte", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "No mostrar pì i nomi dal bot ponte", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "Mostrar i nomi", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "Gnente ciamade recenti", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "Łe ciamade łe pasa par el dispositivo a cui xe cołegà 'sto account, che deso no'l łe pol tor sù", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "Gnancora disponìbiłe", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "Nisuna app ła pol vèrzar 'sto link", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "Respóndar", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "Inoltrar", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "Detaji de ła chat", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, =1{1 menbro} other{{count} menbri}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "Ti", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "Silensiar łe notìfiche", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "Riativar łe notìfiche", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "Par 1 ora", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "Par 8 ore", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "Par 1 setimana", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "Senpre", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "Notìficame ło steso łe mension", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "Silensià fin {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "Silensià", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "Mandar łe foto come QOI", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "Sensa perdite, ma pì grande, e mìa tute łe app łe mostra QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "Visti traverso {bot}", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, =1{Mostrar 1 altro} other{Mostrar altri {count}}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "Fondador", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "Moderador", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "Osarvador", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "Via", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "Ocupà", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "Chi ghe xe se vede co el dispositivo de casa de l'account el xe in łinea", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "Ciave pùblica", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "Ciave pùblica copiada", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "Copiar", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "Sełesionar", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "Inoltrar a", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{Mesajo inoltrà} other{{count} mesaji inoltrài}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "Detaji del mesajo", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "Mandà", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "Drio mandar", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "Consegnà", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "Ricevesto", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "Da", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "{count, plural, one{{count} sełesionà} other{{count} sełesionài}}", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{Mesajo copià} other{{count} mesaji copiài}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "Info", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "Ancuò", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "Jeri", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "Calcosa xe ndà storto", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "Posision", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "Emoji", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "Mandar", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "Ałegar", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "Anułar ła risposta", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "Cavar", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "No se ga podùo ałegarlo", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "Bosa:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "ID dei mesaji TRIfA", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "Sconde l'ID che TRIfA el zonta ai mesaji, e el mostra na volta soła un mesajo che'l manda de novo", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox ({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "Butar via anca i to mesaji e file co łori, par senpre", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "No se ga podùo butar via el profiło \"{name}\"", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "Unir co n'altra chat", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "Mostrar łe chat separade", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "Unir łe chat", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "Unir co", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "Bot in {chat}", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{relayed} de {count} mesaji ritrasmesi", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "Gnente altre chat de grupo", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "Unir", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "Dati esportài", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "No se ga podùo esportar i dati", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "Ativa ła posision par condivìdar ndove che te si", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox el ga bisogno del parmeso par doparar ła to posision", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "No se ga podùo catar ndove che te si", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "Asestasion", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "'Sta chi ła xe ła to Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "No se ga podùo zontar el contato", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "No te pol pì mandar mesaji a 'sta chat", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "Domanda de amicisia", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "Invido a na chat", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} el te ga invidà in {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} el te ga invidà a na conferensa", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "Entrar", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "Refudar", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "Drio entrar…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "Ghe vol ła password del grupo. Domanda un invido novo.", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "No se ga podùo entrar. Domanda un invido novo.", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "No se ga podùo entrar", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "Łasa vodo se el grupo no'l ghe ne ga", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "Proar de novo", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "Mesaji pì novi", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "Gnancora gnente chat", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "Zonta un contato col boton + par scuminsiar a ciacołar", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" } } diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index 342bd03..83deaaa 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -1,3 +1,1069 @@ { - "@@locale": "zh" + "@@locale": "zh", + "defaultContactName": "未知", + "@defaultContactName": { + "description": "The default name for a contact when the name is not yet known" + }, + "addContact": "添加联系人", + "@addContact": { + "description": "The text for the button to add a contact" + }, + "message": "消息", + "@message": { + "description": "The text for the message field" + }, + "messageInput": "Tox 消息", + "@messageInput": { + "description": "The placeholder text for the message input field" + }, + "re": "回复:{message}", + "@re": { + "description": "The prefix for a reply message", + "placeholders": { + "message": { + "type": "String", + "example": "Hello" + } + } + }, + "toxId": "Tox ID", + "@toxId": { + "description": "The text for the Tox ID field" + }, + "copyToxId": "复制 Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "已复制 Tox ID", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "defaultAddContactMessage": "嗨,我是 {nick},来 bTox 上和我聊天吧!", + "@defaultAddContactMessage": { + "description": "The default message to send when adding a contact", + "placeholders": { + "nick": { + "type": "String", + "example": "Alice" + } + } + }, + "addContactMessageLengthError": "最多 {max} 个字符({length} 个太长了)", + "@addContactMessageLengthError": { + "description": "The error message when the friend request message is too long", + "placeholders": { + "max": { + "type": "int", + "example": "256" + }, + "length": { + "type": "int", + "example": "300" + } + } + }, + "add": "添加", + "@add": { + "description": "The text for the button to add a contact" + }, + "toxIdLengthError": "必须是 {length} 个十六进制字符", + "@toxIdLengthError": { + "description": "The error message when the Tox ID is not the right length or format", + "placeholders": { + "length": { + "type": "int", + "example": "76" + } + } + }, + "toxIdChecksumError": "不是有效的 Tox ID,请检查是否有输入错误", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "messageEmptyError": "消息不能为空", + "@messageEmptyError": { + "description": "The error message when the message is empty" + }, + "menuProfile": "个人资料", + "@menuProfile": { + "description": "The text for the profile menu item" + }, + "menuSettings": "设置", + "@menuSettings": { + "description": "The text for the settings menu item" + }, + "nickLengthError": "昵称必须为 1 到 {max} 个字符", + "@nickLengthError": { + "description": "The error message when the nickname is too short or too long", + "placeholders": { + "max": { + "type": "int", + "example": "32" + } + } + }, + "statusMessageLengthError": "状态消息不能超过 {max} 个字符", + "@statusMessageLengthError": { + "description": "The error message when the status message is longer than the supported maximum", + "placeholders": { + "max": { + "type": "int", + "example": "128" + } + } + }, + "profileTextFieldNick": "昵称", + "@profileTextFieldNick": { + "description": "The text for the nickname field" + }, + "profileTextFieldUserStatusMessage": "状态消息", + "@profileTextFieldUserStatusMessage": { + "description": "The text for the status message field" + }, + "applyChanges": "应用更改", + "@applyChanges": { + "description": "The text for the button to apply changes" + }, + "applied": "已应用", + "@applied": { + "description": "The text when changes have been applied" + }, + "newProfile": "新建个人资料", + "@newProfile": { + "description": "The title text for the create profile dialog" + }, + "create": "创建", + "@create": { + "description": "The text for the button create a new profile" + }, + "logout": "退出登录", + "@logout": { + "description": "The text for the logout menu item" + }, + "logoutMessage": "在你重新登录之前,{name} 将不再接收消息。", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteProfile": "删除个人资料", + "@deleteProfile": { + "description": "The text for the delete profile menu item" + }, + "deleteProfileMessage": "确定要删除你的个人资料“{name}”吗?此操作无法撤销,将删除你的所有联系人和消息。请确保你已备份。", + "@deleteProfileMessage": { + "description": "The message to confirm the deletion of a profile", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "cancel": "取消", + "@cancel": { + "description": "The text for the cancel button" + }, + "delete": "删除", + "@delete": { + "description": "The text for the delete button" + }, + "acceptFriendRequest": "接受好友请求", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "拒绝好友请求", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "在线", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "离线", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "删除联系人", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "要从联系人中删除“{name}”吗?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "已删除联系人“{name}”", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "导入", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "密码", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "密码错误", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "已导入个人资料“{name}”", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "此个人资料已在 bTox 中", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "导出数据", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "所有账户和消息,使用密码加密", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "导入数据", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "bTox 导出文件,或来自其他客户端的 Tox 个人资料", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "导出", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{备份中没有新账户} other{已恢复 {count} 个账户}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "不是 Tox 个人资料", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "关闭后保持在线", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "让所有已登录的账户保持在线", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "账户", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "应用", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "账户:{name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "自动接收文件的大小上限", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "从不", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "接收", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "拒绝", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "下载", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "已取消", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "已暂停,等待对方重新上线", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "使用 UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "关闭后仅通过 TCP 中继连接", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "使用 IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "本地发现", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "直接发现同一网络中的好友", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "使用代理时关闭,代理仅支持 TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "代理", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "无", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "主机", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "端口", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "请输入主机", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "请输入 1 到 65535 之间的端口", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "保存", + "@save": { + "description": "The text for the save button" + }, + "profileDeleted": "已删除个人资料“{name}”", + "@profileDeleted": { + "description": "The text when a profile has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "attachCamera": "相机", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "相册", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "文件", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "位置", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "关联账户", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "配对链接", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "粘贴运行该账户的设备上的配对链接。", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "这不是配对链接", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "关联", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "已关联账户", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name}(已关联)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "无法发送消息", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "无法保存", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "无法导入此文件", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "无法关联账户", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "聊天", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "通话", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "语音通话", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "视频通话", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "呼出视频通话", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "视频来电", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "未接视频通话", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "相机", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "切换相机", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox 无法使用相机,通话将在没有视频的情况下继续", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "呼出语音通话", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "语音来电", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "未接语音通话", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "来电", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "未接来电", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "通话中", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "正在呼叫…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "正在连接…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "接听", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "拒绝", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "挂断", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "静音", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "扬声器", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "听筒", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "耳机", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "蓝牙", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "隐藏通话", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "返回通话", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "通话需要使用麦克风", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "来电无法在锁屏上响铃", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "允许", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "来自中继机器人的名称", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "不再显示来自中继机器人的名称", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "显示名称", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "没有最近通话", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "通话需经过此账户关联的设备,该设备目前无法接通", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "暂不可用", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "没有应用可以打开此链接", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "回复", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "转发", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "聊天详情", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, other{{count} 位成员}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "你", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "通知静音", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "取消通知静音", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "1 小时", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "8 小时", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "1 周", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "始终", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "仍通知提及我的消息", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "静音至 {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "已静音", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "以 QOI 格式发送图片", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "无损,但文件更大,且并非所有应用都能显示 QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "经 {bot} 中继", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, other{再显示 {count} 个}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "创建者", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "管理员", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "观察者", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "离开", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "忙碌", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "账户的主设备在线时才会显示成员", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "公钥", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "已复制公钥", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "复制", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "选择", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "转发给", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{已转发消息} other{已转发 {count} 条消息}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "消息详情", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "已发送", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "正在发送", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "已送达", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "已接收", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "发送者", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "已选择 {count} 条", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{已复制消息} other{已复制 {count} 条消息}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "详情", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "今天", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "昨天", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "出了点问题", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "位置", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "表情", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "发送", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "附件", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "取消回复", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "移除", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "无法添加附件", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "草稿:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA 消息 ID", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "隐藏 TRIfA 添加到消息中的 ID,并且它重发的消息只显示一次", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "同时永久删除与对方的消息和文件", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "无法删除个人资料“{name}”", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "与其他聊天合并", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "分开显示聊天", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "合并聊天", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "合并到", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "{chat} 中的机器人", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count} 条消息中有 {relayed} 条经中继", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "没有其他群聊", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "合并", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "数据已导出", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "无法导出数据", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "请开启定位以分享你的位置", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox 需要位置权限", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "无法获取你的位置", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "设置", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "这是你自己的 Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "无法添加联系人", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "你无法再向此聊天发送消息", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "好友请求", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "聊天邀请", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} 邀请你加入 {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} 邀请你加入会议", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "加入", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "拒绝", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "正在加入…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "需要群组密码。请重新索取邀请。", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "无法加入。请重新索取邀请。", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "无法加入", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "如果群组没有密码,请留空", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "重试", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "最新消息", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "还没有聊天", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "点击 + 按钮添加联系人,开始聊天", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" + } } diff --git a/lib/l10n/app_zh_Hans.arb b/lib/l10n/app_zh_Hans.arb index 0967ef4..b928d81 100644 --- a/lib/l10n/app_zh_Hans.arb +++ b/lib/l10n/app_zh_Hans.arb @@ -1 +1,1068 @@ -{} +{ + "defaultContactName": "未知", + "@defaultContactName": { + "description": "The default name for a contact when the name is not yet known" + }, + "addContact": "添加联系人", + "@addContact": { + "description": "The text for the button to add a contact" + }, + "message": "消息", + "@message": { + "description": "The text for the message field" + }, + "messageInput": "Tox 消息", + "@messageInput": { + "description": "The placeholder text for the message input field" + }, + "re": "回复:{message}", + "@re": { + "description": "The prefix for a reply message", + "placeholders": { + "message": { + "type": "String", + "example": "Hello" + } + } + }, + "toxId": "Tox ID", + "@toxId": { + "description": "The text for the Tox ID field" + }, + "copyToxId": "复制 Tox ID", + "@copyToxId": { + "description": "The tooltip for copying your own Tox ID" + }, + "toxIdCopied": "已复制 Tox ID", + "@toxIdCopied": { + "description": "The message shown after copying your own Tox ID" + }, + "defaultAddContactMessage": "嗨,我是 {nick},来 bTox 上和我聊天吧!", + "@defaultAddContactMessage": { + "description": "The default message to send when adding a contact", + "placeholders": { + "nick": { + "type": "String", + "example": "Alice" + } + } + }, + "addContactMessageLengthError": "最多 {max} 个字符({length} 个太长了)", + "@addContactMessageLengthError": { + "description": "The error message when the friend request message is too long", + "placeholders": { + "max": { + "type": "int", + "example": "256" + }, + "length": { + "type": "int", + "example": "300" + } + } + }, + "add": "添加", + "@add": { + "description": "The text for the button to add a contact" + }, + "toxIdLengthError": "必须是 {length} 个十六进制字符", + "@toxIdLengthError": { + "description": "The error message when the Tox ID is not the right length or format", + "placeholders": { + "length": { + "type": "int", + "example": "76" + } + } + }, + "toxIdChecksumError": "不是有效的 Tox ID,请检查是否有输入错误", + "@toxIdChecksumError": { + "description": "The error message when the Tox ID's checksum doesn't match, e.g. because of a typo" + }, + "messageEmptyError": "消息不能为空", + "@messageEmptyError": { + "description": "The error message when the message is empty" + }, + "menuProfile": "个人资料", + "@menuProfile": { + "description": "The text for the profile menu item" + }, + "menuSettings": "设置", + "@menuSettings": { + "description": "The text for the settings menu item" + }, + "nickLengthError": "昵称必须为 1 到 {max} 个字符", + "@nickLengthError": { + "description": "The error message when the nickname is too short or too long", + "placeholders": { + "max": { + "type": "int", + "example": "32" + } + } + }, + "statusMessageLengthError": "状态消息不能超过 {max} 个字符", + "@statusMessageLengthError": { + "description": "The error message when the status message is longer than the supported maximum", + "placeholders": { + "max": { + "type": "int", + "example": "128" + } + } + }, + "profileTextFieldNick": "昵称", + "@profileTextFieldNick": { + "description": "The text for the nickname field" + }, + "profileTextFieldUserStatusMessage": "状态消息", + "@profileTextFieldUserStatusMessage": { + "description": "The text for the status message field" + }, + "applyChanges": "应用更改", + "@applyChanges": { + "description": "The text for the button to apply changes" + }, + "applied": "已应用", + "@applied": { + "description": "The text when changes have been applied" + }, + "newProfile": "新建个人资料", + "@newProfile": { + "description": "The title text for the create profile dialog" + }, + "create": "创建", + "@create": { + "description": "The text for the button create a new profile" + }, + "logout": "退出登录", + "@logout": { + "description": "The text for the logout menu item" + }, + "logoutMessage": "在你重新登录之前,{name} 将不再接收消息。", + "@logoutMessage": { + "description": "Asks whether to sign the current account out", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteProfile": "删除个人资料", + "@deleteProfile": { + "description": "The text for the delete profile menu item" + }, + "deleteProfileMessage": "确定要删除你的个人资料“{name}”吗?此操作无法撤销,将删除你的所有联系人和消息。请确保你已备份。", + "@deleteProfileMessage": { + "description": "The message to confirm the deletion of a profile", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "cancel": "取消", + "@cancel": { + "description": "The text for the cancel button" + }, + "delete": "删除", + "@delete": { + "description": "The text for the delete button" + }, + "acceptFriendRequest": "接受好友请求", + "@acceptFriendRequest": { + "description": "The tooltip for accepting an incoming friend request" + }, + "rejectFriendRequest": "拒绝好友请求", + "@rejectFriendRequest": { + "description": "The tooltip for rejecting an incoming friend request" + }, + "online": "在线", + "@online": { + "description": "A contact's connection state, for screen readers" + }, + "offline": "离线", + "@offline": { + "description": "A contact's connection state, for screen readers" + }, + "deleteContact": "删除联系人", + "@deleteContact": { + "description": "The title of the dialog for deleting a contact" + }, + "deleteContactMessage": "要从联系人中删除“{name}”吗?", + "@deleteContactMessage": { + "description": "The message to confirm the deletion of a contact", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "contactDeleted": "已删除联系人“{name}”", + "@contactDeleted": { + "description": "The text when a contact has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "import": "导入", + "@import": { + "description": "The button that confirms importing a profile" + }, + "password": "密码", + "@password": { + "description": "The label for a password: an encrypted profile's, or a group's" + }, + "wrongPassword": "密码错误", + "@wrongPassword": { + "description": "The error when an encrypted profile's password is wrong" + }, + "profileImported": "已导入个人资料“{name}”", + "@profileImported": { + "description": "The text when a profile has been imported", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "profileAlreadyImported": "此个人资料已在 bTox 中", + "@profileAlreadyImported": { + "description": "The error when importing a profile that bTox already has" + }, + "exportData": "导出数据", + "@exportData": { + "description": "Settings entry that saves all accounts and messages to a file" + }, + "exportDataHint": "所有账户和消息,使用密码加密", + "@exportDataHint": { + "description": "Explanation below the export data setting" + }, + "importData": "导入数据", + "@importData": { + "description": "The setting, button and dialog title for importing a bTox export or a .tox profile file" + }, + "importDataHint": "bTox 导出文件,或来自其他客户端的 Tox 个人资料", + "@importDataHint": { + "description": "Explanation below the import data setting" + }, + "export": "导出", + "@export": { + "description": "Button that exports data" + }, + "accountsRestored": "{count, plural, =0{备份中没有新账户} other{已恢复 {count} 个账户}}", + "@accountsRestored": { + "description": "Shown after importing accounts from a bTox backup", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "notAToxProfile": "不是 Tox 个人资料", + "@notAToxProfile": { + "description": "The error when the chosen file isn't a Tox profile" + }, + "stayOnline": "关闭后保持在线", + "@stayOnline": { + "description": "The setting to keep running in the background after closing the app" + }, + "stayOnlineHint": "让所有已登录的账户保持在线", + "@stayOnlineHint": { + "description": "Explains that stay online applies to every signed-in account" + }, + "accounts": "账户", + "@accounts": { + "description": "The menu item for signing in and managing accounts" + }, + "appSettings": "应用", + "@appSettings": { + "description": "The heading of the settings for the whole app" + }, + "accountSettings": "账户:{name}", + "@accountSettings": { + "description": "The heading of the settings for one account", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "autoAcceptFiles": "自动接收文件的大小上限", + "@autoAcceptFiles": { + "description": "The setting for the largest incoming file accepted without asking" + }, + "never": "从不", + "@never": { + "description": "Auto-accepting no files at all" + }, + "acceptFile": "接收", + "@acceptFile": { + "description": "The button to receive an offered file" + }, + "declineFile": "拒绝", + "@declineFile": { + "description": "The button to refuse an offered file" + }, + "downloadFile": "下载", + "@downloadFile": { + "description": "The button to fetch a file the account's home device holds" + }, + "fileCancelled": "已取消", + "@fileCancelled": { + "description": "A file transfer that was declined or stopped" + }, + "filePaused": "已暂停,等待对方重新上线", + "@filePaused": { + "description": "An incoming file that stopped part way, which goes on when the sender sends it again" + }, + "udpEnabled": "使用 UDP", + "@udpEnabled": { + "description": "The setting for Tox's UDP transport" + }, + "udpEnabledHint": "关闭后仅通过 TCP 中继连接", + "@udpEnabledHint": { + "description": "Explains turning off UDP" + }, + "ipv6Enabled": "使用 IPv6", + "@ipv6Enabled": { + "description": "The setting for connecting over IPv6" + }, + "localDiscoveryEnabled": "本地发现", + "@localDiscoveryEnabled": { + "description": "The setting for finding friends on the local network" + }, + "localDiscoveryEnabledHint": "直接发现同一网络中的好友", + "@localDiscoveryEnabledHint": { + "description": "Explains local discovery" + }, + "offWithProxy": "使用代理时关闭,代理仅支持 TCP", + "@offWithProxy": { + "description": "Why UDP and local discovery are off when a proxy is set" + }, + "proxy": "代理", + "@proxy": { + "description": "The proxy setting and dialog title" + }, + "proxyNone": "无", + "@proxyNone": { + "description": "No proxy" + }, + "proxyHost": "主机", + "@proxyHost": { + "description": "The label for the proxy host field" + }, + "proxyPort": "端口", + "@proxyPort": { + "description": "The label for the proxy port field" + }, + "invalidProxyHost": "请输入主机", + "@invalidProxyHost": { + "description": "The error when the proxy host is empty" + }, + "invalidProxyPort": "请输入 1 到 65535 之间的端口", + "@invalidProxyPort": { + "description": "The error when the proxy port is out of range" + }, + "save": "保存", + "@save": { + "description": "The text for the save button" + }, + "profileDeleted": "已删除个人资料“{name}”", + "@profileDeleted": { + "description": "The text when a profile has been deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "attachCamera": "相机", + "@attachCamera": { + "description": "Button to take a photo to send" + }, + "attachGallery": "相册", + "@attachGallery": { + "description": "Button to choose images to send" + }, + "attachFile": "文件", + "@attachFile": { + "description": "Button to choose files to send" + }, + "attachLocation": "位置", + "@attachLocation": { + "description": "Button to send the current location" + }, + "linkAccount": "关联账户", + "@linkAccount": { + "description": "Action to use an account that runs on another device" + }, + "pairingLink": "配对链接", + "@pairingLink": { + "description": "Label of the field for another device's pairing link" + }, + "pairingLinkHelp": "粘贴运行该账户的设备上的配对链接。", + "@pairingLinkHelp": { + "description": "Explains where the pairing link comes from" + }, + "invalidPairingLink": "这不是配对链接", + "@invalidPairingLink": { + "description": "Error when the pasted text isn't a pairing link" + }, + "link": "关联", + "@link": { + "description": "Button that links an account" + }, + "linkedAccount": "已关联账户", + "@linkedAccount": { + "description": "Name of a linked account until its name has synced" + }, + "linkedAccountName": "{name}(已关联)", + "@linkedAccountName": { + "description": "A linked account where accounts are listed to choose from", + "placeholders": { + "name": { + "type": "String" + } + } + }, + "sendFailed": "无法发送消息", + "@sendFailed": { + "description": "Error when a message couldn't be saved for sending" + }, + "saveFailed": "无法保存", + "@saveFailed": { + "description": "Error when something the user did couldn't be saved" + }, + "importFailed": "无法导入此文件", + "@importFailed": { + "description": "Error when a profile or backup file couldn't be imported" + }, + "linkFailed": "无法关联账户", + "@linkFailed": { + "description": "Error when a linked account couldn't be added" + }, + "chats": "聊天", + "@chats": { + "description": "The tab of the main page listing chats" + }, + "calls": "通话", + "@calls": { + "description": "The tab of the main page listing calls" + }, + "voiceCall": "语音通话", + "@voiceCall": { + "description": "A call button's tooltip, and a call still going on in a chat" + }, + "videoCall": "视频通话", + "@videoCall": { + "description": "A video call button's tooltip, and a video call still going on in a chat" + }, + "outgoingVideoCall": "呼出视频通话", + "@outgoingVideoCall": { + "description": "A video call we made, in a chat" + }, + "incomingVideoCall": "视频来电", + "@incomingVideoCall": { + "description": "A video call the friend made, in a chat and while it rings" + }, + "missedVideoCall": "未接视频通话", + "@missedVideoCall": { + "description": "A video call that rang here and wasn't answered" + }, + "callCamera": "相机", + "@callCamera": { + "description": "The button that turns the camera on or off in a call" + }, + "flipCamera": "切换相机", + "@flipCamera": { + "description": "The button that switches between the front and back camera in a call" + }, + "cameraNeeded": "bTox 无法使用相机,通话将在没有视频的情况下继续", + "@cameraNeeded": { + "description": "Shown when bTox may not use the camera for a video call, which goes on without video" + }, + "outgoingCall": "呼出语音通话", + "@outgoingCall": { + "description": "A call we made, in a chat" + }, + "incomingCall": "语音来电", + "@incomingCall": { + "description": "A call the friend made, in a chat and while it rings" + }, + "missedCall": "未接语音通话", + "@missedCall": { + "description": "A call that rang here and wasn't answered" + }, + "callWithDuration": "{call} · {duration}", + "@callWithDuration": { + "description": "A call in a chat, with how long it was", + "placeholders": { + "call": { + "type": "String" + }, + "duration": { + "type": "String" + } + } + }, + "incomingCalls": "来电", + "@incomingCalls": { + "description": "The notification channel that rings" + }, + "missedCalls": "未接来电", + "@missedCalls": { + "description": "The notification channel for missed calls" + }, + "callOngoing": "通话中", + "@callOngoing": { + "description": "The notification while a call goes on" + }, + "calling": "正在呼叫…", + "@calling": { + "description": "Our call, while it rings at the friend's" + }, + "connecting": "正在连接…", + "@connecting": { + "description": "A call answered here, until it's connected" + }, + "answerCall": "接听", + "@answerCall": { + "description": "The button that answers a call" + }, + "declineCall": "拒绝", + "@declineCall": { + "description": "The button that declines a call" + }, + "hangUp": "挂断", + "@hangUp": { + "description": "The button that ends a call" + }, + "muteCall": "静音", + "@muteCall": { + "description": "The button that mutes the microphone in a call" + }, + "callSpeaker": "扬声器", + "@callSpeaker": { + "description": "The button that puts a call on the loudspeaker" + }, + "callEarpiece": "听筒", + "@callEarpiece": { + "description": "Where a call's audio can go: the phone's earpiece" + }, + "callWired": "耳机", + "@callWired": { + "description": "Where a call's audio can go: wired headphones" + }, + "callBluetooth": "蓝牙", + "@callBluetooth": { + "description": "Where a call's audio can go: a Bluetooth headset" + }, + "hideCall": "隐藏通话", + "@hideCall": { + "description": "The button that shows the chats during a call" + }, + "returnToCall": "返回通话", + "@returnToCall": { + "description": "The banner over the chats during a call" + }, + "microphoneNeeded": "通话需要使用麦克风", + "@microphoneNeeded": { + "description": "Shown when bTox may not use the microphone" + }, + "ringOverLockScreen": "来电无法在锁屏上响铃", + "@ringOverLockScreen": { + "description": "Shown on the Calls tab while Android doesn't let bTox show incoming calls full screen" + }, + "allowRingOverLockScreen": "允许", + "@allowRingOverLockScreen": { + "description": "The button that opens the setting letting calls ring full screen" + }, + "relayBotNames": "来自中继机器人的名称", + "@relayBotNames": { + "description": "The action, and its page, that shows the names a bot relays from another chat in a group chat" + }, + "stopRelayBotNames": "不再显示来自中继机器人的名称", + "@stopRelayBotNames": { + "description": "The action that shows a relay bot's messages as its own again" + }, + "showNames": "显示名称", + "@showNames": { + "description": "The button that starts showing the names a relay bot relays" + }, + "noCalls": "没有最近通话", + "@noCalls": { + "description": "Shown on the Calls tab when there are no calls" + }, + "callsNotAvailable": "通话需经过此账户关联的设备,该设备目前无法接通", + "@callsNotAvailable": { + "description": "Shown on the Calls tab of a linked account while its home device is offline, or doesn't connect calls to its devices" + }, + "notImplemented": "暂不可用", + "@notImplemented": { + "description": "Shown for a menu item that doesn't work yet" + }, + "openLinkFailed": "没有应用可以打开此链接", + "@openLinkFailed": { + "description": "Shown when tapping a link in a message opens nothing" + }, + "reply": "回复", + "@reply": { + "description": "Message menu item to reply to the message" + }, + "forward": "转发", + "@forward": { + "description": "Message menu item to forward the message" + }, + "chatDetails": "聊天详情", + "@chatDetails": { + "description": "The tooltip of a chat's title, which opens who the chat is with" + }, + "chatMembers": "{count, plural, other{{count} 位成员}}", + "@chatMembers": { + "description": "The heading of the people in a group or conference, counting yourself", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "you": "你", + "@you": { + "description": "Yourself, among the people in a chat" + }, + "muteChat": "通知静音", + "@muteChat": { + "description": "The action, and its dialog, that stops a chat's notifications for a while" + }, + "unmuteChat": "取消通知静音", + "@unmuteChat": { + "description": "The action that lets a muted chat notify again" + }, + "muteForAnHour": "1 小时", + "@muteForAnHour": { + "description": "How long to mute a chat for" + }, + "muteForEightHours": "8 小时", + "@muteForEightHours": { + "description": "How long to mute a chat for" + }, + "muteForAWeek": "1 周", + "@muteForAWeek": { + "description": "How long to mute a chat for" + }, + "muteAlways": "始终", + "@muteAlways": { + "description": "Mutes a chat until it's unmuted" + }, + "notifyMentions": "仍通知提及我的消息", + "@notifyMentions": { + "description": "In the dialog muting a group chat: messages naming you still notify" + }, + "mutedUntil": "静音至 {time}", + "@mutedUntil": { + "description": "How long a chat stays muted", + "placeholders": { + "time": { + "type": "String", + "example": "Thu 17:00" + } + } + }, + "mutedAlways": "已静音", + "@mutedAlways": { + "description": "A chat muted until it's unmuted" + }, + "sendPicturesAsQoi": "以 QOI 格式发送图片", + "@sendPicturesAsQoi": { + "description": "A friend chat's setting: camera and gallery pictures sent as QOI" + }, + "sendPicturesAsQoiHint": "无损,但文件更大,且并非所有应用都能显示 QOI", + "@sendPicturesAsQoiHint": { + "description": "Under the setting to send pictures as QOI" + }, + "seenThrough": "经 {bot} 中继", + "@seenThrough": { + "description": "Heading of the names a relay bot has relayed in the chat's history, under the bot among the people in a chat, though they may not be there now", + "placeholders": { + "bot": { + "type": "String", + "example": "EPiG-BrDG" + } + } + }, + "showMoreSeen": "{count, plural, other{再显示 {count} 个}}", + "@showMoreSeen": { + "description": "Shows the names a relay bot relayed longer ago", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "roleFounder": "创建者", + "@roleFounder": { + "description": "The role of whoever created a group" + }, + "roleModerator": "管理员", + "@roleModerator": { + "description": "The role of someone who can moderate a group" + }, + "roleObserver": "观察者", + "@roleObserver": { + "description": "The role of someone who can only read a group" + }, + "statusAway": "离开", + "@statusAway": { + "description": "Someone's status when they're away" + }, + "statusBusy": "忙碌", + "@statusBusy": { + "description": "Someone's status when they're busy" + }, + "membersWhileOnline": "账户的主设备在线时才会显示成员", + "@membersWhileOnline": { + "description": "In place of a linked account's chat members, while its home device can't say who they are" + }, + "publicKey": "公钥", + "@publicKey": { + "description": "The heading of a friend's public key, which Tox knows them by" + }, + "publicKeyCopied": "已复制公钥", + "@publicKeyCopied": { + "description": "The message shown after copying a friend's public key" + }, + "copy": "复制", + "@copy": { + "description": "Message menu item to copy the message's text" + }, + "select": "选择", + "@select": { + "description": "Message menu item to select messages" + }, + "forwardTo": "转发给", + "@forwardTo": { + "description": "The title of the page that picks a chat to forward messages to" + }, + "messagesForwarded": "{count, plural, =1{已转发消息} other{已转发 {count} 条消息}}", + "@messagesForwarded": { + "description": "The message shown after forwarding messages", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messageInfo": "消息详情", + "@messageInfo": { + "description": "The title of the page a message's Info opens" + }, + "messageSent": "已发送", + "@messageSent": { + "description": "On a message's details, when ours was sent" + }, + "messageSending": "正在发送", + "@messageSending": { + "description": "On a message's details, in place of messageSent while ours waits to go" + }, + "messageDelivered": "已送达", + "@messageDelivered": { + "description": "On a message's details, when ours arrived" + }, + "messageReceived": "已接收", + "@messageReceived": { + "description": "On a message's details, when someone else's came" + }, + "messageFrom": "发送者", + "@messageFrom": { + "description": "On a message's details, the heading of who sent someone else's" + }, + "messagesSelected": "已选择 {count} 条", + "@messagesSelected": { + "description": "The chat's title while messages are selected", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "messagesCopied": "{count, plural, =1{已复制消息} other{已复制 {count} 条消息}}", + "@messagesCopied": { + "description": "The message shown after copying messages' text", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "info": "详情", + "@info": { + "description": "Message menu item to show the message's details" + }, + "today": "今天", + "@today": { + "description": "Above the messages of today in a chat" + }, + "yesterday": "昨天", + "@yesterday": { + "description": "Above the messages of yesterday in a chat" + }, + "loadFailed": "出了点问题", + "@loadFailed": { + "description": "Shown in place of a page that couldn't be loaded" + }, + "locationMessage": "位置", + "@locationMessage": { + "description": "A shared location, as the chat list shows it" + }, + "emoji": "表情", + "@emoji": { + "description": "The button in the message box that opens the emoji picker" + }, + "send": "发送", + "@send": { + "description": "The button that sends what is written in the message box" + }, + "attach": "附件", + "@attach": { + "description": "The button in the message box that opens what can be attached" + }, + "cancelReply": "取消回复", + "@cancelReply": { + "description": "The button that stops replying to a message" + }, + "removeAttachment": "移除", + "@removeAttachment": { + "description": "The button on an attachment waiting to be sent that takes it away" + }, + "attachFailed": "无法添加附件", + "@attachFailed": { + "description": "Shown when a picture or file couldn't be picked or copied to send" + }, + "dayAndTime": "{day} {time}", + "@dayAndTime": { + "description": "A day and a time on it, as in 'muted until Fri 14:00'", + "placeholders": { + "day": { + "type": "String", + "example": "Fri" + }, + "time": { + "type": "String", + "example": "14:00" + } + } + }, + "draftLabel": "草稿:", + "@draftLabel": { + "description": "Before what is being written in a chat, as the chat list shows it" + }, + "messageV3": "TRIfA 消息 ID", + "@messageV3": { + "description": "Setting to read the ID TRIfA adds to its messages" + }, + "messageV3Hint": "隐藏 TRIfA 添加到消息中的 ID,并且它重发的消息只显示一次", + "@messageV3Hint": { + "description": "What reading TRIfA's message IDs does" + }, + "titleWithAccount": "bTox({name})", + "@titleWithAccount": { + "description": "The title of the chat list, with the account it shows", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "deleteChatToo": "同时永久删除与对方的消息和文件", + "@deleteChatToo": { + "description": "Option when deleting a contact to delete the chat with them too" + }, + "profileDeleteFailed": "无法删除个人资料“{name}”", + "@profileDeleteFailed": { + "description": "Error when a profile couldn't be deleted", + "placeholders": { + "name": { + "type": "String", + "example": "Alice" + } + } + }, + "mergeChat": "与其他聊天合并", + "@mergeChat": { + "description": "Action on a group chat to show it together with another that a bot relays messages between" + }, + "unmergeChat": "分开显示聊天", + "@unmergeChat": { + "description": "Action on merged chats to show them as separate chats again" + }, + "mergeChatTitle": "合并聊天", + "@mergeChatTitle": { + "description": "Title of the page that merges two chats" + }, + "mergeWith": "合并到", + "@mergeWith": { + "description": "Heading of the chats one can merge with" + }, + "relayBotIn": "{chat} 中的机器人", + "@relayBotIn": { + "description": "Heading of the members of a chat to pick the bot from that relays messages to the other chat", + "placeholders": { + "chat": { + "type": "String", + "example": "Tox" + } + } + }, + "relayedMessages": "{count} 条消息中有 {relayed} 条经中继", + "@relayedMessages": { + "description": "How many of a chat member's messages look like a bot relayed them", + "placeholders": { + "relayed": { + "type": "int" + }, + "count": { + "type": "int" + } + } + }, + "noChatsToMerge": "没有其他群聊", + "@noChatsToMerge": { + "description": "Shown when there are no chats to merge with" + }, + "merge": "合并", + "@merge": { + "description": "Button that merges the chats" + }, + "exported": "数据已导出", + "@exported": { + "description": "Shown when the backup was saved" + }, + "exportFailed": "无法导出数据", + "@exportFailed": { + "description": "Error when the backup couldn't be made or saved" + }, + "locationOff": "请开启定位以分享你的位置", + "@locationOff": { + "description": "Shown when sharing a location while location is off on the device" + }, + "locationDenied": "bTox 需要位置权限", + "@locationDenied": { + "description": "Shown when sharing a location without the permission" + }, + "locationFailed": "无法获取你的位置", + "@locationFailed": { + "description": "Error when the location couldn't be found" + }, + "openSettings": "设置", + "@openSettings": { + "description": "Button opening the device's settings to fix a problem" + }, + "ownToxIdError": "这是你自己的 Tox ID", + "@ownToxIdError": { + "description": "Error when adding your own Tox ID as a contact" + }, + "addContactFailed": "无法添加联系人", + "@addContactFailed": { + "description": "Error when a contact couldn't be saved" + }, + "chatClosed": "你无法再向此聊天发送消息", + "@chatClosed": { + "description": "Shown in place of the message input for a deleted contact or a group left" + }, + "friendRequest": "好友请求", + "@friendRequest": { + "description": "Title of the notification for a friend request" + }, + "inviteNotification": "聊天邀请", + "@inviteNotification": { + "description": "Title of the notification for an invite to a group or conference" + }, + "groupInvite": "{friend} 邀请你加入 {chat}", + "@groupInvite": { + "description": "An invite to a group, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + }, + "chat": { + "type": "String" + } + } + }, + "conferenceInvite": "{friend} 邀请你加入会议", + "@conferenceInvite": { + "description": "An invite to a conference, whose invite has no name, above the chats and in its notification", + "placeholders": { + "friend": { + "type": "String" + } + } + }, + "joinInvite": "加入", + "@joinInvite": { + "description": "The button that joins the chat of an invite" + }, + "declineInvite": "拒绝", + "@declineInvite": { + "description": "The button that declines an invite to a chat" + }, + "joiningInvite": "正在加入…", + "@joiningInvite": { + "description": "Under an invite answered to join, until the account's home device joined" + }, + "inviteNeedsPassword": "需要群组密码。请重新索取邀请。", + "@inviteNeedsPassword": { + "description": "Under an invite to a group that turned the account away for a missing or wrong password, which spent the invite" + }, + "inviteSpent": "无法加入。请重新索取邀请。", + "@inviteSpent": { + "description": "Under an invite whose chat turned the account away for another reason, which spent the invite" + }, + "inviteFailed": "无法加入", + "@inviteFailed": { + "description": "Under an invite whose chat the account's home device couldn't join, which can be tried again" + }, + "groupPasswordHelper": "如果群组没有密码,请留空", + "@groupPasswordHelper": { + "description": "Under the password field when joining a group from an invite" + }, + "retryInvite": "重试", + "@retryInvite": { + "description": "The button that tries joining the chat of an invite again" + }, + "chatInAccount": "{chat} · {account}", + "@chatInAccount": { + "description": "Title of a chat's notification while several accounts are signed in: the chat, then the account it's in", + "placeholders": { + "chat": { + "type": "String" + }, + "account": { + "type": "String" + } + } + }, + "newestMessages": "最新消息", + "@newestMessages": { + "description": "Tooltip of the button that scrolls a chat to its newest messages" + }, + "noChats": "还没有聊天", + "@noChats": { + "description": "Shown on the Chats tab when there are no chats" + }, + "noChatsHint": "点击 + 按钮添加联系人,开始聊天", + "@noChatsHint": { + "description": "How to start a first chat, under noChats" + } +}