Skip to content

Releases: MoDD0/moddo-evolution-translator

v1.2.2 — Dark-mode readability fix

20 May 20:58

Choose a tag to compare

Highlights

Translated mails stay readable under dark desktop themes.

Before this release: under a dark GTK theme (KDE Breeze Dark, GNOME's dark preference, etc.) a white email would flip to a dark background after Translate, losing readability. The original mail stayed light — only the translation view turned dark.

After this release: the translator output is wrapped in a minimal HTML document with explicit color-scheme: light and a white background before it is loaded into the message view. Mails that carry their own dark inline styling (e.g. dark-themed newsletters) keep their look — only mails with no color hints of their own are affected.

This was a long-standing readability bug inherited from the upstream project (costantinoai/evolution-mail-translate); it was never fixed there.

Technical detail

e_web_view_load_string() loads its argument raw — it does not apply Evolution's /usr/share/evolution/webkit/webview.css (which carries color-scheme: light dark) and bypasses the full EMailFormatter pipeline. In a dark environment that means WebKit's dark user-agent stylesheet takes over for anything without explicit <body bgcolor> or inline body styling. The new wrapper short-circuits that.

The translation cache continues to store the raw translator output; the wrapper is applied at load time, so cache hits work without invalidation. Restore-original (e_mail_display_set_part_list) is unchanged — it still routes through Evolution's normal rendering pipeline.

Upgrade

cd evolution-mail-translate
git pull
sudo rm -rf build && ./scripts/install-from-source.sh
killall evolution 2>/dev/null; evolution &

If you previously hit the libical-glib.so.3 => not found failure after upgrading evolution-data-server (Issue #5), this release picks up the rebuild automatically since you're rebuilding against the current sysroot.

Future work

A user-controlled toggle ("Force light theme for translations: ON / OFF / Auto") is on the v1.4 roadmap — either as a GSettings entry alongside the planned compute-type dropdown, or as an in-message switch (em Client style).

Full changelog

See docs/CHANGELOG.md.

v1.2.1 — Evolution 3.60 verified + optional CPU quantization

04 May 14:02

Choose a tag to compare

What's new in v1.2.1

Evolution 3.60.1 verified

The plugin builds and runs unchanged against the Evolution 3.60 series on Manjaro. No EUI / EUIManager API changes were needed on top of the 3.56 baseline — if you were on v1.2.0, this is a drop-in upgrade.

Optional CPU quantization (ARGOS_COMPUTE_TYPE)

You can now opt into ctranslate2 quantization for noticeably faster CPU translation. Default behavior is unchanged.

# Recommended — 2–4× faster CPU translation, minimal quality loss
ARGOS_COMPUTE_TYPE=int8 evolution

# Or for slightly higher quality at modest speedup
ARGOS_COMPUTE_TYPE=int8_float32 evolution

Valid values: auto (default), int8, int8_float32, int8_float16, int16, float16, bfloat16, float32, default. Invalid values are rejected with a warning and fall back to the argos default — they no longer crash deep inside ctranslate2.

Compatibility matrix

Evolution Status
≥ 3.56 (EUIManager API) ✅ supported, verified up to 3.60.1
< 3.56 (legacy GtkUIManager) ✅ supported via fallback codepath

Full changelog: https://github.com/MoDD0/moddo-evolution-translator/blob/main/docs/CHANGELOG.md
Diff vs v1.2.0: v1.2.0...v1.2.1

v1.2.0 — Toolbar button & custom keyboard shortcut

01 Mar 15:26

Choose a tag to compare

What's new

Toolbar button

The Translate action now appears directly in the mail toolbar with a translate-symbolic icon, right next to Reply/Forward. One click to translate, one click to get the original back — no menu diving needed.

Custom keyboard shortcut

The shortcut for translating a message is now configurable in Edit → Translate Settings. Click the shortcut button, press your preferred key combination, hit Save. Takes effect after restarting Evolution.

Evolution ≥ 3.56 compatibility

Full support for the new EUIManager / EUIAction API introduced in Evolution 3.56. The plugin now works correctly on both modern (≥ 3.56) and legacy (< 3.56) Evolution builds.

Bug fixes

  • Resolved issues #4, #5, costantinoai#6 and merged upstream PR #3
  • Fixed stale translation state when switching messages quickly
  • Fixed ArgosTranslate crash on Python 3.14 (spacy/pydantic conflict — uninstall spacy from venv)

Why this plugin is worth it

Unlike paid Windows mail clients, this gives you fully offline, privacy-focused translation powered by Argos Translate — your emails never leave your machine. And it runs natively inside GNOME Evolution.

Installation

See README for full instructions (including Manjaro/Arch).

git clone https://github.com/MoDD0/evolution-mail-translate.git
cd evolution-mail-translate
./scripts/install-from-source.sh