Add Japanese locale (ja) support (#1810)

* Add Japanese locale (ja) support

- New: ja.ts with 2624 UI translation keys
- New: ja.settings.ts with 1789 settings translation keys
- Registered ja in runtime.ts (Locale type, LOCALES, LOCALE_LABEL_KEYS, normalizeLocale)
- Added ja-JP BCP-47 mapping in intl.ts
- Added JA_MESSAGES in bootstrap.ts
- Added ja to lazy-load dictionary map in store.ts
- Updated messages.test.ts with ja dictionary
- Added common.language.japanese to all 8 existing locale files

* fix(i18n): complete Japanese locale updates

* test(i18n): enforce locale key parity

* docs: add Japanese documentation

---------

Co-authored-by: yuchi0531 <yuchi0531@users.noreply.github.com>
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
This commit is contained in:
yuchi0531
2026-06-27 01:00:05 +03:00
committed by GitHub
co-authored by yuchi0531 Bohdan Triapitsyn
parent b384deb812
commit eb051f969e
58 changed files with 6509 additions and 58 deletions
+1
View File
@@ -13,6 +13,7 @@ export const dict = {
'common.language.brazilianPortuguese': 'Brazilian Portuguese',
'common.language.korean': 'Korean',
'common.language.polish': 'Polish',
'common.language.japanese': 'Japanese',
'common.revealPath.finder': 'Reveal in Finder',
'common.revealPath.fileExplorer': 'Open in File Explorer',
'common.revealPath.fileManager': 'Open in File Manager',
+1
View File
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
"common.language.brazilianPortuguese": "Portugués brasileño",
"common.language.korean": "Coreano",
"common.language.polish": "Polaco",
"common.language.japanese": "Japonés",
"common.revealPath.finder": "Mostrar en Finder",
"common.revealPath.fileExplorer": "Abrir en File Explorer",
"common.revealPath.fileManager": "Abrir en gestor de archivos",
+2
View File
@@ -13,6 +13,7 @@ export const dict = {
'common.language.brazilianPortuguese': 'Portugais brésilien',
'common.language.korean': 'Coréen',
'common.language.polish': 'Polonais',
'common.language.japanese': 'Japonais',
'common.revealPath.finder': 'Révéler dans le Finder',
'common.revealPath.fileExplorer': 'Ouvrir dans l\'explorateur de fichiers',
'common.revealPath.fileManager': 'Ouvrir dans le gestionnaire de fichiers',
@@ -103,6 +104,7 @@ export const dict = {
'sessions.scheduledTasks.editor.scheduleType.daily': 'Tous les jours',
'sessions.scheduledTasks.editor.scheduleType.weekly': 'Hebdomadaire',
'sessions.scheduledTasks.editor.scheduleType.once': 'Une fois',
'sessions.scheduledTasks.editor.scheduleType.cron': 'Cron',
'sessions.scheduledTasks.editor.date.label': 'Date',
'sessions.scheduledTasks.editor.date.placeholder': 'Sélectionnez une date',
'sessions.scheduledTasks.editor.date.previousMonth': 'Mois précédent',
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+1
View File
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
'common.language.brazilianPortuguese': '브라질 포르투갈어',
'common.language.korean': '한국어',
'common.language.polish': '폴란드어',
'common.language.japanese': '일본어',
'common.revealPath.finder': 'Finder에서 보기',
'common.revealPath.fileExplorer': 'File Explorer에서 열기',
'common.revealPath.fileManager': '파일 관리자에서 열기',
+1
View File
@@ -15,6 +15,7 @@ export const dict: Record<I18nKey, string> = {
'common.language.brazilianPortuguese': 'Portugalski (Brazylia)',
'common.language.korean': 'Koreański',
'common.language.polish': 'Polski',
'common.language.japanese': 'Japoński',
'common.revealPath.finder': 'Pokaż w Finderze',
'common.revealPath.fileExplorer': 'Otwórz w Eksploratorze plików',
'common.revealPath.fileManager': 'Otwórz w Menedżerze plików',
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
"common.language.brazilianPortuguese": "Português brasileiro",
"common.language.korean": "Coreano",
"common.language.polish": "Polonês",
"common.language.japanese": "Japonês",
"common.revealPath.finder": "Mostrar no Finder",
"common.revealPath.fileExplorer": "Abrir no File Explorer",
"common.revealPath.fileManager": "Abrir no gerenciador de arquivos",
+1
View File
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
"common.language.brazilianPortuguese": "Бразильська португальська",
"common.language.korean": "Корейська",
"common.language.polish": "Польська",
"common.language.japanese": "Японська",
"common.revealPath.finder": "Показати у Finder",
"common.revealPath.fileExplorer": "Відкрити у File Explorer",
"common.revealPath.fileManager": "Відкрити у файловому менеджері",
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
'common.language.brazilianPortuguese': '巴西葡萄牙语',
'common.language.korean': '韩语',
'common.language.polish': '波兰语',
'common.language.japanese': '日语',
'common.revealPath.finder': '在 Finder 中显示',
'common.revealPath.fileExplorer': '在文件资源管理器中打开',
'common.revealPath.fileManager': '在文件管理器中打开',
@@ -14,6 +14,7 @@ export const dict: Record<I18nKey, string> = {
'common.language.brazilianPortuguese': '巴西葡萄牙語',
'common.language.korean': '韓語',
'common.language.polish': '波蘭語',
'common.language.japanese': '日語',
'common.revealPath.finder': '在 Finder 中顯示',
'common.revealPath.fileExplorer': '在檔案總管中開啟',
'common.revealPath.fileManager': '在檔案管理員中開啟',