Skip to content

Conversation

Nicooow
Copy link

@Nicooow Nicooow commented Oct 13, 2025

Hi! This isn’t a functional change to QLC+, so I didn’t use the PR template this time.

I chatted with the maintainer of the QLC+ Instagram account, and he thought this was a great idea—so here’s a simple script to calculate the translation progress percentage for each language and module. It’s basic but does the job.
I’ve also added a GitHub Action that will run whenever a .ts file is modified in a PR, giving a quick update on the translation status. It might be nice to share this info more widely, though:

  • Option 1: Update the Wiki page (How to translate QLC+ in your language) after each merge into master (I don’t have edit access, unfortunately).
  • Option 2: Add a .md file in the repo root to guide contributors and show the progress.

I placed the script into a new scripts folder. It might be a good idea to move all .sh files there to keep the root directory cleaner.


Script Output:

Details

Projects 🇩🇪 🇪🇸 🇫🇷 🇮🇹 🇳🇱 🇨🇿 🇧🇷 🇪🇸 🇯🇵 🇷🇺 🇺🇦 🇵🇱
Fixture Editor 99% 84% 84% 81% 81%
Launcher
ArtNet Plugin 94% 77% 77% 37%
DMX4Linux Plugin
DMX-USB Plugin 65% 67% 46%
E1.31 Plugin 96% 96% 96% 36%
ENTTEC Wing Plugin
GPIO Plugin 77% 77% 77%
HID Plugin 90% 90% 90% 90% 60%
Loopback Plugin
MIDI Plugin
OLA Plugin
OS2L Plugin
OSC Plugin 95% 81% 81% 13%
Peperoni Plugin 62%
SPI Plugin
UART Plugin
uDMX Plugin 81% 63% 72% 72%
Velleman Plugin
QML UI 74% 99% 62% 60% 61% 61%
UI 89% 99% 84% 86% 66% 89%
Web Access 72% 49% 49% 8% 72%

@mcallegari
Copy link
Owner

Why not integrating this into the existing translate.sh tool?
E.g.
./translate.sh stats

@coveralls
Copy link

coveralls commented Oct 13, 2025

Coverage Status

coverage: 34.26%. remained the same
when pulling 92290d0 on Nicooow:translation_report
into c303c79 on mcallegari:master.

@Nicooow
Copy link
Author

Nicooow commented Oct 13, 2025

Why not integrating this into the existing translate.sh tool? E.g. ./translate.sh stats

You're right. I didn’t want to overload the current script. I’ve made the changes, you can check the result here

EMOJI_FLAGS="🇩🇪 🇪🇸 🇫🇷 🇮🇹 🇳🇱 🇨🇿 🇧🇷 🇪🇸 🇯🇵 🇷🇺 🇺🇦 🇵🇱"

# [path|category_name]
TS_FILES=(
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like this part. It's not dynamic. If we add new ts files I need to remember about this.
The script already finds all the ts files depending on the build.
Can labels be like the folder name? like "fixtureeditor", "plugins/midi" and so on?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, we can, but the result in the table will be very ugly. Maybe we can mix the two? We search for all .ts files, and if we know the path (TS_FILES), we get the friendly name, otherwise, we just put the path

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants