1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-05 21:15:38 -05:00
Files
DankMaterialShell/quickshell/translations
2025-12-03 00:34:31 -05:00
..
2025-12-03 00:34:31 -05:00
2025-12-03 00:34:31 -05:00
2025-11-12 17:18:45 -05:00
2025-11-12 17:18:45 -05:00
2025-12-03 00:34:31 -05:00
2025-11-12 17:18:45 -05:00

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:

[
  {
    "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:
    {
      "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:

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