From 364e7d6ae9afd0a22dadfc94d3a847c1a8ec921e Mon Sep 17 00:00:00 2001 From: dtygel Date: Fri, 2 Jun 2017 02:54:52 +0000 Subject: [PATCH 01/63] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (797 of 797 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.nordgedanken.de/projects/riot-web/matrix-react-sdk/pt_BR/ --- src/i18n/strings/pt_BR.json | 37 ++++++++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 5 deletions(-) diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index f987a0cd68..4abfa0da42 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -193,7 +193,7 @@ "sent an invitation to": "enviou um convite para", "sent a video": "enviou um vídeo", "Server may be unavailable or overloaded": "Servidor pode estar indisponível ou sobrecarregado", - "Server may be unavailable, overloaded, or you hit a bug.": "Servidor pode estar indisponível, sobrecarregado ou aconteceu um erro de execução.", + "Server may be unavailable, overloaded, or you hit a bug.": "O servidor pode estar indisponível ou sobrecarregado, ou então você encontrou uma falha no sistema.", "Session ID": "Identificador de sessão", "set a profile picture": "colocou uma foto de perfil", "set their display name to": "configurou seu nome para", @@ -619,9 +619,9 @@ "No devices with registered encryption keys": "Não há dispositivos com chaves de criptografia registradas", "No more results": "Não há mais resultados", "No results": "Sem resultados", - "OK": "OK", + "OK": "Ok", "Revoke Moderator": "Retirar status de moderador", - "Search": "Localizar", + "Search": "Buscar", "Search failed": "Busca falhou", "Server error": "Erro no servidor", "Server may be unavailable, overloaded, or search timed out :(": "O servidor pode estar indisponível, sobrecarregado, ou a busca ultrapassou o tempo limite :(", @@ -741,7 +741,6 @@ "This process allows you to export the keys for messages you have received in encrypted rooms to a local file. You will then be able to import the file into another Matrix client in the future, so that client will also be able to decrypt these messages.": "Este processo permite que você exporte as chaves para mensagens que você recebeu em salas criptografadas para um arquivo local. Você poderá então importar o arquivo para outro cliente Matrix no futuro, de modo que este cliente também poderá descriptografar suas mensagens.", "The export file will be protected with a passphrase. You should enter the passphrase here, to decrypt the file.": "O arquivo exportado será protegido com uma senha. Você deverá inserir a senha aqui para poder descriptografar o arquivo futuramente.", "You must join the room to see its files": "Você precisa ingressar na sala para ver seus arquivos", - "Server may be unavailable, overloaded, or you hit a bug.": "O servidor pode estar indisponível ou sobrecarregado, ou então você encontrou uma falha no sistema.", "Reject all %(invitedRooms)s invites": "Rejeitar todos os %(invitedRooms)s convites", "Start new Chat": "Iniciar nova conversa", "Guest users can't invite users. Please register.": "Visitantes não podem convidar usuárias(os) registradas(os). Favor registrar.", @@ -820,5 +819,33 @@ "Start automatically after system login": "Iniciar automaticamente ao iniciar o sistema", "Desktop specific": "Específico para o app de computadores desktop", "You are about to be taken to a third-party site so you can authenticate your account for use with %(integrationsUrl)s. Do you wish to continue?": "Você será levado agora a um site de terceiros para poder autenticar a sua conta para uso com o serviço %(integrationsUrl)s. Você quer continuar?", - "Disable URL previews for this room (affects only you)": "Desabilitar as pré-visualizações de sites para esta sala (afeta apenas a você)" + "Disable URL previews for this room (affects only you)": "Desabilitar as pré-visualizações de sites para esta sala (afeta apenas a você)", + "Device already verified!": "Dispositivo já verificado!", + "disabled": "desabilitado", + "enabled": "habilitado", + "Export": "Exportar", + "Failed to register as guest:": "Falha ao se registrar como visitante:", + "Guest access is disabled on this Home Server.": "O acesso para visitantes está desabilitado neste Servidor de Base.", + "Import": "Importar", + "Incorrect username and/or password.": "Nome de usuária(o) e/ou senha incorreto.", + "Invited": "Convidada(o)", + "Results from DuckDuckGo": "Resultados de DuckDuckGo", + "The signing key you provided matches the signing key you received from %(userId)s's device %(deviceId)s. Device marked as verified.": "A chave de assinatura que você forneceu é a mesma que a chave de assinatura que você recebeu do dispositivo %(deviceId)s de %(userId)s . O dispositivo foi portanto marcado como verificado.", + "This Home Server does not support login using email address.": "Este Servidor de Base não permite login usando endereço de e-mail.", + "There was a problem logging in.": "Houve um problema ao fazer login.", + "Unknown (user, device) pair:": "Par usuária(o)-dispositivo desconhecido:", + "Unrecognised command:": "Comando não reconhecido:", + "Unrecognised room alias:": "Apelido de sala não reconhecido:", + "Use compact timeline layout": "Usar o layout de linha do tempo compacta", + "Verified key": "Chave verificada", + "WARNING: Device already verified, but keys do NOT MATCH!": "ATENÇÃO: O dispositivo já foi verificado, mas as chaves NÃO SÃO IGUAIS!", + "WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and device %(deviceId)s is \"%(fprint)s\" which does not match the provided key \"%(fingerprint)s\". This could mean your communications are being intercepted!": "ATENÇÃO: VERIFICAÇÃO DE CHAVE FALHOU! A chave de assinatura para a(o) usuária(o) %(userId)s e dispositivo %(deviceId)s é \"%(fprint)s\", que não é igual à chave fornecida \"%(fingerprint)s\". Isso pode significar que suas comunicações estão sendo interceptadas!", + "Set a Display Name": "Definir seu nome público", + "for %(amount)ss": "por %(amount)ss", + "for %(amount)sm": "por %(amount)sm", + "for %(amount)sh": "por %(amount)sh", + "for %(amount)sd": "por %(amount)sd", + "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s removeu a imagem da sala.", + "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s alterou a imagem da sala %(roomName)s", + "$senderDisplayName changed the room avatar to ": "$senderDisplayName alterou a imagem da sala para " } From a8acffa8e1005f42ec53bf5ec2491103ed734306 Mon Sep 17 00:00:00 2001 From: jx tsai Date: Fri, 2 Jun 2017 02:28:05 +0000 Subject: [PATCH 02/63] Translated using Weblate (Chinese (Traditional)) Currently translated at 38.8% (310 of 797 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.nordgedanken.de/projects/riot-web/matrix-react-sdk/zh_Hant/ --- src/i18n/strings/zh_Hant.json | 306 +++++++++++++++++++++++++++++++++- 1 file changed, 297 insertions(+), 9 deletions(-) diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 5238e647b1..ac41375451 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -1,24 +1,312 @@ { - "An email has been sent to": "電郵已經發送至", - "A new password must be entered.": "必須輸入新密碼。.", + "An email has been sent to": "一封郵件已經被發送到", + "A new password must be entered.": "一個新的密碼必須被輸入。.", "anyone": "任何人", - "An error has occurred.": "發生了一個錯誤。", + "An error has occurred.": "一個錯誤出現了。", "Anyone who knows the room's link, apart from guests": "任何知道房間連結的人,但訪客除外", "Anyone who knows the room's link, including guests": "任何知道房間連結的人,包括訪客", - "Are you sure?": "您確認嗎?", + "Are you sure?": "你確定嗎?", "Are you sure you want to reject the invitation?": "您確認要謝絕邀請嗎?", "Are you sure you want to upload the following files?": "您確認要上傳以下文件嗎?", "Attachment": "附件", - "Autoplay GIFs and videos": "自動播放GIF和影片", - "%(senderName)s banned %(targetName)s.": "%(senderName)s 封禁了 %(targetName)s。.", + "Autoplay GIFs and videos": "自動播放GIF和視頻", + "%(senderName)s banned %(targetName)s.": "%(senderName)s 封禁了 %(targetName)s.", "Ban": "封禁", - "Banned users": "已被封禁的使用者", + "Banned users": "被封禁的用戶", "Blacklisted": "已列入黑名單", - "Bug Report": "錯誤報告", + "Bug Report": "臭蟲回報", "Call Timeout": "通話超時", "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "無法連結主伺服器 - 請檢查網路狀況並確保您的 主伺服器 SSL 證書 得到信任", "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "當瀏覽器網址列里有 HTTPS URL 時,不能使用 HTTP 連結主伺服器。請採用 HTTPS 或者 允許不安全的腳本", "Can't load user settings": "無法載入使用者設定", "Change Password": "變更密碼", - "%(targetName)s left the room.": "%(targetName)s 離開了聊天室。." + "%(targetName)s left the room.": "%(targetName)s 離開了聊天室。.", + "af": "南非荷蘭語", + "ar-ae": "阿拉伯語 (U.A.E.)", + "ar-bh": "阿拉伯語 (巴林)", + "ar-dz": "阿拉伯語 (阿爾吉利亞)", + "ar-eg": "阿拉伯語 (埃及)", + "ar-iq": "阿拉伯語 (伊拉克)", + "ar-jo": "阿拉伯語 (約旦)", + "ar-kw": "阿拉伯語 (科威特)", + "ar-lb": "阿拉伯語 (黎巴嫩)", + "ar-ly": "阿拉伯語 (利比亞)", + "ar-ma": "阿拉伯語 (摩洛哥)", + "ar-om": "阿拉伯語 (阿曼)", + "ar-qa": "阿拉伯語 (卡達)", + "ar-sa": "阿拉伯語 (沙烏地阿拉伯)", + "ar-sy": "阿拉伯語 (敍利亞)", + "ar-tn": "阿拉伯語 (突尼斯)", + "ar-ye": "阿拉伯語 (葉門)", + "be": "白俄羅斯語", + "bg": "保加利亞", + "ca": "加泰羅尼亞語", + "cs": "捷克語", + "da": "丹麥語", + "de-at": "德語(奧地利)", + "de-ch": "德語(瑞士)", + "de": "德語", + "de-lu": "德語(盧森堡)", + "el": "希臘語", + "en-au": "英語(澳大利亞)", + "en-bz": "英語 (貝里茲)", + "en-ca": "英語 (加拿大)", + "en": "英語", + "en-gb": "英語 (英國)", + "en-ie": "英語 (愛爾蘭)", + "en-jm": "英語 (牙買加)", + "en-nz": "英語 (新西蘭)", + "en-tt": "英語 (千里達)", + "en-us": "英語 (美國)", + "en-za": "英語 (南非)", + "es-ar": "西班牙語 (阿根廷)", + "es-bo": "西班牙語 (波利維亞)", + "es-cl": "西班牙語 (智利)", + "es-co": "西班牙語 (哥倫比亞)", + "es-cr": "西班牙語 (哥斯大黎加)", + "es-do": "西班牙語 (多明尼加共和國)", + "es-ec": "西班牙語 (厄瓜多)", + "es-gt": "西班牙語 (瓜地馬拉)", + "es-hn": "西班牙語 (宏都拉斯)", + "es-mx": "西班牙語 (墨西哥)", + "es-ni": "西班牙語 (尼加拉瓜)", + "es-pa": "西班牙語 (巴拿馬)", + "es-pe": "西班牙語 (祕魯)", + "es-pr": "西班牙語 (波多黎各)", + "es-py": "西班牙語 (巴拉圭)", + "es": "西班牙語 (西班牙)", + "es-sv": "西班牙語 (薩爾瓦多)", + "es-uy": "西班牙語 (烏拉圭)", + "es-ve": "西班牙語 (委內瑞拉)", + "fr-be": "法語 (比利時)", + "fr-ca": "法語 (加拿大)", + "fr-ch": "法語 (瑞士)", + "fr": "法語 (法國)", + "fr-lu": "法語 (慮森堡)", + "zh-cn": "中文(中國)", + "zh-hk": "中文(香港)", + "zh-sg": "中文(新加坡)", + "zh-tw": "中文(台灣)", + "zu": "祖魯語", + "accept": "接受", + "Account": "帳號", + "Access Token:": "取用令牌:", + "Add email address": "添加郵件地址", + "Add phone number": "添加電話號碼", + "Admin": "管理者", + "Advanced": "高級", + "Algorithm": "算法", + "Always show message timestamps": "總是顯示消息時間戳", + "Authentication": "授權", + "all room members": "所有聊天室成員", + "all room members, from the point they are invited": "所有聊天室成員,從他們被邀請開始", + "all room members, from the point they joined": "所有聊天室成員,從他們加入開始", + "an address": "一個地址", + "and": "和", + "%(items)s and %(remaining)s others": "%(items)s 和 %(remaining)s 其它", + "%(items)s and one other": "%(items)s 和其它", + "%(items)s and %(lastItem)s": "%(items)s 和 %(lastItem)s", + "and one other...": "與另一個...", + "%(names)s and %(lastPerson)s are typing": "%(names)s 和 %(lastPerson)s 正在打字", + "%(names)s and %(count)s others are typing": "%(names)s 和另外 %(count)s 個人正在打字", + "%(senderName)s answered the call.": "%(senderName)s 接了通話。.", + "Clear Cache": "清理緩存", + "Click here": "點擊這里", + "Click here to fix": "點擊這里修復", + "Confirm password": "確認密碼", + "Confirm your new password": "確認你的新密碼", + "Continue": "繼續", + "Create an account": "創建新帳號", + "Create Room": "創建聊天室", + "Cryptography": "加密", + "Current password": "當前密碼", + "/ddg is not a command": "/ddg 不是一個命令", + "Deactivate Account": "銷毀賬號", + "Deactivate my account": "銷毀我的帳號", + "decline": "拒絕", + "Decrypt %(text)s": "解密 %(text)s", + "Decryption error": "解密出錯", + "Delete": "刪除", + "Default": "默認", + "Device ID": "設備識別碼", + "Devices": "設備列表", + "Devices will not yet be able to decrypt history from before they joined the room": "新加入聊天室的設備不能解密加入之前的聊天記錄", + "Direct Chat": "私聊", + "Direct chats": "私聊", + "Disable inline URL previews by default": "默認禁用自動網址預覽", + "Disinvite": "取消邀請", + "Display name": "顯示名稱", + "Displays action": "顯示操作", + "Don't send typing notifications": "不要發送我的打字狀態", + "Download %(text)s": "下載 %(text)s", + "Drop here %(toAction)s": "拖拽到這里 %(toAction)s", + "Ed25519 fingerprint": "Ed25519指紋", + "Email": "電子郵箱", + "Email address": "電子郵箱地址", + "Email, name or matrix ID": "電子郵箱,姓名或者matrix ID", + "Emoji": "Emoji", + "Enable encryption": "啟用加密", + "Encrypted messages will not be visible on clients that do not yet implement encryption": "不支持加密的客戶端將看不到加密的消息", + "Encrypted room": "加密聊天室", + "%(senderName)s ended the call.": "%(senderName)s 結束了通話。.", + "End-to-end encryption information": "端到端加密信息", + "End-to-end encryption is in beta and may not be reliable": "端到端加密現為測試版,不一定可靠", + "Enter Code": "輸入代碼", + "Error": "錯誤", + "Error decrypting attachment": "解密附件時出錯", + "Event information": "事件信息", + "Existing Call": "現有通話", + "Export E2E room keys": "導出聊天室的端到端加密密鑰", + "Failed to ban user": "封禁用戶失敗", + "Failed to change password. Is your password correct?": "修改密碼失敗。確認原密碼輸入正確嗎?", + "Failed to delete device": "刪除設備失敗", + "Failed to forget room %(errCode)s": "無法忘記聊天室 %(errCode)s", + "Failed to join room": "無法加入聊天室", + "Failed to join the room": "無法加入此聊天室", + "Failed to kick": "踢人失敗", + "Failed to leave room": "無法離開聊天室", + "Failed to load timeline position": "無法加載時間軸位置", + "Failed to lookup current room": "找不到當前聊天室", + "Failed to mute user": "禁言用戶失敗", + "Failed to reject invite": "拒絕邀請失敗", + "Failed to reject invitation": "拒絕邀請失敗", + "Failed to save settings": "保存設置失敗", + "Failed to send email": "發送郵件失敗", + "Failed to send request.": "發送請求失敗。", + "Failed to set avatar.": "設置頭像失敗。.", + "Failed to set display name": "設置暱稱失敗", + "Failed to set up conference call": "無法啟動群組通話", + "Failed to toggle moderator status": "無法切換管理員權限", + "Failed to unban": "解除封禁失敗", + "Failed to upload file": "上傳文件失敗", + "Failed to verify email address: make sure you clicked the link in the email": "郵箱驗證失敗: 請確保你已點擊郵件中的鏈接", + "Failure to create room": "創建聊天室失敗", + "Favourite": "收藏", + "favourite": "收藏", + "Favourites": "收藏夾", + "Fill screen": "全螢幕顯示", + "Filter room members": "過濾聊天室成員", + "Forget room": "忘記聊天室", + "Forgot your password?": "忘記密碼?", + "For security, this session has been signed out. Please sign in again.": "出於安全考慮,此會話已被注銷。請重新登錄。.", + "For security, logging out will delete any end-to-end encryption keys from this browser. If you want to be able to decrypt your conversation history from future Riot sessions, please export your room keys for safe-keeping.": "出於安全考慮,用戶注銷時會清除瀏覽器里的端到端加密密鑰。如果你想要下次登錄 Riot 時能解密過去的聊天記錄,請導出你的聊天室密鑰。", + "Found a bug?": "發現漏洞?", + "%(userId)s from %(fromPowerLevel)s to %(toPowerLevel)s": "%(userId)s 從 %(fromPowerLevel)s 變為 %(toPowerLevel)s", + "Guests can't set avatars. Please register.": "游客不能設置頭像。請注冊。.", + "Guest users can't create new rooms. Please register to create room and start a chat.": "游客不能創建聊天室。請注冊以創建聊天室和聊天.", + "Guest users can't upload files. Please register to upload": "游客不能上傳文件。請注冊以上傳文件", + "Guests can't use labs features. Please register.": "游客不能使用實驗性功能。請注冊。.", + "Guests cannot join this room even if explicitly invited.": "游客不能加入此聊天室,即使有人主動邀請。.", + "had": "已經", + "Hangup": "掛斷", + "Hide read receipts": "隱藏已讀回執", + "Hide Text Formatting Toolbar": "隱藏格式工具欄", + "Historical": "曆史", + "Homeserver is": "主服務器是", + "Identity Server is": "身份認證服務器是", + "I have verified my email address": "我已經驗證了我的郵箱地址", + "Import E2E room keys": "導入聊天室端對端加密密鑰", + "Incorrect verification code": "驗證碼錯誤", + "Interface Language": "界面語言", + "Invalid alias format": "別名格式錯誤", + "Invalid address format": "地址格式錯誤", + "Invalid Email Address": "郵箱地址格式錯誤", + "Invalid file%(extra)s": "非法文件%(extra)s", + "Invite new room members": "邀請新的聊天室成員", + "Join Room": "加入聊天室", + "joined": "加入了", + "%(targetName)s joined the room.": "%(targetName)s 加入了聊天室。.", + "Jump to first unread message.": "跳到第一條未讀消息。", + "%(senderName)s kicked %(targetName)s.": "%(senderName)s 把 %(targetName)s 踢出了聊天室。.", + "Leave room": "離開聊天室", + "Login as guest": "以游客的身份登錄", + "New password": "新密碼", + "Report it": "報告", + "Resetting password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "重設密碼會導致所有設備上的端到端加密密鑰被重置,使得加密的聊天記錄不可讀,除非你事先導出密鑰,修改密碼后再導入。此問題將來會得到改善。.", + "restore": "恢復", + "Return to app": "返回 App", + "Return to login screen": "返回登錄頁面", + "Riot does not have permission to send you notifications - please check your browser settings": "Riot 未被允許向你推送消息 - 請檢查瀏覽器設置", + "Riot was not given permission to send notifications - please try again": "Riot 未被允許推送消息通知 - 請重試", + "riot-web version:": "riot-網頁版:", + "Room %(roomId)s not visible": "聊天室 %(roomId)s 已隱藏", + "Room Colour": "聊天室顏色", + "Room name (optional)": "聊天室名稱 (可選)", + "Rooms": "聊天室", + "Scroll to bottom of page": "滾動到頁面底部", + "Scroll to unread messages": "滾動到未讀消息", + "Search": "搜索", + "Search failed": "搜索失敗", + "Searches DuckDuckGo for results": "搜索 DuckDuckGo", + "Send a message (unencrypted)": "發送消息 (非加密)", + "Send an encrypted message": "發送加密消息", + "Sender device information": "發送者的設備信息", + "Send Invites": "發送邀請", + "Send Reset Email": "發送密碼重設郵件", + "sent an image": "發了一張圖片", + "%(senderDisplayName)s sent an image.": "%(senderDisplayName)s 發了一張圖片。.", + "%(senderName)s sent an invitation to %(targetDisplayName)s to join the room.": "%(senderName)s 向 %(targetDisplayName)s 發了加入聊天室的邀請。.", + "sent a video": "發了一個視頻", + "Server error": "伺服器錯誤", + "Server may be unavailable or overloaded": "服務器可能不可用或者超載", + "Server may be unavailable, overloaded, or search timed out :(": "服務器可能不可用、超載,或者搜索超時 :(", + "Server may be unavailable, overloaded, or the file too big": "服務器可能不可用、超載,或者文件過大", + "Server may be unavailable, overloaded, or you hit a bug.": "服務器可能不可用、超載,或者你遇到了一個漏洞.", + "Server unavailable, overloaded, or something else went wrong.": "伺服器可能不可用、超載,或者其他東西出錯了.", + "Session ID": "會話 ID", + "%(senderName)s set a profile picture.": "%(senderName)s 設置了頭像。.", + "%(senderName)s set their display name to %(displayName)s.": "%(senderName)s 將暱稱改為了 %(displayName)s。.", + "Settings": "設置", + "Show panel": "顯示側邊欄", + "Show timestamps in 12 hour format (e.g. 2:30pm)": "用12小時制顯示時間戳 (如:下午 2:30)", + "Signed Out": "已退出登錄", + "Sign in": "登錄", + "Sign out": "注銷", + "since the point in time of selecting this option": "從選擇此選項起", + "since they joined": "從他們加入時起", + "since they were invited": "從他們被邀請時起", + "Some of your messages have not been sent": "部分消息發送失敗", + "Someone": "某個用戶", + "Sorry, this homeserver is using a login which is not recognised ": "很抱歉,無法識別此主伺服器使用的登錄方式 ", + "Start a chat": "創建聊天", + "Start Chat": "開始聊天", + "Submit": "提交", + "Success": "成功", + "The default role for new room members is": "此聊天室新成員的默認角色是", + "The main address for this room is": "此聊天室的主要地址是", + "This action cannot be performed by a guest user. Please register to be able to do this": "訪客不能進行此操作。請注冊", + "This email address is already in use": "此郵箱地址已經被使用", + "This email address was not found": "未找到此郵箱地址", + "%(actionVerb)s this person?": "%(actionVerb)s 這個用戶?", + "The email address linked to your account must be entered.": "必須輸入和你帳號關聯的郵箱地址。", + "The file '%(fileName)s' exceeds this home server's size limit for uploads": "文件 '%(fileName)s' 超過了此主伺服器的上傳大小限制", + "The file '%(fileName)s' failed to upload": "文件 '%(fileName)s' 上傳失敗", + "Turn Markdown off": "關閉Markdown 語法", + "Turn Markdown on": "啟用Markdown 語法", + "%(senderName)s turned on end-to-end encryption (algorithm %(algorithm)s).": "%(senderName)s 啟用端對端加密 (algorithm %(algorithm)s).", + "Unable to add email address": "無法加入電郵地址", + "Unable to capture screen": "無法截取畫面", + "Unable to enable Notifications": "無法啟用通知功能", + "Would you like to": "你要", + "You are already in a call.": "你已在電話通話中", + "You're not in any rooms yet! Press": "你尚未加入任何聊天室!請按", + "You are trying to access %(roomName)s": "你將進入 %(roomName)聊天室", + "You cannot place a call with yourself.": "你不能打電話給自已", + "You cannot place VoIP calls in this browser.": "在此瀏覽器下無法置入網路電話通話", + "Sun": "星期日", + "Mon": "星期一", + "Tue": "星期二", + "%(severalUsers)sleft": "%(severalUsers)s離開", + "%(oneUser)sleft": "%(oneUser)s離開", + "%(severalUsers)sjoined and left": "%(severalUsers)s加入與離開", + "%(oneUser)sleft and rejoined": "%(oneUser)s離開再重新加入", + "for %(amount)sh": " %(amount)sh", + "for %(amount)sd": " %(amount)sd", + "Online": "在線", + "Idle": "閒置", + "Offline": "下線", + "Disable URL previews for this room (affects only you)": "在這個房間禁止URL預覽(只影響你)", + "$senderDisplayName changed the room avatar to ": "$senderDisplayName 更改了聊天室的圖像為 ", + "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s 移除了聊天室圖像", + "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s 更改了聊天室 %(roomName)s 圖像" } From b753563a7e598029adec4c1639a13b09654a3b94 Mon Sep 17 00:00:00 2001 From: Krombel Date: Thu, 1 Jun 2017 21:19:34 +0000 Subject: [PATCH 03/63] Translated using Weblate (German) Currently translated at 97.6% (778 of 797 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.nordgedanken.de/projects/riot-web/matrix-react-sdk/de/ --- src/i18n/strings/de_DE.json | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 4ed7cef988..d59458a1b7 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -227,7 +227,7 @@ "to join the discussion": "um an der Diskussion teilzunehmen", "To kick users": "Um Nutzer zu entfernen", "Admin": "Administrator", - "Server may be unavailable, overloaded, or you hit a bug.": "Server könnte nicht verfügbar oder überlastet sein oder du bist auf einen Fehler gestoßen.", + "Server may be unavailable, overloaded, or you hit a bug": "Server könnte nicht verfügbar oder überlastet sein oder du bist auf einen Fehler gestoßen", "Could not connect to the integration server": "Konnte keine Verbindung zum Integrations-Server herstellen", "Disable inline URL previews by default": "URL-Vorschau im Chat standardmäßig deaktivieren", "Guests can't use labs features. Please register.": "Gäste können keine Labor-Funktionen nutzen. Bitte registrieren.", @@ -280,15 +280,15 @@ "times": "mal", "Bulk Options": "Bulk-Optionen", "Call Timeout": "Anruf-Timeout", - "Conference call failed.": "Konferenzgespräch fehlgeschlagen.", - "Conference calling is in development and may not be reliable.": "Konferenzgespräche sind in Entwicklung und evtl. nicht zuverlässig.", + "Conference call failed": "Konferenzgespräch fehlgeschlagen", + "Conference calling is in development and may not be reliable": "Konferenzgespräche sind in Entwicklung und evtl. nicht zuverlässig", "Conference calls are not supported in encrypted rooms": "Konferenzgespräche sind in verschlüsselten Räumen nicht unterstützt", "Conference calls are not supported in this client": "Konferenzgespräche sind in diesem Client nicht unterstützt", "Existing Call": "Bereits bestehender Anruf", "Failed to set up conference call": "Konferenzgespräch konnte nicht gestartet werden", "Failed to verify email address: make sure you clicked the link in the email": "Verifizierung der E-Mail-Adresse fehlgeschlagen: Bitte stelle sicher, dass du den Link in der E-Mail angeklickt hast", "Failure to create room": "Raumerstellung fehlgeschlagen", - "Guest users can't create new rooms. Please register to create room and start a chat.": "Gäste können keine neuen Räume erstellen. Bitte registrieren um einen Raum zu erstellen und einen Chat zu starten.", + "Guest users can't create new rooms. Please register to create room and start a chat": "Gäste können keine neuen Räume erstellen. Bitte registrieren um einen Raum zu erstellen und einen Chat zu starten", "Riot does not have permission to send you notifications - please check your browser settings": "Riot hat keine Berechtigung Benachrichtigungen zu senden - bitte prüfe deine Browser-Einstellungen", "Riot was not given permission to send notifications - please try again": "Riot hat das Recht nicht bekommen Benachrichtigungen zu senden. Bitte erneut probieren", "This email address is already in use": "Diese E-Mail-Adresse wird bereits verwendet", @@ -302,11 +302,11 @@ "Unable to enable Notifications": "Unfähig Benachrichtigungen zu aktivieren", "Upload Failed": "Upload fehlgeschlagen", "VoIP is unsupported": "VoIP wird nicht unterstützt", - "You are already in a call.": "Du bist bereits bei einem Anruf.", - "You cannot place a call with yourself.": "Du kannst keinen Anruf mit dir selbst starten.", - "You cannot place VoIP calls in this browser.": "Du kannst kein VoIP-Gespräch in diesem Browser starten.", + "You are already in a call": "Du bist bereits bei einem Anruf", + "You cannot place a call with yourself": "Du kannst keinen Anruf mit dir selbst starten", + "You cannot place VoIP calls in this browser": "Du kannst kein VoIP-Gespräch in diesem Browser starten", "You need to log back in to generate end-to-end encryption keys for this device and submit the public key to your homeserver. This is a once off; sorry for the inconvenience.": "Du musst dich erneut anmelden, um Ende-zu-Ende-Verschlüsselungs-Schlüssel für dieses Gerät zu generieren und um den öffentlichen Schlüssel auf deinem Homeserver zu hinterlegen. Dies muss nur einmal durchgeführt werden, bitte entschuldige die Unannehmlichkeiten.", - "Your email address does not appear to be associated with a Matrix ID on this Homeserver.": "Deine E-Mail-Adresse scheint nicht mit einer Matrix-ID auf diesem Homeserver verknüpft zu sein.", + "Your email address does not appear to be associated with a Matrix ID on this Homeserver": "Deine E-Mail-Adresse scheint nicht mit einer Matrix-ID auf diesem Homeserver verknüpft zu sein", "Sun": "So", "Mon": "Mo", "Tue": "Di", @@ -608,7 +608,7 @@ "Server error": "Server-Fehler", "Server may be unavailable, overloaded, or search timed out :(": "Der Server ist entweder nicht verfügbar, überlastet oder die Suche wurde wegen Zeitüberschreitung abgebrochen :(", "Server may be unavailable, overloaded, or the file too big": "Server ist entweder nicht verfügbar, überlastet oder die Datei ist zu groß", - "Server unavailable, overloaded, or something else went wrong.": "Der Server ist entweder nicht verfügbar, überlastet oder es liegt ein anderweitiger Fehler vor.", + "Server unavailable, overloaded, or something else went wrong": "Der Server ist entweder nicht verfügbar, überlastet oder es liegt ein anderweitiger Fehler vor", "Some of your messages have not been sent": "Einige deiner Nachrichten wurden noch nicht gesendet", "Submit": "Absenden", "The main address for this room is: %(canonical_alias_section)s": "Die Hauptadresse für diesen Raum ist: %(canonical_alias_section)s", @@ -830,5 +830,6 @@ "for %(amount)ss": "für %(amount)ss", "for %(amount)sm": "für %(amount)sm", "for %(amount)sh": "für %(amount)sh", - "for %(amount)sd": "für %(amount)sd" + "for %(amount)sd": "für %(amount)sd", + "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s entfernte Raum-Bild." } From d2d0ba952aba4999fd1f145c6632f45ad9267d06 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 2 Jun 2017 04:23:07 +0100 Subject: [PATCH 04/63] allow hiding redactions. no point onAccountData as it'd cause a full refresh, this may need to be handled differently in the future. Currently handling same as the new timestamp stuff Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/components/structures/MessagePanel.js | 5 +++ src/components/structures/TimelinePanel.js | 52 ++++++++++++---------- src/components/structures/UserSettings.js | 4 ++ src/i18n/strings/en_EN.json | 1 + 4 files changed, 39 insertions(+), 23 deletions(-) diff --git a/src/components/structures/MessagePanel.js b/src/components/structures/MessagePanel.js index 6f49e425fd..5c68d4d206 100644 --- a/src/components/structures/MessagePanel.js +++ b/src/components/structures/MessagePanel.js @@ -90,6 +90,9 @@ module.exports = React.createClass({ // show timestamps always alwaysShowTimestamps: React.PropTypes.bool, + + // hide redacted events as per old behaviour + hideRedactions: React.PropTypes.bool, }, componentWillMount: function() { @@ -419,6 +422,8 @@ module.exports = React.createClass({ }, _getTilesForEvent: function(prevEvent, mxEv, last) { + if (mxEv.isRedacted() && this.props.hideRedactions) return []; + const EventTile = sdk.getComponent('rooms.EventTile'); const DateSeparator = sdk.getComponent('messages.DateSeparator'); var ret = []; diff --git a/src/components/structures/TimelinePanel.js b/src/components/structures/TimelinePanel.js index 76004ebbac..aecb468f71 100644 --- a/src/components/structures/TimelinePanel.js +++ b/src/components/structures/TimelinePanel.js @@ -131,6 +131,8 @@ var TimelinePanel = React.createClass({ } } + const syncedSettings = UserSettingsStore.getSyncedSettings(); + return { events: [], timelineLoading: true, // track whether our room timeline is loading @@ -175,10 +177,13 @@ var TimelinePanel = React.createClass({ clientSyncState: MatrixClientPeg.get().getSyncState(), // should the event tiles have twelve hour times - isTwelveHour: UserSettingsStore.getSyncedSetting('showTwelveHourTimestamps'), + isTwelveHour: syncedSettings.showTwelveHourTimestamps, // always show timestamps on event tiles? - alwaysShowTimestamps: UserSettingsStore.getSyncedSetting('alwaysShowTimestamps'), + alwaysShowTimestamps: syncedSettings.alwaysShowTimestamps, + + // hide redacted events as per old behaviour + hideRedactions: syncedSettings.hideRedactions, }; }, @@ -915,7 +920,7 @@ var TimelinePanel = React.createClass({ }); }; } - var message = (error.errcode == 'M_FORBIDDEN') + var message = (error.errcode == 'M_FORBIDDEN') ? _t("Tried to load a specific point in this room's timeline, but you do not have permission to view the message in question") + "." : _t("Tried to load a specific point in this room's timeline, but was unable to find it") + "."; Modal.createDialog(ErrorDialog, { @@ -1113,26 +1118,27 @@ var TimelinePanel = React.createClass({ ); return (