Skip to content

Commit 77e0c51

Browse files
Add Japanese localization for i18n (#533)
1 parent c50ac44 commit 77e0c51

File tree

7 files changed

+649
-35
lines changed

7 files changed

+649
-35
lines changed

src/main/utils/locales.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import EnUs from '../../renderer/src/i18n/locales/en-us.json'
2+
import JaJP from '../../renderer/src/i18n/locales/ja-jp.json'
23
import RuRu from '../../renderer/src/i18n/locales/ru-ru.json'
34
import ZhCn from '../../renderer/src/i18n/locales/zh-cn.json'
45
import ZhTw from '../../renderer/src/i18n/locales/zh-tw.json'
@@ -7,6 +8,7 @@ const locales = {
78
'en-US': EnUs,
89
'zh-CN': ZhCn,
910
'zh-TW': ZhTw,
11+
'ja-JP': JaJP,
1012
'ru-RU': RuRu
1113
}
1214

src/renderer/src/context/AntdProvider.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { useSettings } from '@renderer/hooks/useSettings'
22
import { LanguageVarious } from '@renderer/types'
33
import { ConfigProvider, theme } from 'antd'
44
import enUS from 'antd/locale/en_US'
5+
import jaJP from 'antd/locale/ja_JP'
56
import ruRU from 'antd/locale/ru_RU'
67
import zhCN from 'antd/locale/zh_CN'
78
import zhTW from 'antd/locale/zh_TW'
@@ -59,6 +60,8 @@ function getAntdLocale(language: LanguageVarious) {
5960
return enUS
6061
case 'ru-RU':
6162
return ruRU
63+
case 'ja-JP':
64+
return jaJP
6265

6366
default:
6467
return zhCN

src/renderer/src/i18n/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import i18n from 'i18next'
22
import { initReactI18next } from 'react-i18next'
33

44
import enUS from './locales/en-us.json'
5+
import jaJP from './locales/ja-jp.json'
56
import ruRU from './locales/ru-ru.json'
67
import zhCN from './locales/zh-cn.json'
78
import zhTW from './locales/zh-tw.json'
@@ -10,6 +11,7 @@ const resources = {
1011
'en-US': enUS,
1112
'zh-CN': zhCN,
1213
'zh-TW': zhTW,
14+
'ja-JP': jaJP,
1315
'ru-RU': ruRU
1416
}
1517

src/renderer/src/i18n/locales/ja-jp.json

Lines changed: 571 additions & 0 deletions
Large diffs are not rendered by default.

src/renderer/src/pages/agents/agentGroupTranslations.ts

Lines changed: 69 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export type GroupTranslations = {
44
'zh-CN': string
55
'zh-TW': string
66
'ru-RU': string
7+
'ja-JP': string
78
}
89
}
910

@@ -12,204 +13,238 @@ export const groupTranslations: GroupTranslations = {
1213
'en-US': 'My Agents',
1314
'zh-CN': '我的',
1415
'zh-TW': '我的',
15-
'ru-RU': 'Мои агенты'
16+
'ru-RU': 'Мои агенты',
17+
'ja-JP': '私のエージェント'
1618
},
1719
职业: {
1820
'en-US': 'Career',
1921
'zh-CN': '职业',
2022
'zh-TW': '職業',
21-
'ru-RU': 'Карьера'
23+
'ru-RU': 'Карьера',
24+
'ja-JP': 'キャリア'
2225
},
2326
商业: {
2427
'en-US': 'Business',
2528
'zh-CN': '商业',
2629
'zh-TW': '商業',
27-
'ru-RU': 'Бизнес'
30+
'ru-RU': 'Бизнес',
31+
'ja-JP': 'ビジネス'
2832
},
2933
工具: {
3034
'en-US': 'Tools',
3135
'zh-CN': '工具',
3236
'zh-TW': '工具',
33-
'ru-RU': 'Инструменты'
37+
'ru-RU': 'Инструменты',
38+
'ja-JP': 'ツール'
3439
},
3540
语言: {
3641
'en-US': 'Language',
3742
'zh-CN': '语言',
3843
'zh-TW': '語言',
39-
'ru-RU': 'Язык'
44+
'ru-RU': 'Язык',
45+
'ja-JP': '言語'
4046
},
4147
办公: {
4248
'en-US': 'Office',
4349
'zh-CN': '办公',
4450
'zh-TW': '辦公',
45-
'ru-RU': 'Офис'
51+
'ru-RU': 'Офис',
52+
'ja-JP': 'オフィス'
4653
},
4754
通用: {
4855
'en-US': 'General',
4956
'zh-CN': '通用',
5057
'zh-TW': '通用',
51-
'ru-RU': 'Общее'
58+
'ru-RU': 'Общее',
59+
'ja-JP': '一般'
5260
},
5361
写作: {
5462
'en-US': 'Writing',
5563
'zh-CN': '写作',
5664
'zh-TW': '寫作',
57-
'ru-RU': 'Письмо'
65+
'ru-RU': 'Письмо',
66+
'ja-JP': '書き込み'
5867
},
5968
精选: {
6069
'en-US': 'Featured',
6170
'zh-CN': '精选',
6271
'zh-TW': '精選',
63-
'ru-RU': 'Избранное'
72+
'ru-RU': 'Избранное',
73+
'ja-JP': '特集'
6474
},
6575
编程: {
6676
'en-US': 'Programming',
6777
'zh-CN': '编程',
6878
'zh-TW': '編程',
69-
'ru-RU': 'Программирование'
79+
'ru-RU': 'Программирование',
80+
'ja-JP': 'プログラミング'
7081
},
7182
情感: {
7283
'en-US': 'Emotion',
7384
'zh-CN': '情感',
7485
'zh-TW': '情感',
75-
'ru-RU': 'Эмоции'
86+
'ru-RU': 'Эмоции',
87+
'ja-JP': '感情'
7688
},
7789
教育: {
7890
'en-US': 'Education',
7991
'zh-CN': '教育',
8092
'zh-TW': '教育',
81-
'ru-RU': 'Образование'
93+
'ru-RU': 'Образование',
94+
'ja-JP': '教育'
8295
},
8396
创意: {
8497
'en-US': 'Creative',
8598
'zh-CN': '创意',
8699
'zh-TW': '創意',
87-
'ru-RU': 'Креатив'
100+
'ru-RU': 'Креатив',
101+
'ja-JP': 'クリエイティブ'
88102
},
89103
学术: {
90104
'en-US': 'Academic',
91105
'zh-CN': '学术',
92106
'zh-TW': '學術',
93-
'ru-RU': 'Академический'
107+
'ru-RU': 'Академический',
108+
'ja-JP': 'アカデミック'
94109
},
95110
设计: {
96111
'en-US': 'Design',
97112
'zh-CN': '设计',
98113
'zh-TW': '設計',
99-
'ru-RU': 'Дизайн'
114+
'ru-RU': 'Дизайн',
115+
'ja-JP': 'デザイン'
100116
},
101117
艺术: {
102118
'en-US': 'Art',
103119
'zh-CN': '艺术',
104120
'zh-TW': '藝術',
105-
'ru-RU': 'Искусство'
121+
'ru-RU': 'Искусство',
122+
'ja-JP': 'アート'
106123
},
107124
娱乐: {
108125
'en-US': 'Entertainment',
109126
'zh-CN': '娱乐',
110127
'zh-TW': '娛樂',
111-
'ru-RU': 'Развлечения'
128+
'ru-RU': 'Развлечения',
129+
'ja-JP': 'エンターテイメント'
112130
},
113131
生活: {
114132
'en-US': 'Life',
115133
'zh-CN': '生活',
116134
'zh-TW': '生活',
117-
'ru-RU': 'Жизнь'
135+
'ru-RU': 'Жизнь',
136+
'ja-JP': '生活'
118137
},
119138
医疗: {
120139
'en-US': 'Medical',
121140
'zh-CN': '医疗',
122141
'zh-TW': '醫療',
123-
'ru-RU': 'Медицина'
142+
'ru-RU': 'Медицина',
143+
'ja-JP': '医療'
124144
},
125145
游戏: {
126146
'en-US': 'Games',
127147
'zh-CN': '游戏',
128148
'zh-TW': '遊戲',
129-
'ru-RU': 'Игры'
149+
'ru-RU': 'Игры',
150+
'ja-JP': 'ゲーム'
130151
},
131152
翻译: {
132153
'en-US': 'Translation',
133154
'zh-CN': '翻译',
134155
'zh-TW': '翻譯',
135-
'ru-RU': 'Перевод'
156+
'ru-RU': 'Перевод',
157+
'ja-JP': '翻訳'
136158
},
137159
音乐: {
138160
'en-US': 'Music',
139161
'zh-CN': '音乐',
140162
'zh-TW': '音樂',
141-
'ru-RU': 'Музыка'
163+
'ru-RU': 'Музыка',
164+
'ja-JP': '音楽'
142165
},
143166
点评: {
144167
'en-US': 'Review',
145168
'zh-CN': '点评',
146169
'zh-TW': '點評',
147-
'ru-RU': 'Обзор'
170+
'ru-RU': 'Обзор',
171+
'ja-JP': 'レビュー'
148172
},
149173
文案: {
150174
'en-US': 'Copywriting',
151175
'zh-CN': '文案',
152176
'zh-TW': '文案',
153-
'ru-RU': 'Копирайтинг'
177+
'ru-RU': 'Копирайтинг',
178+
'ja-JP': 'コピーライティング'
154179
},
155180
百科: {
156181
'en-US': 'Encyclopedia',
157182
'zh-CN': '百科',
158183
'zh-TW': '百科',
159-
'ru-RU': 'Энциклопедия'
184+
'ru-RU': 'Энциклопедия',
185+
'ja-JP': '百科事典'
160186
},
161187
健康: {
162188
'en-US': 'Health',
163189
'zh-CN': '健康',
164190
'zh-TW': '健康',
165-
'ru-RU': 'Здоровье'
191+
'ru-RU': 'Здоровье',
192+
'ja-JP': '健康'
166193
},
167194
营销: {
168195
'en-US': 'Marketing',
169196
'zh-CN': '营销',
170197
'zh-TW': '營銷',
171-
'ru-RU': 'Маркетинг'
198+
'ru-RU': 'Маркетинг',
199+
'ja-JP': 'マーケティング'
172200
},
173201
科学: {
174202
'en-US': 'Science',
175203
'zh-CN': '科学',
176204
'zh-TW': '科學',
177-
'ru-RU': 'Наука'
205+
'ru-RU': 'Наука',
206+
'ja-JP': '科学'
178207
},
179208
分析: {
180209
'en-US': 'Analysis',
181210
'zh-CN': '分析',
182211
'zh-TW': '分析',
183-
'ru-RU': 'Анализ'
212+
'ru-RU': 'Анализ',
213+
'ja-JP': '分析'
184214
},
185215
法律: {
186216
'en-US': 'Legal',
187217
'zh-CN': '法律',
188218
'zh-TW': '法律',
189-
'ru-RU': 'Право'
219+
'ru-RU': 'Право',
220+
'ja-JP': '法律'
190221
},
191222
咨询: {
192223
'en-US': 'Consulting',
193224
'zh-CN': '咨询',
194225
'zh-TW': '諮詢',
195-
'ru-RU': 'Консалтинг'
226+
'ru-RU': 'Консалтинг',
227+
'ja-JP': 'コンサルティング'
196228
},
197229
金融: {
198230
'en-US': 'Finance',
199231
'zh-CN': '金融',
200232
'zh-TW': '金融',
201-
'ru-RU': 'Финансы'
233+
'ru-RU': 'Финансы',
234+
'ja-JP': '金融'
202235
},
203236
旅游: {
204237
'en-US': 'Travel',
205238
'zh-CN': '旅游',
206239
'zh-TW': '旅遊',
207-
'ru-RU': 'Путешествия'
240+
'ru-RU': 'Путешествия',
241+
'ja-JP': '旅行'
208242
},
209243
管理: {
210244
'en-US': 'Management',
211245
'zh-CN': '管理',
212246
'zh-TW': '管理',
213-
'ru-RU': 'Управление'
247+
'ru-RU': 'Управление',
248+
'ja-JP': '管理'
214249
}
215250
}

src/renderer/src/pages/settings/GeneralSettings.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ const GeneralSettings: FC = () => {
6363
{ value: 'zh-CN', label: '中文', flag: '🇨🇳' },
6464
{ value: 'zh-TW', label: '中文(繁体)', flag: '🇭🇰' },
6565
{ value: 'en-US', label: 'English', flag: '🇺🇸' },
66+
{ value: 'ja-JP', label: '日本語', flag: '🇯🇵' },
6667
{ value: 'ru-RU', label: 'Russian', flag: '🇷🇺' }
6768
]
6869

src/renderer/src/types/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ export enum ThemeMode {
154154
dark = 'dark',
155155
auto = 'auto'
156156
}
157-
export type LanguageVarious = 'zh-CN' | 'zh-TW' | 'en-US' | 'ru-RU'
157+
export type LanguageVarious = 'zh-CN' | 'zh-TW' | 'en-US' | 'ru-RU' | 'ja-JP'
158158
export type CodeStyleVarious = BuiltinTheme | 'auto'
159159

160160
export type WebDavConfig = {

0 commit comments

Comments
 (0)