Commit Graph

1906 Commits

Author SHA1 Message Date
ispyisail dd973fb220 Merge pull request #1379 from bhangart/feature/fr-translation-mirror
Serve the French UI from qet_fr.ts instead of the code text
2026-10-08 13:40:41 +13:00
ispyisail d0657f36db Fix 9 messages always shown in French; add missing English
Nine messages were never passed through tr(), so every user saw them in
French: the undo entries for grouping and ungrouping terminals, for
editing an arc (3), an ellipse, a rectangle and a PLC table in the
element editor, and the error box when integrating a title block
template fails. They are now wrapped, text unchanged.

qet_en.ts also lacked English for 63 messages added since the last
translations update (Customize dialog, mouse gestures, toolbar contents,
mirror, element scale, paste element information, paper format).
update_translations was run on qet_en.ts with lupdate's guessing
heuristics off, then the 72 new entries were translated. Most of the
diff is lupdate refreshing line numbers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 12:29:08 +13:00
Beat Hangartner 8fa73f72a2 Refresh qet_fr.ts and mirror the strings added since 4 October
lupdate over sources/ adds the 164 strings merged after the last
translations update (da39ec1c8) and revives 3 entries it had wrongly
marked vanished (the issue #1366 describes for English); the mirror
script then fills the new ones. qet_fr.qm: 3792 finished, 0 unfinished,
0 null records.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 20:51:45 +02:00
Beat Hangartner 287689d185 Serve the French UI from qet_fr.ts instead of the code text
The strings in the code are French and serve as both translation key
and displayed text. lang/qet_fr.ts was almost empty: 3425 messages and
22 plural messages had no translation, so lrelease compiled them as
null-string records (3469 in qet_fr.qm) and the French UI showed the
code text through QTranslator's null fallback. Correcting French
wording therefore meant changing the key, which orphans the translation
of that string in all 33 other language files; the "Élement" typo fix
needed a key rename in 34 files for one accent.

This copies every empty French entry's source text into its own
translation, so qet_fr.qm is complete (514 KB, 0 null records, like
the other languages) and French wording can be corrected in the .ts
alone. Translations that already had text (113 French renderings of
English-written sources, 16 identical, 54 plurals) are untouched, as
are the 10 vanished entries. The file is byte-identical outside the
rewritten <translation> elements.

misc/i18n/mirror_source_language.py does the copy and is meant to run
after update_translations; --check exits 1 when a run is needed.
Forgetting it breaks nothing: an empty entry still falls back to the
code text. INSTALL.md section 10 explains the rule and that
-removeidentical must never be added to lrelease. Tests:
misc/i18n/test_mirror_source_language.py with a before/after fixture
pair covering every message class.

No visible change in the application.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 20:51:30 +02:00
ispyisail 47ecd06d1c Merge pull request #1371 from bhangart/fix/element-typo
Fix the spelling of "Élément" in the element description
2026-10-08 05:15:15 +13:00
Laurent Trinques 03f2911295 Merge pull request #1373 from bhangart/fix/lang-pl-missing
Add the missing Polish translations
2026-10-07 13:15:10 +02:00
Beat Hangartner 6c9f1b40ab Fix the spelling of "Élément" in the element description
The "general" tab of the element properties starts its description with
tr("Élement\n"), missing the second accent. The French UI shows the typo,
and the misspelt string is the translation key in all 34 lang/qet_*.ts
files (and from there was copied into 11 phrase books).

This fixes the source string to "Élément\n" and renames the key in the
34 .ts files so every existing translation stays attached. Without the
.ts change, the next lupdate run would mark the old entry vanished and
add an empty "Élément" entry: lupdate's similar-text heuristic does not
carry the translation over (checked with Qt 6.11 lupdate on copies of
qet_de/pl/en/fr.ts). With the change, lupdate reports the entry as
already existing and keeps the translation. qet_fr.ts also gets the
corrected spelling as its translation.

No behaviour change besides the one character in the label. The phrase
books keep their copy of the typo for now; they are cleaned up with the
other phrase-book corrections.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
Beat Hangartner dad46cd75f Use "element główny" for the master element in the new Polish strings
Four strings added on this branch rendered "maître" as "nadrzędny",
following the rest of the file. A Polish reviewer confirmed that the
phrase book's "Element główny" is the right term and "nadrzędny" is
wrong for a master element. The 14 older entries that use "nadrzędny"
are left for a separate change, so this PR does not rewrite existing
translations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
Beat Hangartner e4bdb296ae Refresh qet_de.ts and translate the strings added since 4 October
Upstream added 154 source strings after the last translations update
(da39ec1c8), among them the Toolbars, Shortcuts, Gestures and 3D mouse
pages, DXF block export, the image dark-theme option, text width and
cross-reference stacking. That update had also marked 38 entries vanished
whose strings are still in the code (table properties, text field
properties, database model widget), so lrelease left them out and the
German UI showed French there (the same issue #1366 fixes for English).

lupdate over sources/ revives the 38 with their existing translations and
adds the new strings; the 116 that had no translation are translated with
the terms the file already uses. lupdate's same-text suggestions were
reviewed rather than accepted (e.g. "Grille des textes" had been offered
as "Textübersicht"). Most of the diff is lupdate moving line numbers.

Checked with lrelease (3782 translations, no warning) and the placeholder
check for every changed entry.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
Beat Hangartner df32e9088f Refresh qet_pl.ts and translate the strings added since 4 October
Upstream added 154 source strings after the last translations update
(da39ec1c8), among them the Toolbars, Shortcuts, Gestures and 3D mouse
pages, DXF block export, the image dark-theme option, text width and
cross-reference stacking. That update had also marked 38 entries vanished
whose strings are still in the code (table properties, text field
properties, database model widget), so lrelease left them out and the
Polish UI showed French there (the same issue #1366 fixes for English).

lupdate over sources/ revives the 38 with their existing translations and
adds the new strings; the 116 that had no translation are translated with
the terms the file already uses. lupdate's same-text suggestions were
reviewed rather than accepted; the 20 offered for Polish were kept
after review. Most of the diff is lupdate moving line numbers.

Checked with lrelease (3782 translations, no warning) and the placeholder
check for every changed entry.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
Beat Hangartner 5f0b918c3e Add the missing German translations
qet_de.ts had 407 strings with no German translation (plus 7 plural
entries with only the singular filled), almost all from features merged
in the last two months: auto-numbering pages, script manager, AI
assistant dialog, live server, material list, prefix configuration,
element info widget, fillet/arc tools, alignment and grouping. A German
user saw the French source text in those places.

This fills every empty translation and the missing plural forms, using
the terms the file already uses (Bauteil, Seite, Leiter, Anschluss,
Nummerierung, Schnellzugriffsleiste). Two existing entries were wrong
and are corrected: "Exécuter un script" was translated as "v", and the
spin-box suffix " pas de grille" (grid steps) as " kein Raster".

No source code or file-format change. Checked with lrelease (3630
translations, no warning) and a script that compares source and
translation placeholders (%1, %n) for every changed entry.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
Beat Hangartner af10f50153 Add the missing Polish translations
qet_pl.ts had 675 strings with no Polish translation (plus 4 plural
entries with missing forms), almost all from features merged in the last
two months: auto-numbering pages, script manager, AI assistant dialog,
live server, material list, prefix configuration, shortcut bar, element
picker, conductor and background colour buttons, fillet/arc tools,
alignment and grouping. A Polish user saw the French source text in
those places.

This fills every empty translation and the missing plural forms, using
the terms the file already uses (element, arkusz, przewód, zacisk,
numeracja, pasek skrótów). Three existing entries are corrected: the
plural of "%n action(s)" contained the placeholder "niepewne"
(uncertain) and an empty third form, the PDF page count had only its
first form, and "Borne" was translated as "Terminal" twice while the
rest of the file uses "Zacisk".

No source code or file-format change. Checked with lrelease (3630
translations, no warning) and a script that compares source and
translation placeholders (%1, %n) for every changed entry.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 10:25:32 +02:00
ispyisail a3c178e4ce Update the English translation (qet_en.ts)
lupdate over sources/ finds 98 new source texts. 41 are new and are
translated here: the Toolbars settings page, the new Shortcuts page
controls (category filter, search by key, Menu column, copy list), the
Edit > Selection submenu, DXF block export options, cross-reference
stacking, picture dark-theme adaptation and text width.

The other 57 were already translated but marked vanished by the
4 October translations update (da39ec1c8), so lrelease left them out
and these screens showed French in the English interface: the 3D mouse
settings page, the table properties editor and the text field
properties. They come back with their existing English.

lrelease: 3737 finished, 0 unfinished.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 20:08:38 +13:00
Laurent Trinques 85342f4b56 Merge pull request #1318 from ispyisail/feature/bom-skip-junctions-slaves
Linux build and tests / Build and test (Qt 6, Debug) (push) Failing after 2m7s
Add options to leave junctions and contact blocks out of the parts list
2026-10-05 17:59:05 +02:00
ispyisail e7180cd3d2 English for the parts-list options (#1178)
Slave contacts, Leave out junctions and its tooltip; the locations of the
entries after them in the two .ui files moved down accordingly.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 22:14:18 +13:00
ispyisail 33f7d27388 Merge remote-tracking branch 'upstream/master' into feature/live-remember
# Conflicts:
#	lang/qet_en.ts
2026-10-05 21:35:52 +13:00
ispyisail 76d9ab2911 Live mode: English for the print question
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 20:34:14 +13:00
ispyisail 85492c8f75 Live mode: English for the remembered-choice texts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 20:22:38 +13:00
Laurent Trinques dafd8e8024 Update translations files 2026-10-04 12:55:47 +02:00
Laurent Trinques da39ec1c86 Update translations files 2026-10-04 12:42:50 +02:00
ispyisail a13cab0945 English: translate the 48 new entries in qet_en.ts
lupdate (run on qet_en.ts only) found strings added since the last
update that the English interface showed in French:

- wires per terminal (#1272, #1273): the rules in Settings > General
  and Project properties, the experimental-feature warning, and the
  tooltip on a terminal that refuses a conductor (both plural forms);
- Display > Show (#1268): the item kinds and the "%n kinds of items
  hidden" status message;
- the 3D mouse settings page.

Terms follow the existing English: conductor (conducteur), terminal
(borne), sheet (folio), sheet reference (renvoi de folio). The menu
"Affichage" is "Display", so its "Afficher" submenu is "Show" rather
than lupdate's guess "Display". lrelease reports 3573 finished,
0 unfinished. Other languages are untouched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 08:36:32 +13:00
Laurent Trinques 04b7659180 Merge pull request #1261 from ispyisail/fix/english-untranslated
Fix 175 strings showing in French in the English interface
2026-10-02 23:04:14 +02:00
Laurent Trinques 7d61acebd9 Merge pull request #1260 from ispyisail/fix/live-mode-polish
Fix live mode's English text, settings path and screenshot (#1178)
2026-10-02 23:02:54 +02:00
ispyisail ee62f2a4e8 English: translate the 175 entries still unfinished in qet_en.ts
lupdate had added them, but nobody filled them in, so the English
interface showed these strings in French: align, group and ungroup,
arc and fillet, centre on cursor, paste at the original position, wire
hops, the collection prefixes, the materials list, saving and loading
settings, the terminal-name check in the symbol editor, recovery files,
the macro recorder's messages and a few more.

About 30 of them were pre-filled by lupdate from an identical string
elsewhere and left unfinished; some of those guesses were wrong (a
dialog's "Annuler" offered as "Undo"). All are reviewed here. Plural
messages get both English forms. lrelease now reports 3487 finished,
0 unfinished. Other languages are untouched.

Terms follow the existing English: sheet (folio), terminal (borne),
conductor (conducteur), parts list (nomenclature); "liste de matériaux"
is "materials list" so it is not confused with the parts list.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ELKpbGxqJd7EFiTUypBtVe
2026-10-03 09:19:08 +13:00
ispyisail 5859bc3353 Live mode: English text, the right settings tab, folio-only screenshot
Reported on #1178 after a first try of live mode on macOS:

- The English interface showed the live-mode setting in French. The
  strings were in lang/qet_en.ts but untranslated. This fills in English
  for live mode, the script buttons, the macro recorder and the Connect
  an AI assistant dialog (101 entries); other features' untranslated
  English entries are left for their own change.
- The setting is on Configurer QElectroTech > Général > Projets, but the
  start-up warning, the MCP server's error and its README all said
  "Configurer > Général". All three now name the Projects tab, and the
  README and the server name the English menus and buttons.
- qet_live_screenshot grabbed the whole viewport, so a tall window around
  a landscape folio came back mostly empty. It now crops to the folio's
  frame and title block where they are on screen (the whole viewport if
  the folio is scrolled out of sight), and says so in cropped_to_folio.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 09:14:57 +13:00
Mikhail d8b687530d Russian translate new dialog text 2026-10-03 00:45:20 +05:00
Laurent Trinques 30cd96e240 Update translations files 2026-10-02 15:49:50 +02:00
Laurent Trinques 8d2243586e Merge pull request #1205 from ispyisail/feature/multi-wire-properties-panel
Edit several wires at once in the Selection properties panel
2026-10-02 07:56:25 +02:00
Laurent Trinques bbb6f502e7 Merge pull request #1216 from ispyisail/fix/935-folio-to-sheet
Rename "folio" to "sheet" in the English interface
2026-10-02 07:55:18 +02:00
ispyisail 5b4bba96ae English: call a folio a sheet
Issue #935. Changes the English translation only: "folio" becomes "sheet"
in the 171 interface strings that use it, and the "Folio" label of the seven
shipped title blocks becomes "Sheet". Variable names (%folio, %{folio-id},
%{previous-folio-num}, ...) are unchanged, so existing title blocks and
labels keep working. French and the other languages are untouched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 07:50:15 +13:00
Mikhail 0817c7dd87 Rassian translate 2026-10-01 23:29:23 +05:00
ispyisail 0bc27f0023 Translations for the multi-wire panel strings (English, French)
The three new strings only. A full update_translations run rewrites 33
files (+87,518/-52,666 lines, 184 new strings from other merged work),
so that is left to the next translations refresh.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 06:20:17 +13:00
ispyisail 18fe429254 Merge pull request #1186 from neitri/master
Russian Translation
2026-10-01 10:48:20 +13:00
ispyisail ec49c7d1ad Russian translation: review fixes
- fill all three Russian plural forms for the PDF page count and the two
  font-recovery messages (lrelease dropped them, so French showed)
- restore the trailing and embedded newlines 12 translations had lost
- translate the remaining French AutoNumberingDockWidget tooltip
- wording: Повернуть %1, Сочетание клавиш / Горячие клавиши,
  Перетаскивание: наклон, горизонтали, Вспомогательное текстовое
  описание 1, со значением, ни при какой ширине

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 10:47:09 +13:00
ispyisail ce2b33cd34 Update pt_BR translation from forum topic 3205
wanderson_rds posted a corrected qet_pt_BR.qm on the forum
(https://qelectrotech.org/forum/viewtopic.php?id=3205). The .qm was
decompiled with lconvert and merged into the current qet_pt_BR.ts,
changing only the <translation> of each message, so line locations and
the lupdate layout are untouched.

- 266 strings that had no translation now have one (all plurals too).
- 29 existing translations replaced: "forme" was translated as "form"
  (formulário) instead of "shape" (forma); zero-width spaces removed
  from several "variáveis"; smaller wording and grammar fixes.
- "TextLabel" kept as master had it; vanished entries not touched.

lrelease: 2949 translations and 266 untranslated before,
3215 and 0 after.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 10:06:54 +13:00
Mikhail aa893d610d Russian Translation 2026-10-01 00:57:19 +05:00
ispyisail 0f259bafb5 Spell out the Shift-drag hint on symbol texts
Hovering a symbol's text shows its value and the hint "<Shift> to move"
("<Shift> pour déplacer" in French), which does not say what moves: a
plain drag moves the whole symbol, Shift+drag moves the text alone
(DynamicElementTextItem::mousePressEvent).

English: "Hold Shift and drag to move this text on its own".
French: "Maintenir Maj et faire glisser pour déplacer ce texte seul".

Translations only, as for #1124: the source string is unchanged, so the
other languages keep their current text.

Revives #499 (closed 2026-06-11 by its author to test locally first).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 11:03:52 +13:00
plc-user f15736bff7 Improve German wording 2026-09-29 18:39:04 +02:00
Laurent Trinques 0592b661df Merge pull request #1156 from Kellermorph/ger-translation
German Translation
2026-09-29 16:20:34 +02:00
Kellermorph 10d7dae5d0 German Translation 2026-09-29 14:14:02 +02:00
ispyisail 5683a53536 English: fix broken and untranslated strings (#935, phases 1 and 2)
Translation text only; no source string, no other language touched.
"folio" is kept, as decided in #935, and the two "on the current sheet"
strings whose source says folio now say folio too.

- Broken wording: "N° scheme", "Export fully folio", "Title of folio",
  "Label folio", "N° of folio", "Dimensions of folio", "Folio Untitled",
  "Move up  this folio", "Title block informations", the table
  "lines are missing %1" warning.
- Folio report elements get one name, "folio reference", which
  DiagramView already used (was: folio referencing(s), reference folio
  following, previous reference folio, folio reports).
- Machine-translation damage: "</ b>" broke the folio-reference error
  message's HTML, and two variable help texts listed "% F", "% l" etc.,
  which are not variables.
- Plurals still showing French or wrong: conductor colour undo entry
  (empty, so French was shown), "%n erreur", "%n forme", "%n item placed"
  for both forms, "redesigned" for redrawn, and "bornes" rendered as
  "boundaries" in the element-reload message.
- Cross-reference spelled one way; "Réf." and "Numéro : %1" translated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 11:00:58 +13:00
Alfmat01 257ec77136 Complete Spanish translations
Complete Spanish translations
2026-09-28 09:27:43 +02:00
Laurent Trinques d56e99702c Update EN translations files 2026-09-27 16:51:51 +02:00
Laurent Trinques e9610d3f96 Update translations files 2026-09-27 12:47:18 +02:00
ispyisail 0cb424bd06 Merge remote-tracking branch 'upstream/master' into proto-conductor-selection-properties
# Conflicts:
#	cmake/qet_compilation_vars.cmake
#	lang/qet_en.ts
#	sources/qetdiagrameditor.cpp
2026-09-27 09:07:41 +13:00
ispyisail b61193f66f Revert "german translation qm file" 2026-09-26 17:50:02 +12:00
Kellermorph 286002fe25 german translation qm file 2026-09-25 21:48:49 +02:00
ispyisail 91e8956734 Add translation suggestions for the interface to 29 phrase books
Fills lang/phrase/qet_fr_xx.qph for every language QET ships, following
on from discussion #873. A phrase book is never compiled into what
ships -- a translator opens it in Qt Linguist and sees a suggestion
already filled in, to accept or correct.

Only ever appends. phrasebook.write() skips any source string already
in the file (case-insensitive), so no existing entry -- human or
machine -- is touched. 24 languages had no phrase book at all before
this; the other 5 (da, de, nl, ru, sv) keep every line they had.

Built and run with tools/qet-i18n in the qelectrotech-docker harness
(DeepSeek Flash). Companion to qelectrotech-elements#82, which does the
same for the element collection.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-24 07:34:47 +12:00
Kellermorph 4b8db6be0e Update German translation 2026-09-19 13:25:39 +02:00
Laurent Trinques 428687ee4b Update ca translations, thanks Antoni 2026-09-14 12:45:28 +02:00