4.3 KiB
title | description | position | category | menuTitle |
---|---|---|---|---|
i18n translation | Contribute to NocoDB's i18n translation | 3400 | Engineering | i18n translation |
NocoDB supports many foreign languages & community contributions are now simplified via Crowdin Your help in fixing i18n goes a long way supporting NocoDB. Please follow below simple procedure to request corrections to existing translation errors.
Public Contributions
1. How to add translation corrections (to existing languages)?
- Click the language that you wish to contribute
- Click the
Translate
button; this opens upCrowdin Online Editor
- Select string in
English
on the left-hand menu bar [1] - Propose changes [2]
- Save [3] Note: Crowdin provides translation recommendation's as in [4]. Click directly if it's apt
A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follup on remaining integration work items.
Reference
Refer following articles to get additional details about Crowdin Portal usage
2. How to add a new language ?
Your native language not in list, we will be glad to support with your help! Request for it here. We will be glad to take your help to set up translations
Engineering Contributions (for NocoDB developers & maintainers)
This is exclusive to NocoDB developers & maintainers only
1. Adding / Updating a string
Add / update key-value
- [en] make changes directly to
en.json
& commit todevelop
- [any other language] add changes using
crowdin
portal; procedure described below
Add a new language
GitHub changes
- Update enumeration in
enums.ts
[packages/nc-gui/lib/enums.ts] - Map JSON path in
a.i18n.ts
[packages/nc-gui/plugins/a.i18n.ts] - Update array in
6d_language_validation.js
[scripts/cypress/integration/common/6d_language_validation.js]
Crowdin changes [admin only]
- Open
NocoDB
project - Click on
Language
on the home tab - Select target language,
Update
2. String Categories
- General: simple & common tokens (save, cancel, submit, open, close, home, and such)
- Objects: objects from NocoDB POV (project, table, field, column, view, page, and such)
- Title: screen headers (compact) (menu headers, modal headers)
- Lables: text box/ radio/ field headers (few words) (Labels over textbox, radio buttons, and such)
- Activity/ actions: work items (few words) (Create Project, Delete Table, Add Row, and such)
- Tooltip: additional information associated with work items (usually lengthy) (Additional information provided for activity)
- Placeholder: placeholders associated with various textboxes (Text placeholders)
- Msg
- Info: general/success category for everything
- Error: warnings & errors
- Toast: pop-up toast messages
Note: string name should be in camelCase. Use above list as priority order in case of ambiguity.