spacedrive/interface/locales
Whisht f1255f9e23
Improve Chinese translation (#2558)
improve Chinese translation
2024-06-19 14:07:00 +00:00
..
ar [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
be [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
de [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
en [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
es [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
fr [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
it [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
ja [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
nl [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
ru [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
tr [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
zh-CN Improve Chinese translation (#2558) 2024-06-19 14:07:00 +00:00
zh-TW [ENG-293] Tag assign mode (#2462) 2024-06-18 10:52:19 +00:00
i18nnext.d.ts [ENG-1502] I18n (#1897) 2024-01-08 20:26:46 +00:00
README.md Revert untranslated keys added to locales (#2470) 2024-05-13 11:19:00 +00:00

Locales

This directory contains the translations for the application.

Adding a new language

To add a new language, create a new directory with the language code (e.g. es for Spanish) and copy the en directory into it. Then, translate the strings in the new directory.

To display the new language as an option in the application, add the language code to the LANGUAGE_OPTIONS array in interface/app/$libraryId/settings/client/appearance.tsx.

export const LANGUAGE_OPTIONS = [
  { value: 'en', label: 'English' },
  { value: 'es', label: 'Español' },
  // The rest of the languages
];

Finally, add the new language code to the dayjsLocales object in interface/locales/index.ts. list of dayjs locales can be found here

const dayjsLocales: Record<string, any> = {
  // Add the new language code and import statement here
  // Example:
  // es: () => import('dayjs/locale/es.js'),
  en: () => import('dayjs/locale/en.js'),
  de: () => import('dayjs/locale/de.js'),
  // The rest of the languages
};

Syncing locales

This command will help you sync locales with the source language (en) and find missing keys.

npx i18next-locales-sync -p en -s it -l ./interface/locales

replace it with the language you want to sync with the source language.

If you want to sync all locales with the source language (en), run:

pnpm i18n:sync