Release notes

What's new in Localizer 10.

Reworked .NET and WPF support, a form editor with Full and Safe modes, three machine translation providers, reworked translation memory and terminology, and one Output panel.

For applications on .NET 1.x–3.5, use Localizer 9. No longer supported

.NET
.NET Framework 4.8 and .NET 5–10
Machine translation
DeepL, Google Translate, Azure Translator
Results
One Output panel for every operation
Translators
Prepare Translation Task and Delivery Bundle
On this page

Six changes lead the release.

  • .NET and WPF, reworked.NET Framework 4.8 and .NET 5–10, with the .NET version and bitness detected for you.
  • Form editorFull shows forms as your application does; Safe works where their controls are missing. Runs in its own process, so a failing assembly no longer closes Localizer.
  • Machine translationDeepL, Google Translate, and Azure Translator, for the whole project at once.
  • Translation memory and terminologyImport only what matches the project, even partly.
  • Output panelOne panel for scans, imports, and validation, with the details of what changed.
  • Work with translatorsHand over only what needs work; validation runs when the translator saves.

.NET and WPF support is reworked for .NET Framework 4.8 and .NET 5–10.

  • Automatic detection. The .NET version and bitness of your application are found for you; a manual choice is saved in the project.
  • WPF and BAML. Translations are read, previewed, and written back, including resources split across several assemblies.
  • WPF preview. Choosing a row opens its tab, also a nested one, and forms are no longer cropped at a high Windows scaling.
  • RESX and .resources. Images and objects are kept when the files are written back.
  • Satellite assemblies. They take the version of the original assembly; the project can set another version.
  • 64-bit resource processing and form editor, for large 64-bit applications.

WPF / BAML guide

Full shows WinForms forms as your application does; Safe works without their controls.

Full loads each form with its real assemblies and third-party controls, as it looks in your application. Safe works where those controls cannot be loaded, for example on a translator's computer: it replaces them with stand-ins, and the whole form stays visible and translatable. If Full cannot open a form, Localizer switches to Safe and says so in Output.

Form editor · MainFormFullSafe New Order Customer: Harbor Supply Quantity: 12 Create Cancel Item Qty Price Bolts 24 0.15 Stand-in Item Qty Price Full shows the real third-party control, as in your application. Safe puts a stand-in where its assembly is missing. For example, a translator's computer may not have it. Form editor · MainFormFullSafe New Order Customer: Harbor Supply Quantity: 12 Create Cancel Item Qty Price Bolts 24 0.15 Stand-in Item Qty Price Full shows the real third-party control, as in your application. Safe puts a stand-in where the assembly is missing. For example, a translator's computer may not have it.
  • Own process. The editor runs apart from Localizer, so a failing assembly does not close it.
  • Scaled forms. Fonts and AutoScale are handled correctly, and controls stay in place at high DPI.
  • More controls. TreeView nodes, ListBox, ComboBox, CheckedListBox, and non-visual components are shown.
  • Layout changes. Size changes are saved to the project; align and move controls with the mouse or the keyboard.

Translate the whole project with DeepL, Google, or Azure.

Professional and higher

Translate Using sends the whole project, a branch, or a selection to DeepL, Google Translate, or Azure Translator, on your own provider account.

Project Auto Translate Using Harbor Supply 12 New Order Neue Bestellung Customer: Kunde: Quantity: Menge: Ship today Noch heute versenden Create Cancel Erstellen Abbrechen DeepL… Google Translate… Azure Translator… Translation Memory… Terminology… Pseudo Translate… Project Auto Translate Using Harbor Supply 12 New Order Neue Bestellung Customer: Kunde: Quantity: Menge: Ship today Noch heute versenden Create Cancel Erstellen Abbrechen DeepL… Google Translate… Azure Translator… Translation Memory… Terminology… Pseudo Translate…
  • Test button. Each provider's key is checked before you start.
  • DeepL uses the Free or Pro endpoint that matches the key; Google Translate works with an API key or, in version 3, a service account file.
  • Translation Hints, rebuilt: several variants from each provider with similarity and length metrics, quality checks set per project, highlighted differences, and keyboard shortcuts.
  • Keys stay in Windows protected storage for each user, never in the project file. Text goes to a provider only when you use machine translation.

AI translation and proofreading are Coming soon for Enterprise.

Translation memory and terminology import only what matches the project.

Translation memory: Professional and higher. Terminology: Enterprise.

  • Import Matching Translations takes only the entries that match the project, even partly. The preview counts exact, high (95%+), and broad (80%+) matches.
  • One import wizard for TMX, XLIFF 1.2, CSV or text, and Lingobit memories; TMX from a whole folder or a ZIP archive.
  • Match thresholds of Exact 100%, High 95%, Broad 80%, or your own. Long strings are segmented on import.
  • Microsoft terminology with translations is downloaded automatically and cached.
  • TBX terminology is imported in the background. File errors are shown, and the project does not change until the import finishes.
  • TM Clean Up with analysis and preview, plus translation memory statistics.
  • Export of translation memory and terminology to TMX, CSV, or text, in UTF-8 with headers.

One Output panel shows what every operation did.

Opening a project, Scan for Changes, imports and exports, Translate Duplicates, and validation report to the same panel. It replaces the Validation panel.

Output Scan for Changes 1 added · 2 updated · 1 removed New1 Gift wrap new check box, to translate Updated2 Customer: → Client: text changed, translation kept Createbutton button made wider Removed1 Ship today goes to the translation memory Translation memory Ship today Noch heute versenden Output Scan for Changes 1 added · 2 updated · 1 removed New1 Gift wrap new check box, to translate Updated2 Customer: → Client: text changed, translation kept Createbutton button made wider Removed1 Ship today goes to the translation memory Translation memory Ship today Noch heute versenden
  • Details. For most operations, the details show what exactly changed. After Scan for Changes, this is the report.
  • Go to and fix. Jump to the element from a result and fix it there.
  • Progress. The running operation shows its progress and duration.
  • Copy messages or open the folder from the panel.

Translators and proofreaders get only what needs work.

  • Prepare Translation Task (formerly Send To Translator) creates a translator project, a Delivery Bundle, XLIFF 1.2, or CSV or text, for a translator or a proofreader.
  • Delivery Bundle (formerly Localization Kit) packs the translator project, a signed Lingobit setup, a README, and extra files.
  • Translator Edition is included with every Localizer license; available features follow the main license. Translators see the same UI preview.
  • Validation on save. The checks you enforce run when the translator saves the project, so typical mistakes do not come back.
  • Import Translation Results (formerly Receive) keeps statuses, lets you choose what to import, and reports what was not imported. XLIFF import has presets.
  • Start in Translator Edition every time, if you choose so at startup.

Translation workflow

Scan for Changes sorts a new build into New, Updated, and Removed.

  • Counts. See how many texts, statuses, and non-text properties changed.
  • Second look. See what matched only approximately, which strings need another review, and where sizes changed.
  • Recent Changes filters for the last import of localized files and the last Import Translation Results, plus Any Merge Changes and Clear Merge Status.
  • Translation Readiness in Statistics: Needs translation, Needs review, Complete. The Ready for Release filter lists what is done.
  • Honest progress. Fuzzy matches and matches by value no longer count as automatic translation, and Read only and Locked resources no longer count as untranslated.

Release workflow

Apple XIB is new, and output names follow platform conventions.

  • Apple (Professional and higher). XIB and storyboards from Xcode 5 and newer are translated directly: labels, buttons, field hints, navigation, tabs, and table sections. Output goes to de.lproj, pt-BR.lproj, zh-Hans.lproj, the folders Xcode finds; the new macro is $(AppleLang).
  • gettext PO and Qt TS. Default folders and suffixes are de_DE, pt_BR, zh_CN (macro $(PosixLang)). PO files are written in UTF-8, so msgfmt accepts them.
  • PO messages. msgctxt is part of the message key, #. comments appear in Translation Hints, and translated messages lose the fuzzy flag.
  • Java .properties in UTF-8, the standard since Java 9, are read correctly, and blank lines are kept.
  • HTML. In new projects a phrase with <em>, <a>, or <span> stays one string, and placeholder, aria-label, and standby are extracted.
  • MFC. New projects name the resource-only DLL as MFC looks for it: MyAppDEU.dll for German, not MyAppDE.dll.
  • Menu preview. Menus open in the preview with their items and are translated there: Win32, Delphi, WinForms, and WPF.

Existing projects. Projects from Localizer 9 and earlier keep their folder and file names, and a pattern saved in a project does not change. In an existing PO project, Scan for Changes shows messages with msgctxt as New and Removed; their translations move over when the text is the same.

Supported formats

Validation, spelling, and pseudo-translation catch more before release.

  • New checks for double spaces, a translation identical to its source, brackets, initial capitals, menu hotkeys, trailing question and exclamation marks, Java MessageFormat apostrophes, and URLs or e-mail addresses.
  • Fix all in this group. From Output, fix a whole check or file at once. Safe fixes and fixes that need your review are separate, and one Undo reverts a group.
  • Before Create Localized, validation can be Off, Warn, or Block on errors; the command line follows the setting.
  • Output encoding. Characters that the chosen encoding cannot hold are reported with their string before the files are written.
  • Fewer false alarms for reordered text and for hotkeys in CJK languages.
  • Dictionary Manager installs and manages spell-check dictionaries. More dictionaries ship with Localizer, and suggestions handle typos, split words, hyphens, and apostrophes better.
  • Pseudo-translation (Professional and higher) has more options and a bounds mode that shifts translated bounds to test the layout.

Localization QA

A new installer and a wider command line.

Installer

  • Install for all users or only for the current user.
  • Setup downloads and installs the runtimes it needs: .NET Framework 4.8, .NET Desktop Runtime 5–10, Visual C++, and WebView2. Or install them yourself.
  • Missing components are highlighted but never block installation.
  • Spell-check dictionaries and sample projects are installed with Localizer; all installation files are signed.

Setup switches and examples

Command line

Professional and higher

  • Validation in the build, with a non-zero exit code when issues are found.
  • Add a whole folder, and choose the .NET parser version and bitness for added files.
  • Import translations from localized files, and delete translations for selected languages.
  • Pseudo-translation, including the bounds mode.
  • Translation memory import of matching entries only, from a file, a folder, or a ZIP archive, with a match threshold.
  • Project settings from a JSON file.

A new theme, start page, and menus; a translation editor with more detail.

  • New look. A new theme and icons, a new start page, and rebuilt menus.
  • Translation editor. A Type column with element types, translated position and size, highlighted non-text changes, a marker for translated properties, and Edit Translations for properties.
  • Dialog font is an editable property: double-click opens the font dialog, and one command returns the original font.
  • Tooltips for status and merge state in every table; the window and preview layout are remembered.
  • Translate Duplicates works on the project, a branch, or a selection, with results split into translated, skipped, and errors.
  • Reports. Statistics are redesigned, and Generate Project Report is a wizard that can include the full source and translated text.
  • Sample projects come with a before and an after version, so you can try Scan for Changes and Validate on them.

Fixes

Fixes in Localizer 10
  • Sending database rows to a translator as CSV no longer crashes.
  • A translation rejected by the overwrite settings or by access limits no longer changes the status of the existing one.
  • Validation in a translator task ignores strings the translator cannot edit.
  • Importing translations for projects with added folders uses the current languages and output paths.
  • Android and XLIFF translations survive a rescan; broken or unsafe archives are rejected with a message.
  • XML, XLIFF, and Qt files keep their original layout when written.
  • Failures to write embedded .NET resources are reported instead of ending with a success message.
  • The WPF preview shows forms that use application resources and says why when a form cannot load.
  • DLGINIT encoding errors explain the limit and the ways around it.
  • Localizer no longer crashes after refusing a project that the current edition cannot open, and closing it after a preview update no longer hangs.
  • A per-user installation no longer stops when Visual C++ is already installed.
  • The command line reports errors without blocking dialogs.

No longer supported

What Localizer 10 no longer supports and what replaces it
RemovedInstead
.NET 1.x, 2.0, and 3.5For these applications, use Localizer 9.
The old Microsoft Translator integrationIt stopped working on the service side. DeepL, Google Translate, and Azure Translator replace it.
The Validation panelValidation is an operation in the Output panel.

Try Localizer 10 on your own build.

Create a project from your compiled files, machine-translate it, and run the localized version in your own environment.