Skip to content

RPGMTranslate v8.0.0-rc.3

Pre-release
Pre-release

Choose a tag to compare

@savannstm savannstm released this 24 Jan 21:35

Info

English

For the first use, read the docs!

Download .msi (preferable) or .exe files for Windows, .deb for Debian-based Linux distros, .AppImage for other distros or build from source.

You can revert to previous releases in case of crucial bugs.

Русский

Перед первым использованием ознакомьтесь с документами!

Загружайте файлы .msi (рекомендуется) или .exe для Windows, .deb для дистрибутивов Linux на базе Debian, .AppImage для других дистрибутивов или билдите из исходного кода.

Вы можете вернуться к предыдущим версиям в случае обнаружения серьезных ошибок.

Changes

This release adds more than 3k lines of code into RPGMTranslate, not counting external libraries that I develop.

From rvpacker-txt-rs-lib v11.1.0

  • Added generic module for general JSON/Marshal file parsing.
  • Given up on implementing any parallelization. It looks ugly, much harder to maintain, and doesn't give any noticable performance boost.
  • Added more debug prints in processor module.
  • Made append reads preserve obsolete entries by default. This can be overridden with BaseFlags::SkipObsolete.
  • Fixed general wrong writing of entries because of an off-by-one error when parsing translation files.
  • Fixed MapInfos filename in code, which has been improperly written as Mapinfos and caused problems with case-sensitive filesystems.
  • Fixed completely non-working writing of maps because logic that's responsible for it wasn't present when... write mode was active.
  • Fixed improper processing of maps that contain four digits. For example, previously Map1000 would parse itself as 100th one and replace the actual 100th map.
  • Fixed entries from the previous map sometimes being carried to the new one.
  • Added logic to preserve top-level comments that are located above ID comments, but don't have any entries below them.

Advanced CAT Features

  • Glossary support with over 40 languages. (#9)
  • Text matching (exact, fuzzy, case sensitive, permissive).
  • Multiple translation endpoints supported (#18): Yandex, DeepL, OpenAI, Anthropic, Gemini, DeepSeek.
  • Settings tracked per endpoint; batch menu now requires specifying the endpoint for each batch translation.

Project & File Handling

  • Source language auto-detection when launching a project without set source language.
  • Added settings to define context per project/file for translation clarity or AI usage.
  • When creating a new project, users now will be prompted to select read options instead of using defaults.
  • Option to close the current project via File menu.
  • Changes from reads or purges are now applied on the fly (no reload needed).

UI

  • Split settings into sections.
  • Several menus are now movable (tab panel, search menu).
  • Context menus for movable menus to restore initial position.
  • Extended the selection area of checkboxes in batch menu to their labels.
  • Added resizing and adaptive widths for some menus.
  • Improved checkbox styling.
  • Added number input validation (including min/max values).
  • Global custom font support.
  • Fixed and revamped custom fonts for translation table.
  • Translation table rewritten as HTML for maintainability.
  • Context menu for tabs:
    • Mark tab as complete.
    • Batch process tab.
  • Line length hint feature (#11).
  • Changed copying behavior for clicking source text in translation table: Full copy on Ctrl + LMB; text selection now works as usual.
  • Proper escaping of HTML symbols in search panel.
  • Language inputs changed to fixed selects.
  • Recent projects displayed at start screen and in File menu.
  • Added more space for progress meters in tab panel.
  • Removed single-translation shortcut for textareas (Ctrl + T); replaced with a menu showing translations from multiple endpoints (like in Translator++).
  • Removed ability to select custom output directory in write menu.

Fixes & Misc

  • Fixed errors when setting column names and focusing out in translation table header.
  • Fixed column width input not focusing when opened.
  • Minor styling changes throughout.
  • Potentially improved error handling.
  • Fixed subtracting more progress than needed from progress meter when multiple translation textareas were cut/pasted simultaneously, with some of them being respective to the commented source text.
  • Possibly improved performance by pre-emptively settings the array lengths where it's possible.
  • Updated docs, they now cover all the new features.
  • Removed the ability to close the current tab with Escape.

WIP

  • Make translation table cells corresponding to <!-- ID -->, <!-- NAME -->, <!-- ORDER -->, <!-- EVENT ID --> and <!-- EVENT NAME --> uneditable or hide them.
  • Allow to select rows range to batch process/search.
  • Implement generic JSON/Marshal files support.
  • Implement controls settings.
  • Allow to search all translation rows at once in search menu.