The first two thirds of #207. A school wanting "warn about outside senders" on for three thousand pupils cannot ask three thousand pupils, and the reporter is right that this is a company policy rather than a preference. Two powers, and the difference between them is the whole request. `defaults` seed an account that has never had settings of its own and can be changed afterwards like anything else -- a starting point, not a rule. `enforced` are reapplied on every load and cannot be changed at all. Enforced controls stay visible and go dead, with a line saying why. The issue asked for that by name: a control that is simply missing reads as a bug to somebody who has used ihasmail without a policy. The lock is in the settings store rather than only on the controls. There is one door -- `update` -- and putting it there means an imported settings file, a settings file synced from a device that predates the policy, and a control somebody adds later and forgets to check are all covered by construction. Reset goes back to the installation's answer rather than to ihasmail's, so it cannot be a way around a policy either. Configured by environment variable or by a file, because ihasmail's own production runs read-only with no volume: an installation that cannot mount a file can still set a variable. Keys this build does not have are dropped, the same rule an imported settings file already gets -- a policy written against a newer ihasmail must not put a setting nothing reads into everybody's synced settings file. Malformed JSON stops the server rather than quietly doing nothing, since a policy that silently did not apply is indistinguishable from the feature not working. Tier three -- enforcing a setting once while still letting readers change it afterwards -- is not here. It needs a decision the reporter and I have not made yet, and it is the only part that stores anything new. Refs #207.
1093 lines
65 KiB
TypeScript
1093 lines
65 KiB
TypeScript
import type { Catalog } from "@/lib/i18n";
|
||
|
||
/**
|
||
* Chinese (Simplified) — generated by AI, and not reviewed by a native speaker.
|
||
*
|
||
* Marked Beta, with the report link doing the job a native speaker would. A
|
||
* missing string renders its English source, so deleting a bad entry is a
|
||
* valid fix.
|
||
*
|
||
* ── Decisions this file is consistent about ──────────────────────────────
|
||
*
|
||
* This is Simplified Chinese, and the tag says so. It is not a stand-in for
|
||
* Traditional: the script differs, and so does a good deal of the software
|
||
* vocabulary — 软件 against 軟體, 文件 against 檔案, 网络 against 網路. A
|
||
* zh-Hant catalogue would be a separate file, not a conversion of this one,
|
||
* because converting the characters without changing the words produces text
|
||
* that is readable and obviously foreign.
|
||
*
|
||
* Plurals: there are none. `Intl.PluralRules("zh-Hans")` returns `other` for
|
||
* every number, so each counted string carries a single form. That is not a
|
||
* gap in the catalogue — it is the language, and the machinery handles it by
|
||
* asking rather than assuming. Measure characters, not words: Chinese has no
|
||
* spaces, so a string that fits in English can be wider or much narrower here.
|
||
*
|
||
* Register: **您** where the reader is addressed directly. Chinese interfaces
|
||
* usually drop the pronoun entirely and most of this file does, which sidesteps
|
||
* the choice; 您 rather than 你 in the sentences that cannot, matching the
|
||
* formal address every other catalogue took.
|
||
*
|
||
* Terminology, fixed once so it cannot drift:
|
||
*
|
||
* Inbox 收件箱 Archive (verb) 归档
|
||
* Drafts 草稿 Delete 删除
|
||
* Sent 已发送 Move to 移动到
|
||
* Deleted Items 已删除邮件 Reply 回复
|
||
* Junk / Spam 垃圾邮件 Reply all 全部回复
|
||
* Folder 文件夹 Forward 转发
|
||
* Label 标签 Star 标星
|
||
* Conversation 会话 Read / unread 已读 / 未读
|
||
* Message 邮件 Settings 设置
|
||
* Attachment 附件 Signature 签名
|
||
* Contact 联系人 Identity 发件身份
|
||
*
|
||
* Product names are never translated: ihasmail, Stalwart, JMAP, Sieve, vCard.
|
||
*/
|
||
export const catalog: Catalog = {
|
||
strings: {
|
||
"Set for everyone here. You cannot change this.": "已为此处所有人设定,您无法更改。",
|
||
"Export iCAL file": "导出 iCAL 文件",
|
||
"Could not export this calendar: {error}": "无法导出此日历:{error}",
|
||
// ── Actions ────────────────────────────────────────────────────────
|
||
"Archive": "归档",
|
||
"Archive (e)": "归档 (e)",
|
||
"Delete": "删除",
|
||
"Delete (#)": "删除 (#)",
|
||
"Reply": "回复",
|
||
"Reply (r)": "回复 (r)",
|
||
"Reply all": "全部回复",
|
||
"Forward": "转发",
|
||
"Move to…": "移动到…",
|
||
"Move to (v)": "移动到 (v)",
|
||
"Move to folder": "移动到文件夹",
|
||
"Move here": "移动到这里",
|
||
"Mark as read": "标为已读",
|
||
"Mark as read (Shift+I)": "标为已读 (Shift+I)",
|
||
"Mark as unread": "标为未读",
|
||
"Mark as unread (Shift+U)": "标为未读 (Shift+U)",
|
||
"Mark all as read": "全部标为已读",
|
||
"Mark all as read, incl. subfolders": "全部标为已读,含子文件夹",
|
||
"Star": "标星",
|
||
"Labels": "标签",
|
||
"Labels (l)": "标签 (l)",
|
||
"Label as": "添加标签",
|
||
"Label…": "标签…",
|
||
"Compose": "写邮件",
|
||
"Compose message": "写新邮件",
|
||
"Send": "发送",
|
||
"Send at": "发送时间",
|
||
"Cancel send": "取消发送",
|
||
"Schedule send": "定时发送",
|
||
"Save": "保存",
|
||
"Save & activate": "保存并启用",
|
||
"Save & close (Esc)": "保存并关闭 (Esc)",
|
||
"Save as template": "另存为模板",
|
||
"Save draft now": "立即保存草稿",
|
||
"Cancel": "取消",
|
||
"Close": "关闭",
|
||
"Done": "完成",
|
||
"Continue": "继续",
|
||
"Edit": "编辑",
|
||
"Edit…": "编辑…",
|
||
"Rename": "重命名",
|
||
"Remove": "移除",
|
||
"Restore": "恢复",
|
||
"Retry": "重试",
|
||
"Reload": "重新加载",
|
||
"Refresh": "刷新",
|
||
"Copy": "复制",
|
||
"Copy email address": "复制邮箱地址",
|
||
"Download": "下载",
|
||
"Download all": "全部下载",
|
||
"Download (.eml)": "下载 (.eml)",
|
||
"Download latest as .eml": "将最新一封下载为 .eml",
|
||
"Upload": "上传",
|
||
"Upload files…": "上传文件…",
|
||
"Print": "打印",
|
||
"Print conversation": "打印会话",
|
||
"Undo (Ctrl+Z)": "撤销 (Ctrl+Z)",
|
||
"Redo": "重做",
|
||
"Dismiss": "关闭",
|
||
"Discard changes": "放弃更改",
|
||
"Discard draft": "放弃草稿",
|
||
"Duplicate": "创建副本",
|
||
"Validate": "检查",
|
||
"Revoke": "吊销",
|
||
"Turn off": "关闭",
|
||
"Clear": "清空",
|
||
"Clear selection": "取消选择",
|
||
"Clear custom colour": "清除自定义颜色",
|
||
"Select": "选择",
|
||
"Select all": "全选",
|
||
"Unsubscribe": "退订",
|
||
"Share…": "共享…",
|
||
"Stop sharing": "停止共享",
|
||
"Open": "打开",
|
||
"Open in new tab": "在新标签页中打开",
|
||
"Open in calendar": "在日历中打开",
|
||
"Back": "返回",
|
||
"Back (u)": "返回 (u)",
|
||
"Back to list": "返回列表",
|
||
"Back to my files": "返回我的文件",
|
||
"Go back to the list": "返回列表",
|
||
"Next": "下一个",
|
||
"Previous": "上一个",
|
||
"More": "更多",
|
||
"More actions": "更多操作",
|
||
"More options": "更多选项",
|
||
"Move up": "上移",
|
||
"Move down": "下移",
|
||
"Drag to reorder": "拖动以调整顺序",
|
||
"Right-click for options": "右键查看选项",
|
||
|
||
// ── Mail ───────────────────────────────────────────────────────────
|
||
"Mail": "邮件",
|
||
"Message": "邮件",
|
||
"Messages": "邮件",
|
||
"Message body": "邮件正文",
|
||
"Message headers": "邮件头",
|
||
"Message size": "邮件大小",
|
||
"Message-ID": "Message-ID",
|
||
"Original message": "原始邮件",
|
||
"Delete this message": "删除这封邮件",
|
||
"New message to this address": "写邮件到该地址",
|
||
"Conversation view": "会话视图",
|
||
"Draft": "草稿",
|
||
"Unread": "未读",
|
||
"Unread only": "仅未读",
|
||
"All mail": "全部邮件",
|
||
"Sender": "发件人",
|
||
"Sender domain": "发件人域名",
|
||
"Recipients": "收件人",
|
||
"From": "发件人",
|
||
"To": "收件人",
|
||
"Cc": "抄送",
|
||
"Bcc": "密送",
|
||
"Subject": "主题",
|
||
"Subject (optional)": "主题(可选)",
|
||
"Body": "正文",
|
||
"Body text": "正文文本",
|
||
"Attach files": "添加附件",
|
||
"Attach from Files": "从「文件」添加附件",
|
||
"Remove attachment": "移除附件",
|
||
"Has attachment": "含附件",
|
||
"Has the words": "包含字词",
|
||
"Header name": "邮件头名称",
|
||
"Show headers": "显示邮件头",
|
||
"Show original": "显示原始邮件",
|
||
"Show details": "显示详情",
|
||
"Show images": "显示图片",
|
||
"Remote images": "外部图片",
|
||
"Remote images are blocked to protect your privacy.": "为保护您的隐私,外部图片已被拦截。",
|
||
"Always from {email}": "始终显示来自 {email} 的图片",
|
||
"This looks like a mailing list.": "这看起来是一封邮件列表邮件。",
|
||
"This folder is empty": "此文件夹为空",
|
||
"This folder is empty.": "此文件夹为空。",
|
||
"Delete all spam now": "立即删除全部垃圾邮件",
|
||
"Deleting spam is permanent — it does not go to Deleted Items first.": "删除垃圾邮件不可恢复,不会先移入已删除邮件。",
|
||
"Keep in Inbox": "保留在收件箱",
|
||
"Newer (k)": "较新 (k)",
|
||
"Older (j)": "较旧 (j)",
|
||
"Open the next (older) conversation": "打开下一个(较旧的)会话",
|
||
"Open the previous (newer) conversation": "打开上一个(较新的)会话",
|
||
"Loading conversation…": "正在加载会话…",
|
||
"Important": "重要",
|
||
"Unverified": "未验证",
|
||
"Priority": "优先级",
|
||
"High": "高",
|
||
"Normal": "普通",
|
||
"Low": "低",
|
||
"to {recipients}": "收件人:{recipients}",
|
||
"From: {sender}": "发件人:{sender}",
|
||
"Waiting on the server — goes out {when}.": "正在服务器上等待,将于 {when} 发出。",
|
||
"Scheduled — click to clear the schedule": "已定时,点击可取消定时",
|
||
"Nothing scheduled": "没有定时邮件",
|
||
"The message waits on the server, so it goes out whether or not ihasmail is open.": "邮件在服务器上等待,无论 ihasmail 是否打开都会发出。",
|
||
"This server holds a message for up to {span}.": "此服务器最多可将邮件保留 {span}。",
|
||
"Date and time to send": "发送日期和时间",
|
||
"Undo send window": "撤销发送时限",
|
||
"Read receipt requested": "已请求已读回执",
|
||
"The sender asked for a read receipt.": "发件人请求了已读回执。",
|
||
"Request read receipt": "请求已读回执",
|
||
"Always request read receipts": "始终请求已读回执",
|
||
"Receipt": "回执",
|
||
"Never send one": "从不发送",
|
||
"Not this time": "这次不发送",
|
||
"It would go to {address}, which is not where the message came from.": "回执会发往 {address},而邮件并非来自该地址。",
|
||
"Use “Show original” for the complete raw message.": "使用「显示原始邮件」查看完整原文。",
|
||
|
||
// ── Folders, calendar, contacts, files ─────────────────────────────
|
||
"Folder": "文件夹",
|
||
"Folders": "文件夹",
|
||
"Folder options": "文件夹选项",
|
||
"New folder": "新建文件夹",
|
||
"New subfolder": "新建子文件夹",
|
||
"Open subfolders of {name}": "打开{name}的子文件夹",
|
||
"Delete folder": "删除文件夹",
|
||
"No matching folders": "没有匹配的文件夹",
|
||
"No subfolders here.": "这里没有子文件夹。",
|
||
"Type a folder name…": "输入文件夹名称…",
|
||
"+ New folder…": "+ 新建文件夹…",
|
||
"Create, rename and hide folders.": "创建、重命名和隐藏文件夹。",
|
||
"Show unsubscribed (hidden) folders": "显示未订阅(隐藏)的文件夹",
|
||
"Storage: {used} of {total} used.": "存储空间:已用 {used},共 {total}。",
|
||
"{used} of {total}": "{used} / {total}",
|
||
|
||
"Calendar": "日历",
|
||
"My calendars": "我的日历",
|
||
"New calendar": "新建日历",
|
||
"Calendar options": "日历选项",
|
||
"Calendar & contacts": "日历与联系人",
|
||
"Calendar is not available": "日历不可用",
|
||
"Event": "日程",
|
||
"New event": "新建日程",
|
||
"Create event…": "创建日程…",
|
||
"(new event)": "(新建日程)",
|
||
"New all-day event": "新建全天日程",
|
||
"Add title": "添加标题",
|
||
"Add location": "添加地点",
|
||
"Add to calendar": "添加到日历",
|
||
"Add to my calendar": "添加到我的日历",
|
||
"Remove from calendar": "从日历中移除",
|
||
"Remove from my calendar": "从我的日历中移除",
|
||
"All day": "全天",
|
||
"all-day": "全天",
|
||
"Starts": "开始",
|
||
"Starts (optional)": "开始(可选)",
|
||
"Ends": "结束",
|
||
"Ends (optional)": "结束(可选)",
|
||
"Day": "日",
|
||
"Week": "周",
|
||
"Month": "月",
|
||
"Agenda": "日程列表",
|
||
"Today": "今天",
|
||
"Go to day": "转到某天",
|
||
"Go to week": "转到某周",
|
||
"Previous month": "上个月",
|
||
"Next month": "下个月",
|
||
"Does not repeat": "不重复",
|
||
"Daily": "每天",
|
||
"Every weekday": "每个工作日",
|
||
"Yearly": "每年",
|
||
"Custom…": "自定义…",
|
||
"Weekly on {weekday}": "每周{weekday}",
|
||
"Monthly on day {day}": "每月 {day} 日",
|
||
"Repeat every": "重复间隔",
|
||
"Repeat until": "重复至",
|
||
"after N times": "重复 N 次后",
|
||
"on date": "到指定日期",
|
||
"never": "永不",
|
||
"day(s)": "天",
|
||
"week(s)": "周",
|
||
"month(s)": "个月",
|
||
"year(s)": "年",
|
||
"Reminders": "提醒",
|
||
"Add reminder": "添加提醒",
|
||
"Remove reminder": "移除提醒",
|
||
"Default reminder": "默认提醒",
|
||
"At time of event": "日程开始时",
|
||
"5 minutes before": "提前 5 分钟",
|
||
"10 minutes before": "提前 10 分钟",
|
||
"15 minutes before": "提前 15 分钟",
|
||
"30 minutes before": "提前 30 分钟",
|
||
"1 hour before": "提前 1 小时",
|
||
"1 day before": "提前 1 天",
|
||
"15 minutes": "15 分钟",
|
||
"30 minutes": "30 分钟",
|
||
"45 minutes": "45 分钟",
|
||
"1 hour": "1 小时",
|
||
"1.5 hours": "1.5 小时",
|
||
"2 hours": "2 小时",
|
||
"Default event length": "默认日程时长",
|
||
"Default view": "默认视图",
|
||
"Guests": "参与者",
|
||
"Add guests by name or email": "按姓名或邮箱添加参与者",
|
||
"Send invitation emails to guests": "向参与者发送邀请邮件",
|
||
"Going?": "是否参加?",
|
||
"Yes": "参加",
|
||
"No": "不参加",
|
||
"Maybe": "待定",
|
||
"Confirmed": "已确认",
|
||
"Tentative": "待定",
|
||
"Cancelled": "已取消",
|
||
"organizer": "组织者",
|
||
"Organizer: {name}": "组织者:{name}",
|
||
"Free": "空闲",
|
||
"Busy": "忙碌",
|
||
"Free/busy": "忙闲状态",
|
||
"Show as": "显示为",
|
||
"Availability on {date}": "{date} 的忙闲状态",
|
||
"Count all events as busy": "所有日程都计为忙碌",
|
||
"Only events I'm attending": "仅我参加的日程",
|
||
"Don't include in availability": "不计入忙闲状态",
|
||
"Meeting link": "会议链接",
|
||
"No events in the next 60 days.": "未来 60 天内没有日程。",
|
||
"Working hours": "工作时间",
|
||
"Working hours start": "工作时间开始",
|
||
"Working hours end": "工作时间结束",
|
||
"Colour categories": "颜色分类",
|
||
"Category": "分类",
|
||
"No category": "无分类",
|
||
"New category": "新建分类",
|
||
"Delete category": "删除分类",
|
||
"Manage categories…": "管理分类…",
|
||
"Use category color": "使用分类颜色",
|
||
"Use calendar color": "使用日历颜色",
|
||
"Use the default colour": "使用默认颜色",
|
||
"+{n} more": "还有 {n} 项",
|
||
|
||
"Contacts": "联系人",
|
||
"Contacts are not available": "联系人不可用",
|
||
"New contact": "新建联系人",
|
||
"Edit contact": "编辑联系人",
|
||
"Select a contact": "选择联系人",
|
||
"All contacts": "全部联系人",
|
||
"Search contacts": "搜索联系人",
|
||
"Search contacts to add…": "搜索要添加的联系人…",
|
||
"Loading contacts…": "正在加载联系人…",
|
||
"Add to contacts": "添加到联系人",
|
||
"Add to my contacts": "添加到我的联系人",
|
||
"Remove from my contacts": "从我的联系人中移除",
|
||
"Address book": "通讯录",
|
||
"Address books": "通讯录",
|
||
"All address books": "全部通讯录",
|
||
"My address books": "我的通讯录",
|
||
"New address book": "新建通讯录",
|
||
"No address books yet.": "还没有通讯录。",
|
||
"Choose from address books": "从通讯录中选择",
|
||
"Import vCard": "导入 vCard",
|
||
"Export all contacts": "导出所有联系人",
|
||
"Export address book": "导出此通讯录",
|
||
"Import contacts…": "导入联系人…",
|
||
"Contact options": "联系人选项",
|
||
"Address book options": "通讯录选项",
|
||
"Email group": "给该群组写邮件",
|
||
"Email everyone": "给所有人写邮件",
|
||
"Members": "成员",
|
||
"Members ({count})": "成员({count})",
|
||
"Group": "群组",
|
||
"· group": "· 群组",
|
||
"Person": "个人",
|
||
"First name": "名",
|
||
"Last name": "姓",
|
||
"Middle name": "中间名",
|
||
"More name fields": "更多姓名字段",
|
||
"Nickname": "昵称",
|
||
"Prefix": "称谓",
|
||
"Suffix": "后缀",
|
||
"Dr.": "博士",
|
||
"Jr.": "小",
|
||
"Display name": "显示名称",
|
||
"Job title": "职位",
|
||
"Organization": "组织",
|
||
"Company": "公司",
|
||
"Birthday": "生日",
|
||
"Notes": "备注",
|
||
"Website": "网站",
|
||
"Phone": "电话",
|
||
"Add phone": "添加电话",
|
||
"Add email": "添加邮箱",
|
||
"Add address": "添加地址",
|
||
"Address": "地址",
|
||
"Street": "街道",
|
||
"City": "城市",
|
||
"State / Region": "省 / 地区",
|
||
"Postal code": "邮政编码",
|
||
"Country": "国家/地区",
|
||
"Change photo": "更换照片",
|
||
"Remove photo": "移除照片",
|
||
"Updated {date}": "更新于 {date}",
|
||
"Modified": "修改时间",
|
||
"Search names and addresses": "搜索姓名和地址",
|
||
"Add a person or group…": "添加个人或群组…",
|
||
"Choose recipients": "选择收件人",
|
||
"Available to add": "可添加",
|
||
"vCard": "vCard",
|
||
"vCard attachment": "vCard 附件",
|
||
|
||
"Files": "文件",
|
||
"My files": "我的文件",
|
||
"File storage is not available": "文件存储不可用",
|
||
"Drag files here or use Upload.": "将文件拖到此处,或点击「上传」。",
|
||
"Shared": "已共享",
|
||
"Shared with me": "与我共享",
|
||
"Nothing is shared with you.": "没有人与您共享内容。",
|
||
"Not shared with anyone yet.": "尚未与任何人共享。",
|
||
"Check for new shares": "检查新的共享",
|
||
"Shared files are copied to your account when attached.": "添加为附件时,共享文件会复制到您的账户。",
|
||
"Viewer": "查看",
|
||
"Editor": "编辑",
|
||
"Size": "大小",
|
||
"Add files": "添加文件",
|
||
"Minimize": "最小化",
|
||
|
||
// ── Settings ───────────────────────────────────────────────────────
|
||
"Settings": "设置",
|
||
"All settings": "全部设置",
|
||
"Sections": "分区",
|
||
"General": "常规",
|
||
"Appearance": "外观",
|
||
"Make ihasmail yours.": "把 ihasmail 调成您喜欢的样子。",
|
||
"Reading": "阅读",
|
||
"Reading pane": "阅读窗格",
|
||
"Reading, sending and list behaviour. Settings are stored in this browser.": "阅读、发送和列表行为。设置保存在此浏览器中。",
|
||
"Right of the list": "列表右侧",
|
||
"Below the list": "列表下方",
|
||
"Hidden (open full width)": "隐藏(全宽打开)",
|
||
"Off (open messages full width)": "关闭(邮件全宽打开)",
|
||
"Off": "关闭",
|
||
"Composing": "写邮件",
|
||
"Default format": "默认格式",
|
||
"Rich text (HTML)": "富文本 (HTML)",
|
||
"Plain text": "纯文本",
|
||
"Quote original message in replies": "回复时引用原邮件",
|
||
"Place signature above quoted text": "将签名放在引用文本上方",
|
||
"Attachment reminder": "附件提醒",
|
||
"Warn when the message mentions an attachment but none is attached.": "邮件提到附件但未添加时提醒。",
|
||
"Spell check while typing": "输入时检查拼写",
|
||
"Confirm before deleting": "删除前确认",
|
||
"Show message snippets": "显示邮件摘要",
|
||
"Preview the first line of each message in the list.": "在列表中显示每封邮件的首行。",
|
||
"Show sender avatars": "显示发件人头像",
|
||
"Group messages from the same thread together.": "将同一会话的邮件归为一组。",
|
||
"After archiving or deleting": "归档或删除后",
|
||
"Ask before showing (recommended)": "显示前询问(推荐)",
|
||
"Always (all messages)": "始终显示(全部邮件)",
|
||
"Show automatically from my contacts": "联系人的邮件自动显示",
|
||
"Immediately when opened": "打开时立即标记",
|
||
"After 2 seconds": "2 秒后",
|
||
"After 5 seconds": "5 秒后",
|
||
"Never automatically": "从不自动标记",
|
||
"When someone requests a read receipt": "当有人请求已读回执时",
|
||
"Ask me on each message": "每封邮件都询问我",
|
||
"5 seconds": "5 秒",
|
||
"8 seconds": "8 秒",
|
||
"15 seconds": "15 秒",
|
||
"30 seconds": "30 秒",
|
||
"Locale": "区域",
|
||
"Language": "语言",
|
||
"Interface language": "界面语言",
|
||
"Language & region": "语言和地区",
|
||
"Date format": "日期格式",
|
||
"Time format": "时间格式",
|
||
"Time zone": "时区",
|
||
"Week starts on": "每周开始于",
|
||
"Monday": "星期一",
|
||
"Tuesday": "星期二",
|
||
"Wednesday": "星期三",
|
||
"Thursday": "星期四",
|
||
"Friday": "星期五",
|
||
"Saturday": "星期六",
|
||
"Sunday": "星期日",
|
||
"12-hour clock (6:23 PM)": "12 小时制 (6:23 PM)",
|
||
"24-hour clock (18:23)": "24 小时制 (18:23)",
|
||
"Browser default ({zone})": "浏览器默认({zone})",
|
||
"Default ({zone})": "默认({zone})",
|
||
"Automatic ({example})": "自动({example})",
|
||
"Automatic ({locale})": "自动({locale})",
|
||
"Automatic": "自动",
|
||
"Preview: {example}": "预览:{example}",
|
||
"Dates, times and month names follow this choice.": "日期、时间和月份名称将采用此设置。",
|
||
"Your mail server reports {name} ({tag}).": "您的邮件服务器报告为 {name}({tag})。",
|
||
"Your mail server does not report a locale, so the browser's is used.": "您的邮件服务器未报告语言,因此使用浏览器的设置。",
|
||
"Dates": "日期",
|
||
"Date": "日期",
|
||
"Time": "时间",
|
||
"When": "条件",
|
||
"Then": "则",
|
||
"then": "则",
|
||
"Theme": "主题",
|
||
"Accent color": "强调色",
|
||
"Color": "颜色",
|
||
"Colour": "颜色",
|
||
"Text color": "文字颜色",
|
||
"Density & text": "密度与文字",
|
||
"Display density": "显示密度",
|
||
"Comfortable": "宽松",
|
||
"Cozy (default)": "适中(默认)",
|
||
"Compact": "紧凑",
|
||
"Text size": "文字大小",
|
||
"Font size": "字号",
|
||
"Small": "小",
|
||
"Medium": "中",
|
||
"Large": "大",
|
||
"Huge": "特大",
|
||
"Sidebar": "侧边栏",
|
||
"Show labels in the sidebar": "在侧边栏中显示标签",
|
||
"Collapse sidebar to icons": "将侧边栏收起为图标",
|
||
"Apply the theme to messages too": "邮件也应用主题",
|
||
"Swiping": "滑动手势",
|
||
"Swipe left": "向左滑动",
|
||
"Swipe right": "向右滑动",
|
||
"Backup": "备份",
|
||
"Export settings": "导出设置",
|
||
"Import settings": "导入设置",
|
||
"Settings imported": "设置已导入",
|
||
"Invalid settings file": "设置文件无效",
|
||
"Reset to defaults": "恢复默认设置",
|
||
"Default mail app": "默认邮件应用",
|
||
"Documentation": "文档",
|
||
"About ihasmail": "关于 ihasmail",
|
||
"About": "关于",
|
||
"Server": "服务器",
|
||
"Server capabilities": "服务器功能",
|
||
"Accounts": "账户",
|
||
"Account": "账户",
|
||
"Max upload": "最大上传",
|
||
"{size} MB": "{size} MB",
|
||
"KB": "KB",
|
||
"Image privacy proxy": "图片隐私代理",
|
||
"enabled": "已启用",
|
||
"disabled": "已停用",
|
||
"Enabled": "已启用",
|
||
"active": "使用中",
|
||
"hidden": "已隐藏",
|
||
"connected": "已连接",
|
||
"reconnecting…": "正在重新连接…",
|
||
"AGPL-3.0 source": "AGPL-3.0 源代码",
|
||
|
||
// ── Identities, templates, filters ─────────────────────────────────
|
||
"Identities & signatures": "发件身份与签名",
|
||
"Add identity": "添加发件身份",
|
||
"Delete identity": "删除发件身份",
|
||
"Make default": "设为默认",
|
||
"Default": "默认",
|
||
"Show when composing": "写邮件时显示",
|
||
"Hide when composing": "写邮件时隐藏",
|
||
"Signature": "签名",
|
||
"Your signature…": "您的签名…",
|
||
"Reply-To": "回复地址",
|
||
"Reply-To (optional)": "回复地址(可选)",
|
||
"Reply-To: {addresses}": "回复地址:{addresses}",
|
||
"Replies go to…": "回复将发往…",
|
||
"Set a Reply-To address": "设置回复地址",
|
||
"{email} is now your default identity": "{email} 现在是您的默认发件身份",
|
||
"Templates": "模板",
|
||
"New template": "新建模板",
|
||
"Delete template": "删除模板",
|
||
"Insert template": "插入模板",
|
||
"Template text…": "模板内容…",
|
||
"Subject: {subject}": "主题:{subject}",
|
||
"Filters & rules": "过滤器与规则",
|
||
"Filters unavailable": "过滤器不可用",
|
||
"Rules": "规则",
|
||
"Rule name": "规则名称",
|
||
"New rule": "新建规则",
|
||
"Delete rule": "删除规则",
|
||
"No filters yet": "还没有过滤器",
|
||
"Add condition": "添加条件",
|
||
"Remove condition": "移除条件",
|
||
"Add action": "添加操作",
|
||
"Remove action": "移除操作",
|
||
"all of the following match": "满足以下全部条件",
|
||
"any of the following match": "满足以下任一条件",
|
||
"contains": "包含",
|
||
"does not contain": "不包含",
|
||
"is": "等于",
|
||
"is not": "不等于",
|
||
"matches (wildcards * ?)": "匹配(通配符 * ?)",
|
||
"does not match": "不匹配",
|
||
"matches regex": "匹配正则表达式",
|
||
"does not match regex": "不匹配正则表达式",
|
||
"exists": "存在",
|
||
"does not exist": "不存在",
|
||
"is larger than": "大于",
|
||
"is smaller than": "小于",
|
||
"Stop processing more rules": "停止处理后续规则",
|
||
"keep copy": "保留副本",
|
||
"Forward to": "转发到",
|
||
"Reject with message": "拒收并回复消息",
|
||
"Scripts": "脚本",
|
||
"Scripts (advanced)": "脚本(高级)",
|
||
"Script name": "脚本名称",
|
||
"New script": "新建脚本",
|
||
"Delete script": "删除脚本",
|
||
"Sieve source": "Sieve 源码",
|
||
"Preview generated Sieve script": "预览生成的 Sieve 脚本",
|
||
"Start with rules": "改用规则",
|
||
"Switch to rules?": "切换到规则?",
|
||
"Create filter": "创建过滤器",
|
||
"Filter messages like this": "过滤类似邮件",
|
||
"Filter messages like this…": "过滤类似邮件…",
|
||
"Also apply to existing messages in": "同时应用于以下位置的现有邮件",
|
||
"keyword (e.g. $important, work)": "关键词(例如 $important、work)",
|
||
"Other header…": "其他邮件头…",
|
||
"Out of office": "外出自动回复",
|
||
"Auto-reply enabled": "自动回复已启用",
|
||
|
||
// ── Security, sessions, sign-in ────────────────────────────────────
|
||
"Security & sessions": "安全与会话",
|
||
"Password": "密码",
|
||
"Your password": "您的密码",
|
||
"Current password": "当前密码",
|
||
"New password": "新密码",
|
||
"Confirm new password": "确认新密码",
|
||
"Current code": "当前验证码",
|
||
"Code from your authenticator": "身份验证器中的验证码",
|
||
"Two-factor authentication": "两步验证",
|
||
"Turn off two-factor authentication": "关闭两步验证",
|
||
"Your password alone will be enough to sign in again.": "之后仅凭密码即可重新登录。",
|
||
"App passwords": "应用专用密码",
|
||
"New app password for": "新建应用专用密码,用于",
|
||
"Your new app password": "您的新应用专用密码",
|
||
"Secret": "密钥",
|
||
"Thunderbird on my laptop": "笔记本上的 Thunderbird",
|
||
"Active webmail sessions": "活跃的网页邮箱会话",
|
||
"Sign out": "退出登录",
|
||
"Sign out here": "在此退出登录",
|
||
"Sign out all other sessions": "退出所有其他会话",
|
||
"Signed in as": "已登录为",
|
||
"This is my own device": "这是我自己的设备",
|
||
"this device": "当前设备",
|
||
"Device": "设备",
|
||
"IP": "IP",
|
||
"Last active": "最后活动",
|
||
"Created": "创建时间",
|
||
"Expires": "过期时间",
|
||
"Status": "状态",
|
||
"Online": "在线",
|
||
"Reason": "原因",
|
||
"Type": "类型",
|
||
"Email or username": "邮箱或用户名",
|
||
"Use your usual address as the username.": "用户名请使用您平时的邮箱地址。",
|
||
"Fast, friendly webmail. Your mailbox, your way.": "快速、友好的网页邮箱。您的邮箱,随您安排。",
|
||
|
||
// ── Notifications ──────────────────────────────────────────────────
|
||
"Notifications": "通知",
|
||
"Notifications are blocked in your browser settings.": "浏览器设置中已阻止通知。",
|
||
"Not supported in this browser.": "此浏览器不支持。",
|
||
"Desktop notifications while ihasmail is open": "打开 ihasmail 时显示桌面通知",
|
||
"Notify me even when ihasmail is closed": "关闭 ihasmail 后也通知我",
|
||
"Play a sound for new mail": "新邮件提示音",
|
||
"Test notification": "测试通知",
|
||
"Background notifications are on": "后台通知已开启",
|
||
"The tab title and favicon always show your unread Inbox count.": "标签页标题和图标始终显示收件箱的未读数量。",
|
||
"Live updates are delivered via JMAP push ({state}).": "实时更新通过 JMAP 推送送达({state})。",
|
||
"Shows a system notification when new mail arrives in your Inbox while the tab is in the background.": "当标签页在后台且收件箱收到新邮件时,显示系统通知。",
|
||
|
||
// ── Editor ─────────────────────────────────────────────────────────
|
||
"Formatting": "格式",
|
||
"Formatting options": "格式选项",
|
||
"Remove formatting": "清除格式",
|
||
"Bold (Ctrl+B)": "加粗 (Ctrl+B)",
|
||
"Italic (Ctrl+I)": "斜体 (Ctrl+I)",
|
||
"Underline (Ctrl+U)": "下划线 (Ctrl+U)",
|
||
"Strikethrough": "删除线",
|
||
"Highlight": "突出显示",
|
||
"Bulleted list": "项目符号列表",
|
||
"Numbered list": "编号列表",
|
||
"Increase indent": "增加缩进",
|
||
"Decrease indent": "减少缩进",
|
||
"Align left": "左对齐",
|
||
"Align right": "右对齐",
|
||
"Center": "居中",
|
||
"Quote": "引用",
|
||
"Code block": "代码块",
|
||
"Normal text": "正文",
|
||
"Insert link (Ctrl+K)": "插入链接 (Ctrl+K)",
|
||
"Insert image": "插入图片",
|
||
"Link": "链接",
|
||
"List": "列表",
|
||
"Emoji": "表情符号",
|
||
"Write your message…": "写下您的邮件…",
|
||
|
||
// ── Search, shortcuts, generic labels ──────────────────────────────
|
||
"Search": "搜索",
|
||
"Search mail": "搜索邮件",
|
||
"Advanced search": "高级搜索",
|
||
"Keyboard shortcuts": "键盘快捷键",
|
||
"Keyboard shortcuts (?)": "键盘快捷键 (?)",
|
||
"Shortcuts": "快捷键",
|
||
"Go to": "转到",
|
||
"Menu": "菜单",
|
||
"Close menu": "关闭菜单",
|
||
"Options": "选项",
|
||
"Send options": "发送选项",
|
||
"Name": "名称",
|
||
"Email": "邮箱",
|
||
"Email address": "邮箱地址",
|
||
"Description": "说明",
|
||
"Location": "地点",
|
||
"Visibility": "可见性",
|
||
"Private": "私密",
|
||
"Work": "工作",
|
||
"Loading…": "正在加载…",
|
||
"None": "无",
|
||
"optional": "可选",
|
||
"Always show": "始终显示",
|
||
"to": "收件人",
|
||
"Received": "接收时间",
|
||
"In-Reply-To": "In-Reply-To",
|
||
"References": "References",
|
||
|
||
// ── Labels ─────────────────────────────────────────────────────────
|
||
"Add label / keyword": "添加标签 / 关键词",
|
||
"Manage labels": "管理标签",
|
||
"Create “{name}”": "创建「{name}」",
|
||
"Type a name to create your first label.": "输入名称以创建您的第一个标签。",
|
||
"Labels are IMAP keywords stored on your messages, so they sync to other clients. Names and colours are kept in this browser.": "标签是保存在邮件上的 IMAP 关键词,因此会同步到其他客户端。名称和颜色则保存在此浏览器中。",
|
||
"New label": "新建标签",
|
||
"Delete label": "删除标签",
|
||
|
||
// ── Attachments, dates, search prose ───────────────────────────────
|
||
"PDF": "PDF",
|
||
"Large attachments may be rejected by some servers": "部分服务器可能拒收过大的附件",
|
||
"Images are stored in your Files (folder “ihasmail”) and embedded when you send.": "图片保存在您的「文件」中(文件夹「ihasmail」),并在发送时嵌入邮件。",
|
||
"After": "晚于",
|
||
"Before": "早于",
|
||
"Choose a date": "选择日期",
|
||
"Choose a date and time": "选择日期和时间",
|
||
"Pick date and time…": "选择日期和时间…",
|
||
"Search mail (from:, to:, subject:, has:attachment, is:unread, in:, before:, after:)": "搜索邮件 (from:, to:, subject:, has:attachment, is:unread, in:, before:, after:)",
|
||
"Settings → Filters & rules": "设置 → 过滤器与规则",
|
||
"Open the Mail view to see all shortcuts.": "打开邮件视图以查看全部快捷键。",
|
||
"Gmail-style shortcuts are always on. Press {key} anywhere to see this list.": "Gmail 风格的快捷键始终启用。在任意位置按 {key} 即可查看此列表。",
|
||
"Select a conversation to read it here · Press {key} for shortcuts": "选择一个会话即可在此阅读 · 按 {key} 查看快捷键",
|
||
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "提示:在会话上按 {key} 可添加标签。使用 {operator} 搜索。",
|
||
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "一款面向 {server} 的快速、友好的开源网页邮箱,基于 JMAP 构建。",
|
||
|
||
// ── Filters, vacation, capability notices ──────────────────────────
|
||
"Thanks for your message. I'm away until … and will reply when I'm back.": "感谢您的来信。我将外出至……,回来后会尽快回复。",
|
||
"Automatically reply to people who email you while you're away. Each sender gets at most one reply.": "在您外出期间自动回复来信的人。每位发件人最多收到一封回复。",
|
||
"Sort incoming mail automatically. Rules run on the server (Sieve), so they work for every client you use.": "自动整理收到的邮件。规则在服务器上运行(Sieve),因此对您使用的每个客户端都有效。",
|
||
"Canned responses you can insert into any message from the composer's template button.": "预设的回复内容,可在写邮件时通过模板按钮插入任意邮件。",
|
||
"Create a rule to move newsletters to a folder, flag important senders, or forward mail.": "创建规则,把订阅邮件移入文件夹、标记重要发件人或转发邮件。",
|
||
"Advanced: manage raw Sieve scripts. Only one script can be active at a time.": "高级:管理原始 Sieve 脚本。同一时间只能启用一个脚本。",
|
||
"Only part of your filter script arrived.": "您的过滤脚本只收到了一部分。",
|
||
"Your active script “{name}” was written by hand.": "您启用的脚本「{name}」是手动编写的。",
|
||
"Another script (“{name}”) is active. Saving rules here will activate the “ihasmail” script instead.": "另一个脚本(「{name}」)正在启用中。在此保存规则将改为启用「ihasmail」脚本。",
|
||
"“{name}” will be deactivated (not deleted) and a new “ihasmail” script will take over.": "「{name}」将被停用(不会删除),改由新的「ihasmail」脚本接管。",
|
||
"Sieve filtering is not available for this account.": "此账户不支持 Sieve 过滤。",
|
||
"Sieve filtering is not enabled for this account.": "此账户未启用 Sieve 过滤。",
|
||
"Vacation responses are not available for this account.": "此账户不支持外出自动回复。",
|
||
"This account does not have the JMAP calendars capability.": "此账户不具备 JMAP 日历功能。",
|
||
"This account does not have the JMAP contacts capability.": "此账户不具备 JMAP 联系人功能。",
|
||
"This account does not have the JMAP file storage capability.": "此账户不具备 JMAP 文件存储功能。",
|
||
"It {damage}, so the rules in it can't be shown or edited — saving what did arrive would write it back over the rest. Reload the page to try again. Your rules are still on the server; nothing here has changed them.": "它{damage},因此其中的规则无法显示或编辑——保存已收到的部分会覆盖掉其余内容。请重新加载页面再试一次。您的规则仍在服务器上,这里没有对它们做任何更改。",
|
||
"The visual rule editor only manages scripts it created. You can edit the script in the {tab} tab, or start fresh with rules (the existing script will be kept but deactivated).": "可视化规则编辑器只管理它自己创建的脚本。您可以在「{tab}」标签页中编辑脚本,或者改用规则重新开始(现有脚本会保留但被停用)。",
|
||
"Your filter script {damage}, so only part of it arrived. Adding a rule would write that part back over the whole thing. Reload the page and try again.": "您的过滤脚本{damage},因此只收到了一部分。添加规则会用这一部分覆盖整个脚本。请重新加载页面再试一次。",
|
||
"Your filter script couldn't be read just now, so adding a rule would risk overwriting it. Reload the page and try again.": "刚才无法读取您的过滤脚本,因此添加规则有覆盖它的风险。请重新加载页面再试一次。",
|
||
"Your active Sieve script was written by hand, so rules can't be added automatically. Open {where} to edit the script or switch to managed rules.": "您启用的 Sieve 脚本是手动编写的,因此无法自动添加规则。请打开 {where} 编辑脚本,或切换为受管理的规则。",
|
||
|
||
// ── Settings prose ─────────────────────────────────────────────────
|
||
"tell us about it": "告诉我们",
|
||
"This translation was generated by AI and has not been checked by a native speaker, so it is marked Beta until somebody who speaks it signs it off. Anything that reads wrongly is worth reporting — {report}.": "本翻译由 AI 生成,尚未经母语者校对,因此在有人校对签核之前会一直标记为 Beta。任何读起来不对的地方都值得反馈——{report}。",
|
||
"Only languages ihasmail has been translated into appear here, so this list grows as translations land rather than ahead of them — a language offered without strings behind it would leave the page claiming to be in a language it is not.": "这里只列出 ihasmail 已经翻译过的语言,因此列表会随着译文落地而增加,而不会提前出现——提供一种背后没有译文的语言,只会让页面声称自己使用着一种它并未使用的语言。",
|
||
"This is separate from {setting} in General, which decides how dates, times and numbers are written. You can read an English interface with German dates, or the other way round.": "这与「常规」中的{setting}是两回事,后者决定日期、时间和数字的写法。您可以用英文界面配德式日期,反过来也可以。",
|
||
"Defaults for the calendar views and new events.": "日历视图和新建日程的默认设置。",
|
||
"Replies will go to this address instead of the From address": "回复将发往此地址,而不是发件人地址",
|
||
"Replies to mail sent from this identity go here instead of the From address.": "使用此发件身份发出的邮件,其回复将发往这里,而不是发件人地址。",
|
||
"New identities must use an address this account is allowed to send from (aliases configured on the server).": "新建发件身份必须使用此账户获准发信的地址(在服务器上配置的别名)。",
|
||
"Not offered when composing. It still receives mail, and you can still send from it by showing it again.": "写邮件时不再提供此身份。它仍会接收邮件,重新显示后也仍可用于发信。",
|
||
"Each identity is a sender address with its own name, Reply-To and signature. The default identity is preselected when you compose; set a Reply-To when replies should go somewhere other than the From address.": "每个发件身份都是一个发件地址,拥有各自的名称、回复地址和签名。写邮件时会预先选中默认身份;若希望回复发往发件人地址以外的地方,请设置回复地址。",
|
||
"This signature is larger than the server's {limit}-byte limit. ihasmail will keep the full version in your Files and store a short text fallback on the server — other mail clients will see the plain-text version.": "此签名超出了服务器 {limit} 字节的限制。ihasmail 会把完整版本保存在您的「文件」中,并在服务器上存放一段简短的文本备用版——其他邮件客户端看到的将是纯文本版本。",
|
||
"Outlook-style categories you can assign to events from the right-click menu or the event editor. The category name is stored on the event, so it syncs to other clients.": "Outlook 风格的分类,可通过右键菜单或日程编辑器指定给日程。分类名称保存在日程上,因此会同步到其他客户端。",
|
||
"Plain-text mail already follows the theme. With this on, HTML mail that brings no colours of its own does as well, instead of sitting on a white card. Messages that style themselves are left exactly as the sender designed them.": "纯文本邮件本就会跟随主题。开启后,未自带配色的 HTML 邮件也会跟随主题,而不再显示在白色卡片上。自带样式的邮件则完全保持发件人设计的样子。",
|
||
"On a touchscreen, drag a message sideways to act on it. Each direction can do one thing, or nothing. These follow your account, so a phone and a tablet agree; a mouse ignores them and keeps dragging messages into folders instead.": "在触摸屏上,横向拖动邮件即可对其操作。每个方向可以执行一项操作,也可以什么都不做。这些设置跟随您的账户,因此手机和平板保持一致;鼠标不受影响,仍然是把邮件拖入文件夹。",
|
||
"This screen has no touchscreen, so nothing here changes what it does. Your phone or tablet will pick these up.": "此屏幕没有触摸屏,因此这里的设置不会改变它的行为。您的手机或平板会应用这些设置。",
|
||
"Holding a message selects it, and holding a folder opens its menu. Pull the top of the message list down to check for new mail.": "长按邮件可选中它,长按文件夹可打开其菜单。下拉邮件列表顶部即可检查新邮件。",
|
||
"A receipt tells whoever asked that this address is live and when the message was read, and the sender chooses where it goes — so there is no automatic option. Bulk mail, mailing lists and anything marked auto-submitted are never offered one at all.": "回执会告诉请求方这个地址确实有人在用,以及邮件是何时被读的,而回执发往何处由发件人指定——因此这里没有自动发送的选项。群发邮件、邮件列表以及任何标记为自动提交的邮件,一律不提供发送回执的选项。",
|
||
"This browser cannot register apps for {scheme} links. Safari, in particular, has no such API — you can still make ihasmail the default from your operating system if you install it as an app.": "此浏览器无法为 {scheme} 链接注册应用。Safari 尤其没有相应的接口——如果您把 ihasmail 安装为应用,仍可在操作系统中将它设为默认。",
|
||
"Registering for {scheme} links requires a secure (HTTPS) connection.": "注册 {scheme} 链接需要安全连接(HTTPS)。",
|
||
"Open {scheme} links — in web pages, documents and other apps — in ihasmail instead of a desktop mail client. Your browser will ask you to confirm, and you can change it later in its own settings (Chrome: Settings › Privacy and security › Site settings › Protocol handlers; Firefox: Settings › General › Applications).": "让网页、文档和其他应用中的 {scheme} 链接在 ihasmail 中打开,而不是桌面邮件客户端。浏览器会请您确认,之后也可以在浏览器自身的设置中更改(Chrome:设置 › 隐私和安全 › 网站设置 › 协议处理程序;Firefox:设置 › 常规 › 应用程序)。",
|
||
"Requested in this browser. Whether it took effect is up to the browser — check its settings if mail links still open elsewhere.": "已在此浏览器中提出请求。是否生效由浏览器决定——如果邮件链接仍在别处打开,请检查浏览器的设置。",
|
||
"For a system-wide default, install ihasmail as an app first (in Chrome: the install icon in the address bar). Your operating system can then offer ihasmail directly wherever it asks which mail app to use.": "若要设为系统级默认,请先把 ihasmail 安装为应用(在 Chrome 中:地址栏里的安装图标)。之后操作系统在询问使用哪个邮件应用时,就会直接提供 ihasmail。",
|
||
"Needs a browser with the Push API and a mail server that publishes a push key.": "需要支持 Push API 的浏览器,以及发布了推送密钥的邮件服务器。",
|
||
"Your mail server delivers these straight to your browser, so they arrive with no ihasmail tab open, naming the sender and subject. Your browser still has to be running — if you quit it completely, notifications wait and arrive when you open it again.": "您的邮件服务器会把通知直接送到浏览器,因此不必打开 ihasmail 标签页也能收到,并会显示发件人和主题。但浏览器仍需保持运行——如果完全退出浏览器,通知会等到您再次打开时送达。",
|
||
"Your mail server can wake this browser, but will not include the sender or subject. Your browser still has to be running.": "您的邮件服务器可以唤醒此浏览器,但不会包含发件人或主题。浏览器仍需保持运行。",
|
||
"This is what a new-mail notification looks like.": "新邮件通知就是这个样子。",
|
||
"You're signed in as {user}. Your password is never stored in the browser; the server keeps it encrypted per-session for talking to Stalwart.": "您当前以 {user} 登录。您的密码从不保存在浏览器中;服务器会按会话加密保存,用于与 Stalwart 通信。",
|
||
"App passwords are managed by your mail administrator.": "应用专用密码由您的邮件管理员管理。",
|
||
"Changing your password signs out your other webmail sessions. Any app passwords keep working.": "更改密码会让您的其他网页邮箱会话退出登录。已有的应用专用密码仍可继续使用。",
|
||
"This account has two-factor authentication on. ihasmail can't sign you in with a code yet, so signing in on another device needs an app password — or you can turn two-factor authentication off here.": "此账户已开启两步验证。ihasmail 目前还不能通过验证码登录,因此在其他设备上登录需要使用应用专用密码——您也可以在这里关闭两步验证。",
|
||
"A separate password for a mail app or device, which you can revoke on its own. App passwords skip two-factor codes, so they keep working in apps that can't ask for one.": "为某个邮件应用或设备单独设置的密码,可以单独吊销。应用专用密码会跳过两步验证码,因此在无法输入验证码的应用中仍然可用。",
|
||
"Copy it into {name} now — it isn't shown again.": "请立即把它复制到 {name}——它不会再次显示。",
|
||
"No other users found in the directory, so nobody new can be added. Sharing already in place is listed below and can still be removed.": "目录中没有找到其他用户,因此无法添加新的共享对象。已有的共享列在下方,仍可移除。",
|
||
"Stalwart does not publish its version number to mail clients, so ihasmail reports the edition where the server gives one. ihasmail requires 0.16 or newer, and sign-in refuses anything older.": "Stalwart 不会向邮件客户端公布版本号,因此只有在服务器给出版本类型时,ihasmail 才会报告它。ihasmail 需要 0.16 或更高版本,更旧的版本一律无法登录。",
|
||
"{name} is the palette from {site}, and what a new account starts on. It is a dark theme, so it counts as dark wherever that matters, and the accent colour below still applies on top of it.": "{name} 是 {site} 的配色,也是新账户的初始主题。它属于深色主题,因此在需要区分明暗的地方都算作深色,下方的强调色仍会叠加在它之上。",
|
||
"ihasmail's own version is the date of the commit it was built from, followed by where that commit came from: {example} was built from a commit dated the 30th of August 2026 that arrived through pull request 129. A commit that did not come through one carries its short SHA instead — {sha}. The version deliberately says nothing about Stalwart; what this build needs from the server is the line above.": "ihasmail 自身的版本号是其构建所用提交的日期,后面跟着该提交的来源:{example} 表示由 2026 年 8 月 30 日的一个提交构建而成,而该提交来自第 129 号拉取请求。未经拉取请求的提交则改用简短 SHA 表示——{sha}。版本号刻意不包含任何关于 Stalwart 的信息;此版本对服务器的要求见上一行。",
|
||
|
||
// ── Constant labels ────────────────────────────────────────────────
|
||
"Add": "添加",
|
||
"Create subfolders": "创建子文件夹",
|
||
"Dark": "深色",
|
||
"Light": "浅色",
|
||
"Match system": "跟随系统",
|
||
"Day.Month.Year": "日.月.年",
|
||
"Day/Month/Year": "日/月/年",
|
||
"Month/Day/Year": "月/日/年",
|
||
"Year-Month-Day (ISO 8601)": "年-月-日 (ISO 8601)",
|
||
"Edit all": "编辑全部",
|
||
"Edit contents": "编辑内容",
|
||
"Edit own": "编辑自己的",
|
||
"Flag": "标记",
|
||
"Mark read": "标为已读",
|
||
"Private props": "私密属性",
|
||
"Read": "读取",
|
||
"Read events": "查看日程",
|
||
"RSVP": "回复邀请",
|
||
"See free/busy": "查看忙闲状态",
|
||
"Share": "共享",
|
||
"Write": "写入",
|
||
"Live updates connected": "实时更新已连接",
|
||
"Live updates reconnecting…": "实时更新正在重新连接…",
|
||
"Live updates off — checking periodically instead": "实时更新已关闭——改为定期检查",
|
||
"Mark as read / unread": "标为已读 / 未读",
|
||
"Star / unstar": "标星 / 取消标星",
|
||
"Report spam / not spam": "举报垃圾邮件 / 取消举报",
|
||
"Report spam": "举报垃圾邮件",
|
||
"Not spam": "不是垃圾邮件",
|
||
"Nothing": "不执行任何操作",
|
||
"No conversation selected": "未选择会话",
|
||
"Drop here for the top level": "拖放到此处可移至顶层",
|
||
"Later today": "今天晚些时候",
|
||
"Tomorrow morning": "明天上午",
|
||
"Tomorrow afternoon": "明天下午",
|
||
"Monday morning": "周一上午",
|
||
"Open draft": "打开草稿",
|
||
"Undo": "撤销",
|
||
|
||
// ── Folder names (role folders only) ───────────────────────────────
|
||
"Deleted Items": "已删除邮件",
|
||
"folder\u0004Inbox": "收件箱",
|
||
"folder\u0004Archive": "归档",
|
||
"folder\u0004Drafts": "草稿",
|
||
"folder\u0004Sent": "已发送",
|
||
"folder\u0004Deleted Items": "已删除邮件",
|
||
"folder\u0004Junk Mail": "垃圾邮件",
|
||
"folder\u0004Important": "重要",
|
||
"folder\u0004All mail": "全部邮件",
|
||
"folder": "文件夹",
|
||
"“{name}” moved into “{parent}”": "「{name}」已移入「{parent}」",
|
||
"“{name}” moved to the top level": "「{name}」已移至顶层",
|
||
"Could not move “{name}”: {reason}": "无法移动「{name}」:{reason}",
|
||
"Delete “{name}”?": "删除「{name}」?",
|
||
"Rename folder": "重命名文件夹",
|
||
"Search: {query}": "搜索:{query}",
|
||
|
||
// ── Composer status, calendar title ────────────────────────────────
|
||
"New message": "新邮件",
|
||
"Sending…": "正在发送…",
|
||
"Saving…": "正在保存…",
|
||
"Error": "错误",
|
||
"Saved {when}": "已保存 {when}",
|
||
"Unsaved": "未保存",
|
||
"Agenda from {date}": "从 {date} 起的日程",
|
||
|
||
// ── Toasts, dialogs and computed labels (second extraction pass) ───
|
||
"(no subject)": "(无主题)",
|
||
"(skipped: {actions})": "(已跳过:{actions})",
|
||
"Activate": "启用",
|
||
"Add a contact or import a vCard file.": "添加联系人,或导入 vCard 文件。",
|
||
"Added to your calendar": "已添加到您的日历",
|
||
"All events in this calendar will be deleted.": "此日历中的所有日程都将被删除。",
|
||
"All occurrences": "所有重复日程",
|
||
"An occurrence cannot be moved to another calendar on its own": "单个重复日程无法单独移动到其他日历",
|
||
"Anything signed in with this password stops working immediately.": "使用此密码登录的一切将立即停止工作。",
|
||
"App password revoked": "应用专用密码已吊销",
|
||
"Applies to every date in the series.": "对该系列的所有日期生效。",
|
||
"Applies to this date only.": "仅对此日期生效。",
|
||
"Apply to series": "应用于整个系列",
|
||
"Applying filter to existing messages…": "正在对现有邮件应用过滤器…",
|
||
"Attachments are still uploading": "附件仍在上传中",
|
||
"Calendar saved": "日历已保存",
|
||
"Categorised as {name}": "已归入分类「{name}」",
|
||
"Category cleared": "已清除分类",
|
||
"Change this event?": "要修改此日程吗?",
|
||
"Choose a calendar": "请选择日历",
|
||
"Choose an address book": "请选择通讯录",
|
||
"Colour updated": "颜色已更新",
|
||
"Contact created": "联系人已创建",
|
||
"Contact deleted": "联系人已删除",
|
||
"Contact saved": "联系人已保存",
|
||
"Copied": "已复制",
|
||
"Copy of {title}": "{title} 的副本",
|
||
"Could not cancel: {error}": "无法取消:{error}",
|
||
"Could not copy": "无法复制",
|
||
"Could not copy the address": "无法复制该地址",
|
||
"Could not empty folder: {error}": "无法清空文件夹:{error}",
|
||
"Could not load source: {error}": "无法加载原文:{error}",
|
||
"Could not mark as read: {error}": "无法标为已读:{error}",
|
||
"Could not save draft: {error}": "无法保存草稿:{error}",
|
||
"Could not save filter: {error}": "无法保存过滤器:{error}",
|
||
"Could not save filters: {error}": "无法保存过滤器:{error}",
|
||
"Could not send the receipt: {error}": "无法发送已读回执:{error}",
|
||
"Could not sign in.": "无法登录。",
|
||
"Could not store image: {error}": "无法保存图片:{error}",
|
||
"Could not update labels: {error}": "无法更新标签:{error}",
|
||
"Could not update the Scheduled folder: {error}": "无法更新「定时发送」文件夹:{error}",
|
||
"Could not update: {error}": "无法更新:{error}",
|
||
"Create": "创建",
|
||
"Create an address book first": "请先创建通讯录",
|
||
"Custom colour removed": "已清除自定义颜色",
|
||
"Deactivate": "停用",
|
||
"Delete failed: {error}": "删除失败:{error}",
|
||
"Delete forever": "永久删除",
|
||
"Delete script “{name}”?": "删除脚本「{name}」?",
|
||
"Delete this event?": "删除此日程?",
|
||
"Delete this identity?": "删除此发件身份?",
|
||
"Delete {name}?": "删除 {name}?",
|
||
"Deleted": "已删除",
|
||
"Deletes the whole series. This cannot be undone.": "删除整个系列。此操作无法撤销。",
|
||
"Did you forget the attachment?": "您是不是忘了添加附件?",
|
||
"Discard": "放弃",
|
||
"Discard this draft?": "放弃此草稿?",
|
||
"Edit calendar": "编辑日历",
|
||
"Edit event": "编辑日程",
|
||
"Edit identity": "编辑发件身份",
|
||
"Edit template": "编辑模板",
|
||
"End must be after start": "结束时间必须晚于开始时间",
|
||
"Event duplicated": "日程已创建副本",
|
||
"Everything inside it goes too.": "其中的所有内容也会一并删除。",
|
||
"Filter created": "过滤器已创建",
|
||
"Filter created — it will run on new mail": "过滤器已创建——它将对新邮件生效",
|
||
"Filter saved": "过滤器已保存",
|
||
"Filter saved — it will run on new mail": "过滤器已保存——它将对新邮件生效",
|
||
"Filter saved, but applying it failed: {error}": "过滤器已保存,但应用失败:{error}",
|
||
"Filters saved": "过滤器已保存",
|
||
"Folder changed, but its filter rules could not be updated: {error}": "文件夹已修改,但其过滤规则无法更新:{error}",
|
||
"Folder created": "文件夹已创建",
|
||
"Folder deleted": "文件夹已删除",
|
||
"Folder name": "文件夹名称",
|
||
"Folder name (use / for a subfolder, e.g. Work/Invoices)": "文件夹名称(用 / 创建子文件夹,例如 工作/发票)",
|
||
"Folder name (use / for subfolders, e.g. Work/Invoices)": "文件夹名称(用 / 创建子文件夹,例如 工作/发票)",
|
||
"Folder “{name}” created": "文件夹「{name}」已创建",
|
||
"Forwarded": "已转发",
|
||
"Hand to the server, held until {when} (Ctrl+Enter)": "交给服务器保留至 {when} (Ctrl+Enter)",
|
||
"Hide": "隐藏",
|
||
"Hide quoted text": "隐藏引用文本",
|
||
"Hide this from the compose picker": "写邮件时不提供",
|
||
"Identity saved": "发件身份已保存",
|
||
"Images in signatures need the Files feature, which this account doesn't have.": "签名中的图片需要「文件」功能,而此账户没有该功能。",
|
||
"Invalid address: {address}": "地址无效:{address}",
|
||
"Invalid username or password.": "用户名或密码不正确。",
|
||
"It belongs to a change that was applied to this and all later occurrences, which the server will only edit as a whole. Apply to the entire series instead?": "它属于一项已应用于此日程及其后所有重复日程的修改,而服务器只能整体编辑这项修改。改为应用于整个系列吗?",
|
||
"Label name": "标签名称",
|
||
"Larger than {size} MB limit": "超过 {size} MB 的上限",
|
||
"Message sent": "邮件已发送",
|
||
"Move failed: {error}": "移动失败:{error}",
|
||
"Move “{name}”": "移动「{name}」",
|
||
"Moved": "已移动",
|
||
"Network error. Please check your connection.": "网络错误。请检查您的网络连接。",
|
||
"New all-day event on {date}": "在 {date} 新建全天日程",
|
||
"New event at {time}": "在 {time} 新建日程",
|
||
"New identity": "新建发件身份",
|
||
"No Archive folder is set yet.": "尚未设置归档文件夹。",
|
||
"Create one": "创建一个",
|
||
"Could not set up an Archive folder: {error}": "无法设置归档文件夹:{error}",
|
||
"Role": "角色",
|
||
"Drafts": "草稿",
|
||
"Sent": "已发送",
|
||
"The server does not allow this role to be changed.": "服务器不允许更改此角色。",
|
||
"Folder role updated": "已更新文件夹角色",
|
||
"No contacts yet": "还没有联系人",
|
||
"No longer shared": "已停止共享",
|
||
"No matches": "没有匹配项",
|
||
"No new mail in your inbox.": "收件箱中没有新邮件。",
|
||
"No results": "没有结果",
|
||
"Nothing here": "这里什么都没有",
|
||
"Only Deleted Items and Junk Mail can be emptied.": "只有已删除邮件和垃圾邮件可以清空。",
|
||
"Please add at least one recipient": "请至少添加一位收件人",
|
||
"Please use an image under 512 KB for signatures.": "签名请使用小于 512 KB 的图片。",
|
||
"Preview": "预览",
|
||
"Read receipt sent": "已读回执已发送",
|
||
"Remove attachments that failed to upload first": "请先移除上传失败的附件",
|
||
"Removed from calendar": "已从日历中移除",
|
||
"Removes this date and leaves the rest of the series.": "删除此日期,保留系列中的其余日程。",
|
||
"Rename address book": "重命名通讯录",
|
||
"Rename category": "重命名分类",
|
||
"Replied": "已回复",
|
||
"Report spam (!)": "举报垃圾邮件 (!)",
|
||
"Response sent": "回复已发送",
|
||
"Revoke “{name}”?": "吊销「{name}」?",
|
||
"Script has errors": "脚本存在错误",
|
||
"Script is valid": "脚本有效",
|
||
"Script name is required": "必须填写脚本名称",
|
||
"Script saved": "脚本已保存",
|
||
"Send (Ctrl+Enter)": "发送 (Ctrl+Enter)",
|
||
"Send anyway": "仍然发送",
|
||
"Send cancelled — the message is back in Drafts": "已取消发送——邮件已回到草稿箱",
|
||
"Send failed: {error}": "发送失败:{error}",
|
||
"Send invites": "发送邀请",
|
||
"Send scheduled for {when}": "已定时于 {when} 发送",
|
||
"Send without a subject?": "不填主题就发送吗?",
|
||
"Share “{name}”": "共享「{name}」",
|
||
"Sharing updated": "共享设置已更新",
|
||
"Show": "显示",
|
||
"Show quoted text": "显示引用文本",
|
||
"Show this in the compose picker": "写邮件时提供",
|
||
"Sign out other sessions?": "退出其他会话?",
|
||
"Sign out others": "退出其他",
|
||
"Stop sharing “{name}”?": "停止共享「{name}」?",
|
||
"Switch to {theme}": "切换到{theme}",
|
||
"Template": "模板",
|
||
"Template name": "模板名称",
|
||
"The contacts in it go too.": "其中的联系人也会一并删除。",
|
||
"The default identity is always offered when composing": "默认发件身份在写邮件时始终提供",
|
||
"The new passwords don't match": "两次输入的新密码不一致",
|
||
"The server scheduled this for {when}, not the time requested.": "服务器把发送时间定在了 {when},而不是您请求的时间。",
|
||
"This date cannot be changed on its own": "此日期无法单独修改",
|
||
"This occurrence": "仅此重复日程",
|
||
"Too many attempts. Please wait a few minutes and try again.": "尝试次数过多。请等待几分钟后再试。",
|
||
"Try another search.": "换个搜索词试试。",
|
||
"Try different keywords or filters.": "换些关键词或过滤条件试试。",
|
||
"Two-factor authentication is off": "两步验证已关闭",
|
||
"Undo window: {seconds}s": "撤销时限:{seconds} 秒",
|
||
"You're all caught up": "您已看完全部邮件",
|
||
"Your browser refused the request: {error}": "您的浏览器拒绝了该请求:{error}",
|
||
"Your browser will ask whether to open mail links in ihasmail": "浏览器会询问是否用 ihasmail 打开邮件链接",
|
||
"Your message mentions an attachment, but nothing is attached.": "您的邮件提到了附件,但没有添加任何附件。",
|
||
"event": "日程",
|
||
"Hide password": "隐藏密码",
|
||
"Show password": "显示密码",
|
||
"Settings reset to defaults": "设置已恢复为默认值",
|
||
"Removed. Mail links will open in whatever your browser falls back to.": "已移除。邮件链接将改由浏览器的后备程序打开。",
|
||
"Edit rule": "编辑规则",
|
||
"Address copied": "地址已复制",
|
||
"Search or create label": "搜索或创建标签",
|
||
"New label name": "新标签名称",
|
||
"That folder no longer exists. Showing your inbox instead.": "该文件夹已不存在,改为显示收件箱。",
|
||
"Labels updated": "标签已更新",
|
||
"Unsubscribe message prepared — just hit Send": "退订邮件已准备好——点击「发送」即可",
|
||
"Maximize": "最大化",
|
||
"Full screen": "全屏",
|
||
"Resize panes": "调整窗格大小",
|
||
"QR code": "二维码",
|
||
"Draft discarded": "草稿已放弃",
|
||
"Draft saved": "草稿已保存",
|
||
"Emptying folder…": "正在清空文件夹…",
|
||
"Nothing unread here": "这里没有未读邮件",
|
||
},
|
||
plurals: {
|
||
"Already here: {n} contacts, nothing imported": { other: "已存在 {n} 个,未导入" },
|
||
"All {n} are already in your contacts": { other: "这 {n} 个已在您的联系人中" },
|
||
"Exported {n} events": { other: "已导出 {n} 个日程" },
|
||
"Imported {n} events": { other: "已导入 {n} 个日程" },
|
||
"Already here: {n} events, nothing imported": { other: "已存在 {n} 个,未导入" },
|
||
"{n} were already here": { other: "{n} 个已存在" },
|
||
/*
|
||
* One form each, because Chinese has one. Intl.PluralRules returns `other`
|
||
* for every number, so `one`, `few` and `many` would never be selected —
|
||
* supplying them would be filling in a form the language does not have.
|
||
*/
|
||
"{n} messages": { other: "{n} 封邮件" },
|
||
"{n} conversations": { other: "{n} 个会话" },
|
||
"{n} selected": { other: "已选择 {n} 项" },
|
||
"{n} messages will be permanently deleted.": { other: "将永久删除 {n} 封邮件。" },
|
||
"Signed out {n} other sessions": { other: "已退出 {n} 个其他会话" },
|
||
"applied to {matched} of {n} messages": { other: "已对 {n} 封邮件中的 {matched} 封生效" },
|
||
"Move {n} messages to…": { other: "将 {n} 封邮件移动到…" },
|
||
"This permanently deletes the folder and its {n} messages.": { other: "这将永久删除该文件夹及其中的 {n} 封邮件。" },
|
||
"Added {n} contacts": { other: "已添加 {n} 位联系人" },
|
||
"{n} people will lose access. The contacts in it are not affected.": { other: "{n} 人将失去访问权限。其中的联系人不受影响。" },
|
||
"Imported {n} contacts": { other: "已导入 {n} 位联系人" },
|
||
"Saved for this date. {names} apply to the whole series and were left unchanged.": { other: "已为此日期保存。{names} 适用于整个系列,未作更改。" },
|
||
"{n} people will lose access. Events in it are not affected.": { other: "{n} 人将失去访问权限。其中的日程不受影响。" },
|
||
"{n} messages could not be deleted": { other: "有 {n} 封邮件无法删除" },
|
||
"({n} deleted first)": { other: "(已先删除 {n} 封)" },
|
||
"Marked {n} messages as read": { other: "已将 {n} 封邮件标为已读" },
|
||
"in {n} folders": { other: "在 {n} 个文件夹中" },
|
||
"Deleted {n} messages": { other: "已删除 {n} 封邮件" },
|
||
},
|
||
};
|