1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-06 05:25:41 -05:00
Files
2025-11-12 17:18:45 -05:00

65 lines
1.9 KiB
Markdown

# DankMaterialShell Translations
This directory contains translation files for DankMaterialShell extracted from all qsTr() calls in the QML codebase.
## Files
- **en.json** - Source language file with English strings and file references
- **template.json** - Empty template for creating new translations
- **extract_translations.py** - Script to regenerate translation files
## POEditor Format
The JSON files follow POEditor's import format:
```json
[
{
"term": "string to translate",
"context": "file:line",
"reference": "Modules/Settings/AboutTab.qml:45",
"comment": ""
}
]
```
### Field Descriptions
- **term**: The source string in English (from qsTr() calls)
- **context**: Primary location where the string appears (file:line)
- **reference**: All locations where this string is used (comma-separated)
- **comment**: Additional notes for translators (currently empty)
## How to Create a New Translation
1. Copy `template.json` to your language code (e.g., `es.json` for Spanish)
2. Fill in the `translation` field for each entry:
```json
{
"term": "Settings",
"translation": "Configuración",
"context": "Modals/Settings/SettingsModal.qml:147",
"reference": "Modals/Settings/SettingsModal.qml:147",
"comment": ""
}
```
3. Import to POEditor or use directly in your translation workflow
## Regenerating Translation Files
To update the translation files after code changes:
```bash
cd /home/brandon/.config/quickshell/DankMaterialShellGit/translations
./extract_translations.py
```
This will scan all QML files and regenerate `en.json` and `template.json`.
## Notes
- Strings are deduplicated - if the same string appears in multiple locations, references are merged
- File paths are relative to the project root
- Line numbers are preserved for accurate context
- Empty strings and comments are reserved for translator notes