add zh-Hans basic localization for homepage

This commit is contained in:
n8fr8 2026-04-23 21:48:44 -04:00
parent 45c4463131
commit 809310f8dd
6 changed files with 491 additions and 1 deletions

374
www/i18n/zh-Hans/code.json Normal file
View file

@ -0,0 +1,374 @@
{
"home.title": {
"message": "介绍 Butter Box"
},
"home.subtitle1": {
"message": "让没有互联网的生活更顺畅。"
},
"home.subtitle2": {
"message": "获取有用的工具。"
},
"home.whatisbutterbox": {
"message": "应用商店、加密聊天等更多功能,均可通过离线树莓派的 WiFi 访问。"
},
"home.section1.title": {
"message": "它是如何工作的?"
},
"home.section1.description": {
"message": "Butter Box 会广播自己的 WiFi 网络。加入后,您可以安装 Butter、获取应用、加入公共聊天室或创建自己的私人聊天室与朋友分享。即使在没有互联网的情况下Butter Box 也能正常工作。只需到盒子附近下载更多应用或查看您的聊天室。所有内容都直接存储在 Butter Box 上。"
},
"home.learnmore": {
"message": "了解更多"
},
"home.getbutter.title": {
"message": "获取您自己的 Butter Box"
},
"home.getbutter.description": {
"message": "我们帮助制作 Butter Box 并运送到世界各地的合作伙伴。如果您服务的社区可以从中受益,请联系我们。"
},
"home.getintouch": {
"message": "联系我们"
},
"home.makebutter.title": {
"message": "制作您自己的 Butter Box"
},
"home.makebutter.description": {
"message": "您可以通过在树莓派甚至旧电脑上安装预制映像来制作自己的 Butter Box。只需下载映像然后使用您安装其他发行版时常用的 RPi 或 Disk Imager 将其烧录到 MicroSD 卡或 USB 驱动器即可。"
},
"home.learnhow": {
"message": "了解如何操作!"
},
"home.getcode.title": {
"message": "或者,按照我们开源仓库中的说明自定义您的 Butter Box。"
},
"home.getsource.button": {
"message": "源码与文档"
},
"theme.ErrorPageContent.title": {
"message": "页面已崩溃。",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "回到顶部",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "历史博文",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "历史博文",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "博文列表分页导航",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "较新的博文",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "较旧的博文",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "博文分页导航",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "较新一篇",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "较旧一篇",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "查看所有标签",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel.mode.system": {
"message": "系统模式",
"description": "The name for the system color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "浅色模式",
"description": "The name for the light color mode"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "暗黑模式",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel": {
"message": "切换浅色/暗黑模式(当前为{mode}",
"description": "The ARIA label for the color mode toggle"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "页面路径",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.paginator.navAriaLabel": {
"message": "文件选项卡",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "上一页",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "下一页",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "{count} 篇文档带有标签",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged}「{tagName}」",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "版本:{versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "此为 {siteTitle} {versionLabel} 版尚未发行的文档。",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "此为 {siteTitle} {versionLabel} 版的文档,现已不再积极维护。",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "最新的文档请参阅 {latestVersionLink} ({versionLabel})。",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "最新版本",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "编辑此页",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "{heading}的直接链接",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": "于 {date} ",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": "由 {user} ",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "最后{byUser}{atDate}更新",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "选择版本",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "找不到页面",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "标签:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "警告",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "危险",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "信息",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "备注",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "提示",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "注意",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "关闭",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "最近博文导航",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "展开侧边栏分类 '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "折叠侧边栏分类 '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.IconExternalLink.ariaLabel": {
"message": "(在新标签页中打开)",
"description": "The ARIA label for the external link icon"
},
"theme.NavBar.navAriaLabel": {
"message": "主导航",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "选择语言",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "我们找不到您要找的页面。",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "请联系原始链接来源网站的所有者,并告知他们链接已损坏。",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "本页总览",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "阅读更多",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "阅读 {title} 的全文",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "阅读需 {readingTime} 分钟",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.CodeBlock.copy": {
"message": "复制",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.copied": {
"message": "复制成功",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "复制代码到剪贴板",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "切换自动换行",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.docs.breadcrumbs.home": {
"message": "主页面",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "收起侧边栏",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "收起侧边栏",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "文档侧边栏",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "关闭导航栏",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← 回到主菜单",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "切换导航栏",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.navbar.mobileDropdown.collapseButton.expandAriaLabel": {
"message": "展开下拉菜单",
"description": "The ARIA label of the button to expand the mobile dropdown navbar item"
},
"theme.navbar.mobileDropdown.collapseButton.collapseAriaLabel": {
"message": "收起下拉菜单",
"description": "The ARIA label of the button to collapse the mobile dropdown navbar item"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "展开侧边栏",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "展开侧边栏",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "{count} 篇博文",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} 含有标签「{tagName}」",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "作者",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "查看所有作者",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "该作者尚未撰写任何文章。",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "未列出页",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "此页面未列出。搜索引擎不会对其索引,只有拥有直接链接的用户才能访问。",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "草稿页",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "此页面是草稿,仅在开发环境中可见,不会包含在正式版本中。",
"description": "The draft content banner message"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "{count} 个项目",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.ErrorPageContent.tryAgain": {
"message": "重试",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "跳到主要内容",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "标签",
"description": "The title of the tag list page"
}
}

View file

@ -0,0 +1,14 @@
{
"title": {
"message": "博客",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "博客",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "最近博文",
"description": "The label for the left sidebar"
}
}

View file

@ -0,0 +1,30 @@
{
"version.label": {
"message": "下一版",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Build A Box": {
"message": "搭建盒子",
"description": "The label for category 'Build A Box' in sidebar 'tutorialSidebar'"
},
"sidebar.tutorialSidebar.category.Raspberry Pi": {
"message": "树莓派",
"description": "The label for category 'Raspberry Pi' in sidebar 'tutorialSidebar'"
},
"sidebar.tutorialSidebar.category.Services": {
"message": "服务",
"description": "The label for category 'Services' in sidebar 'tutorialSidebar'"
},
"sidebar.tutorialSidebar.category.Content Packs": {
"message": "内容包",
"description": "The label for category 'Content Packs' in sidebar 'tutorialSidebar'"
},
"sidebar.tutorialSidebar.category.Apps": {
"message": "应用",
"description": "The label for category 'Apps' in sidebar 'tutorialSidebar'"
},
"sidebar.tutorialSidebar.category.FAQ": {
"message": "常见问题",
"description": "The label for category 'FAQ' in sidebar 'tutorialSidebar'"
}
}

View file

@ -0,0 +1,46 @@
{
"link.title.Docs": {
"message": "文档",
"description": "The title of the footer links column with title=Docs in the footer"
},
"link.title.Community": {
"message": "社区",
"description": "The title of the footer links column with title=Community in the footer"
},
"link.title.More": {
"message": "更多",
"description": "The title of the footer links column with title=More in the footer"
},
"link.item.label.Get Started": {
"message": "开始使用",
"description": "The label of footer link with label=Get Started linking to /docs/"
},
"link.item.label.Guardian Project": {
"message": "Guardian Project",
"description": "The label of footer link with label=Guardian Project linking to https://guardianproject.info"
},
"link.item.label.SR2": {
"message": "SR2",
"description": "The label of footer link with label=SR2 linking to https://sr2.uk"
},
"link.item.label.Okthanks": {
"message": "Okthanks",
"description": "The label of footer link with label=Okthanks linking to https://okthanks.com"
},
"link.item.label.F-Droid": {
"message": "F-Droid",
"description": "The label of footer link with label=F-Droid linking to https://f-droid.org"
},
"link.item.label.Blog": {
"message": "博客",
"description": "The label of footer link with label=Blog linking to /blog"
},
"link.item.label.GP Repo": {
"message": "GP 仓库",
"description": "The label of footer link with label=GP Repo linking to https://guardianproject.dev/butter"
},
"copyright": {
"message": "版权所有 © 2026 Guardian Project。使用 Docusaurus 构建。",
"description": "The footer copyright"
}
}

View file

@ -0,0 +1,26 @@
{
"title": {
"message": "Butter",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "Butter 应用标志",
"description": "The alt text of navbar logo"
},
"item.label.Get Started": {
"message": "开始使用",
"description": "Navbar item with label Get Started"
},
"item.label.Get In Touch": {
"message": "联系我们",
"description": "Navbar item with label Get In Touch"
},
"item.label.Latest News": {
"message": "最新消息",
"description": "Navbar item with label Latest News"
},
"item.label.Content Packs": {
"message": "内容包",
"description": "Navbar item with label Content Packs"
}
}