Skip to content

Commit 1a98cd1

Browse files
committed
提交英文本地化文档
1 parent 58b9162 commit 1a98cd1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+3997
-8
lines changed

docusaurus.config.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import type * as Preset from '@docusaurus/preset-classic';
55
// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...)
66

77
const config: Config = {
8+
// 将标题和标语改为支持多语言的格式
89
title: 'Obfuz',
910
tagline: '功能强大的开源 Unity 代码混淆插件​',
1011
favicon: 'img/favicon.png',
@@ -24,12 +25,17 @@ const config: Config = {
2425
onBrokenLinks: 'throw',
2526
onBrokenMarkdownLinks: 'warn',
2627

27-
// Even if you don't use internationalization, you can use this field to set
28-
// useful metadata like html lang. For example, if your site is Chinese, you
29-
// may want to replace "en" with "zh-Hans".
3028
i18n: {
31-
defaultLocale: 'en',
32-
locales: ['en'],
29+
defaultLocale: 'zh',
30+
locales: ['zh', 'en'],
31+
localeConfigs: {
32+
'zh': {
33+
label: '中文',
34+
},
35+
'en': {
36+
label: 'English',
37+
},
38+
},
3339
},
3440

3541
presets: [
@@ -91,9 +97,12 @@ const config: Config = {
9197
type: 'docSidebar',
9298
sidebarId: 'tutorialSidebar',
9399
position: 'left',
94-
label: '文档',
100+
label: 'Documentation',
101+
},
102+
{
103+
type: 'localeDropdown',
104+
position: 'right',
95105
},
96-
//{to: '/blog', label: 'Blog', position: 'left'},
97106
{
98107
href: 'https://github.com/focus-creative-games/obfuz',
99108
label: 'GitHub',

i18n/en/code.json

Lines changed: 340 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,340 @@
1+
{
2+
"功能强大的开源 Unity 代码混淆插件": {
3+
"message": "Powerful open-source Unity code obfuscation plugin"
4+
},
5+
"文档": {
6+
"message": "Documentation"
7+
},
8+
"Obfuz 入门": {
9+
"message": "Getting Started with Obfuz"
10+
},
11+
"开源免费": {
12+
"message": "Open Source & Free"
13+
},
14+
"基于 MIT 协议,免费使用和修改": {
15+
"message": "Based on MIT license, free to use and modify"
16+
},
17+
"企业级保护": {
18+
"message": "Enterprise-level Protection"
19+
},
20+
"提供媲美商业工具的强大混淆功能": {
21+
"message": "Provides powerful obfuscation capabilities comparable to commercial tools"
22+
},
23+
"专为 Unity 设计": {
24+
"message": "Designed for Unity"
25+
},
26+
"深度集成 Unity 生态,简化开发流程": {
27+
"message": "Deeply integrated with Unity ecosystem, simplifying development workflow"
28+
},
29+
"theme.ErrorPageContent.title": {
30+
"message": "This page crashed.",
31+
"description": "The title of the fallback page when the page crashed"
32+
},
33+
"theme.BackToTopButton.buttonAriaLabel": {
34+
"message": "Scroll back to top",
35+
"description": "The ARIA label for the back to top button"
36+
},
37+
"theme.blog.archive.title": {
38+
"message": "Archive",
39+
"description": "The page & hero title of the blog archive page"
40+
},
41+
"theme.blog.archive.description": {
42+
"message": "Archive",
43+
"description": "The page & hero description of the blog archive page"
44+
},
45+
"theme.blog.post.paginator.navAriaLabel": {
46+
"message": "Blog post page navigation",
47+
"description": "The ARIA label for the blog posts pagination"
48+
},
49+
"theme.blog.post.paginator.newerPost": {
50+
"message": "Newer post",
51+
"description": "The blog post button label to navigate to the newer/previous post"
52+
},
53+
"theme.blog.post.paginator.olderPost": {
54+
"message": "Older post",
55+
"description": "The blog post button label to navigate to the older/next post"
56+
},
57+
"theme.blog.paginator.navAriaLabel": {
58+
"message": "Blog list page navigation",
59+
"description": "The ARIA label for the blog pagination"
60+
},
61+
"theme.blog.paginator.newerEntries": {
62+
"message": "Newer entries",
63+
"description": "The label used to navigate to the newer blog posts page (previous page)"
64+
},
65+
"theme.blog.paginator.olderEntries": {
66+
"message": "Older entries",
67+
"description": "The label used to navigate to the older blog posts page (next page)"
68+
},
69+
"theme.tags.tagsPageLink": {
70+
"message": "View all tags",
71+
"description": "The label of the link targeting the tag list page"
72+
},
73+
"theme.colorToggle.ariaLabel": {
74+
"message": "Switch between dark and light mode (currently {mode})",
75+
"description": "The ARIA label for the navbar color mode toggle"
76+
},
77+
"theme.colorToggle.ariaLabel.mode.dark": {
78+
"message": "dark mode",
79+
"description": "The name for the dark color mode"
80+
},
81+
"theme.colorToggle.ariaLabel.mode.light": {
82+
"message": "light mode",
83+
"description": "The name for the light color mode"
84+
},
85+
"theme.docs.breadcrumbs.navAriaLabel": {
86+
"message": "Breadcrumbs",
87+
"description": "The ARIA label for the breadcrumbs"
88+
},
89+
"theme.docs.DocCard.categoryDescription.plurals": {
90+
"message": "1 item|{count} items",
91+
"description": "The default description for a category card in the generated index about how many items this category includes"
92+
},
93+
"theme.docs.paginator.navAriaLabel": {
94+
"message": "Docs pages",
95+
"description": "The ARIA label for the docs pagination"
96+
},
97+
"theme.docs.paginator.previous": {
98+
"message": "Previous",
99+
"description": "The label used to navigate to the previous doc"
100+
},
101+
"theme.docs.paginator.next": {
102+
"message": "Next",
103+
"description": "The label used to navigate to the next doc"
104+
},
105+
"theme.docs.tagDocListPageTitle.nDocsTagged": {
106+
"message": "One doc tagged|{count} docs tagged",
107+
"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)"
108+
},
109+
"theme.docs.tagDocListPageTitle": {
110+
"message": "{nDocsTagged} with \"{tagName}\"",
111+
"description": "The title of the page for a docs tag"
112+
},
113+
"theme.docs.versionBadge.label": {
114+
"message": "Version: {versionLabel}"
115+
},
116+
"theme.docs.versions.unreleasedVersionLabel": {
117+
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
118+
"description": "The label used to tell the user that he's browsing an unreleased doc version"
119+
},
120+
"theme.docs.versions.unmaintainedVersionLabel": {
121+
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
122+
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
123+
},
124+
"theme.docs.versions.latestVersionSuggestionLabel": {
125+
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
126+
"description": "The label used to tell the user to check the latest version"
127+
},
128+
"theme.docs.versions.latestVersionLinkLabel": {
129+
"message": "latest version",
130+
"description": "The label used for the latest version suggestion link label"
131+
},
132+
"theme.common.editThisPage": {
133+
"message": "Edit this page",
134+
"description": "The link label to edit the current page"
135+
},
136+
"theme.common.headingLinkTitle": {
137+
"message": "Direct link to {heading}",
138+
"description": "Title for link to heading"
139+
},
140+
"theme.lastUpdated.atDate": {
141+
"message": " on {date}",
142+
"description": "The words used to describe on which date a page has been last updated"
143+
},
144+
"theme.lastUpdated.byUser": {
145+
"message": " by {user}",
146+
"description": "The words used to describe by who the page has been last updated"
147+
},
148+
"theme.lastUpdated.lastUpdatedAtBy": {
149+
"message": "Last updated{atDate}{byUser}",
150+
"description": "The sentence used to display when a page has been last updated, and by who"
151+
},
152+
"theme.NotFound.title": {
153+
"message": "Page Not Found",
154+
"description": "The title of the 404 page"
155+
},
156+
"theme.navbar.mobileVersionsDropdown.label": {
157+
"message": "Versions",
158+
"description": "The label for the navbar versions dropdown on mobile view"
159+
},
160+
"theme.tags.tagsListLabel": {
161+
"message": "Tags:",
162+
"description": "The label alongside a tag list"
163+
},
164+
"theme.AnnouncementBar.closeButtonAriaLabel": {
165+
"message": "Close",
166+
"description": "The ARIA label for close button of announcement bar"
167+
},
168+
"theme.admonition.caution": {
169+
"message": "caution",
170+
"description": "The default label used for the Caution admonition (:::caution)"
171+
},
172+
"theme.admonition.danger": {
173+
"message": "danger",
174+
"description": "The default label used for the Danger admonition (:::danger)"
175+
},
176+
"theme.admonition.info": {
177+
"message": "info",
178+
"description": "The default label used for the Info admonition (:::info)"
179+
},
180+
"theme.admonition.note": {
181+
"message": "note",
182+
"description": "The default label used for the Note admonition (:::note)"
183+
},
184+
"theme.admonition.tip": {
185+
"message": "tip",
186+
"description": "The default label used for the Tip admonition (:::tip)"
187+
},
188+
"theme.admonition.warning": {
189+
"message": "warning",
190+
"description": "The default label used for the Warning admonition (:::warning)"
191+
},
192+
"theme.blog.sidebar.navAriaLabel": {
193+
"message": "Blog recent posts navigation",
194+
"description": "The ARIA label for recent posts in the blog sidebar"
195+
},
196+
"theme.CodeBlock.copied": {
197+
"message": "Copied",
198+
"description": "The copied button label on code blocks"
199+
},
200+
"theme.CodeBlock.copyButtonAriaLabel": {
201+
"message": "Copy code to clipboard",
202+
"description": "The ARIA label for copy code blocks button"
203+
},
204+
"theme.CodeBlock.copy": {
205+
"message": "Copy",
206+
"description": "The copy button label on code blocks"
207+
},
208+
"theme.CodeBlock.wordWrapToggle": {
209+
"message": "Toggle word wrap",
210+
"description": "The title attribute for toggle word wrapping button of code block lines"
211+
},
212+
"theme.DocSidebarItem.expandCategoryAriaLabel": {
213+
"message": "Expand sidebar category '{label}'",
214+
"description": "The ARIA label to expand the sidebar category"
215+
},
216+
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
217+
"message": "Collapse sidebar category '{label}'",
218+
"description": "The ARIA label to collapse the sidebar category"
219+
},
220+
"theme.NotFound.p1": {
221+
"message": "We could not find what you were looking for.",
222+
"description": "The first paragraph of the 404 page"
223+
},
224+
"theme.NotFound.p2": {
225+
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
226+
"description": "The 2nd paragraph of the 404 page"
227+
},
228+
"theme.navbar.mobileLanguageDropdown.label": {
229+
"message": "Languages",
230+
"description": "The label for the mobile language switcher dropdown"
231+
},
232+
"theme.NavBar.navAriaLabel": {
233+
"message": "Main",
234+
"description": "The ARIA label for the main navigation"
235+
},
236+
"theme.TOCCollapsible.toggleButtonLabel": {
237+
"message": "On this page",
238+
"description": "The label used by the button on the collapsible TOC component"
239+
},
240+
"theme.blog.post.readingTime.plurals": {
241+
"message": "One min read|{readingTime} min read",
242+
"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)"
243+
},
244+
"theme.docs.breadcrumbs.home": {
245+
"message": "Home page",
246+
"description": "The ARIA label for the home page in the breadcrumbs"
247+
},
248+
"theme.blog.post.readMore": {
249+
"message": "Read more",
250+
"description": "The label used in blog post item excerpts to link to full blog posts"
251+
},
252+
"theme.blog.post.readMoreLabel": {
253+
"message": "Read more about {title}",
254+
"description": "The ARIA label for the link to full blog posts from excerpts"
255+
},
256+
"theme.docs.sidebar.collapseButtonTitle": {
257+
"message": "Collapse sidebar",
258+
"description": "The title attribute for collapse button of doc sidebar"
259+
},
260+
"theme.docs.sidebar.collapseButtonAriaLabel": {
261+
"message": "Collapse sidebar",
262+
"description": "The title attribute for collapse button of doc sidebar"
263+
},
264+
"theme.docs.sidebar.navAriaLabel": {
265+
"message": "Docs sidebar",
266+
"description": "The ARIA label for the sidebar navigation"
267+
},
268+
"theme.docs.sidebar.expandButtonTitle": {
269+
"message": "Expand sidebar",
270+
"description": "The ARIA label and title attribute for expand button of doc sidebar"
271+
},
272+
"theme.docs.sidebar.expandButtonAriaLabel": {
273+
"message": "Expand sidebar",
274+
"description": "The ARIA label and title attribute for expand button of doc sidebar"
275+
},
276+
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
277+
"message": "Close navigation bar",
278+
"description": "The ARIA label for close button of mobile sidebar"
279+
},
280+
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
281+
"message": "← Back to main menu",
282+
"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)"
283+
},
284+
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
285+
"message": "Toggle navigation bar",
286+
"description": "The ARIA label for hamburger menu button of mobile navigation"
287+
},
288+
"theme.blog.post.plurals": {
289+
"message": "One post|{count} posts",
290+
"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)"
291+
},
292+
"theme.blog.tagTitle": {
293+
"message": "{nPosts} tagged with \"{tagName}\"",
294+
"description": "The title of the page for a blog tag"
295+
},
296+
"theme.blog.author.pageTitle": {
297+
"message": "{authorName} - {nPosts}",
298+
"description": "The title of the page for a blog author"
299+
},
300+
"theme.blog.authorsList.pageTitle": {
301+
"message": "Authors",
302+
"description": "The title of the authors page"
303+
},
304+
"theme.blog.authorsList.viewAll": {
305+
"message": "View all authors",
306+
"description": "The label of the link targeting the blog authors page"
307+
},
308+
"theme.blog.author.noPosts": {
309+
"message": "This author has not written any posts yet.",
310+
"description": "The text for authors with 0 blog post"
311+
},
312+
"theme.contentVisibility.unlistedBanner.title": {
313+
"message": "Unlisted page",
314+
"description": "The unlisted content banner title"
315+
},
316+
"theme.contentVisibility.unlistedBanner.message": {
317+
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
318+
"description": "The unlisted content banner message"
319+
},
320+
"theme.contentVisibility.draftBanner.title": {
321+
"message": "Draft page",
322+
"description": "The draft content banner title"
323+
},
324+
"theme.contentVisibility.draftBanner.message": {
325+
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
326+
"description": "The draft content banner message"
327+
},
328+
"theme.ErrorPageContent.tryAgain": {
329+
"message": "Try again",
330+
"description": "The label of the button to try again rendering when the React error boundary captures an error"
331+
},
332+
"theme.common.skipToMainContent": {
333+
"message": "Skip to main content",
334+
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
335+
},
336+
"theme.tags.tagsPageTitle": {
337+
"message": "Tags",
338+
"description": "The title of the tag list page"
339+
}
340+
}

0 commit comments

Comments
 (0)