summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/translations/README.md
blob: 19fc178098bccacce88d7705fe0c10ecb3138c67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# 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