Skip to main content

LinguaEdit

Version GitHub Release License Python Qt Platforms Translate on Transifex

LinguaEdit is a desktop editor for software localization files and subtitles. It runs on Linux, macOS, and Windows and is built with Python, PySide6, and Qt 6.

Screenshots

Editor

LinguaEdit editor

Validation

Validation results

Subtitle editing

Video subtitle editor

Install

The latest release is v1.8.20. Download the file for your system:

Platform Download Install
macOS, Apple Silicon ZIP Unzip and move LinguaEdit to Applications.
macOS, Intel ZIP Unzip and move LinguaEdit to Applications.
Windows Installer Run the installer.
Debian or Ubuntu DEB package Install with APT or a package manager.
Python Wheel Install with pip; requires Python 3.10 or newer.

The Python package published on PyPI may lag behind the GitHub release. For v1.8.20, download the wheel above, then run:

python -m pip install ./linguaedit-1.8.20-py3-none-any.whl
linguaedit-gui

The macOS app requires macOS 13 or newer. The Windows installer does not require a separate Python installation. The Debian package requires Python 3.10 or newer and installs its Python dependencies during setup.

Optional tools: ffmpeg for extracting subtitles from video, hunspell for spell checking, and git for version control features.

Supported formats

LinguaEdit edits the following localization formats:

Format Extensions
GNU gettext .po, .pot
Qt Linguist .ts
XLIFF 1.2 and 2.0 .xliff, .xlf
SDLXLIFF .sdlxliff
memoQ XLIFF .mqxliff
JSON localization files .json
YAML .yml, .yaml
Android resources .xml
Flutter ARB .arb
PHP arrays .php
Java Properties .properties
Apple Strings and Stringsdict .strings, .stringsdict
Unity assets .asset
.NET resources .resx
Chrome extension messages messages.json
Godot translations .csv, .tres
SubRip and WebVTT subtitles .srt, .vtt

TMX is supported for translation-memory import and export. It is not an editable catalog format. See Supported Formats for details.

Features

  • Edit several files in tabs; open files by drag and drop.
  • Find and replace text with regular expressions, case matching, or whole-word matching.
  • Filter entries by translation status, warnings, bookmarks, and tags.
  • Use translation memory with fuzzy matches, context weighting, and TMX import/export.
  • Maintain glossaries with approved and forbidden terms, and check term consistency.
  • Get suggestions from DeepL, OpenAI, Google, Lingva, MyMemory, Argos Translate, and OpenNMT-py. Hosted services may require API credentials. Argos and OpenNMT can run locally; OpenNMT also requires a compatible model and onmt_translate on PATH.
  • Check placeholders, markup, plural forms, terminology, accessibility, and other translation issues before saving.
  • Review changes with Git, monitor files for external edits, and recover unsaved work from local snapshots.
  • Translate subtitle files and extract subtitles from video with FFmpeg.
  • Use the dashboard, layout simulator, regex tester, OCR, text-to-speech, macros, and configurable QA profiles.

Keyboard shortcuts

Shortcut Action
Ctrl+O Open a file
Ctrl+S Save
Ctrl+H Find and replace
Ctrl+U Toggle fuzzy status
Alt+Enter Go to the next untranslated entry
Ctrl+Enter Save and go to the next untranslated entry
Ctrl+B Copy source text to translation
Ctrl+D Open the project dashboard
Ctrl+Shift+D Show Git diff
Ctrl+Alt+T Open batch translation
Ctrl+Shift+F Toggle focus mode
Ctrl+Alt+Z Toggle Zen mode
Ctrl+R Toggle review mode
Ctrl+Shift+A Open AI review
F11 Toggle full screen

Translations

The project has 18 language catalogs with 1,612 messages. Catalog updates sync daily from Transifex through GitHub Actions. Release builds include catalogs that are more than 20% translated.

To contribute a translation, join the project on Transifex.

Build from source

git clone https://github.com/yeager/linguaedit.git
cd linguaedit
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e ".[dev]" build
linguaedit-gui

Build a wheel with:

python -m build --wheel

The build compiles .ts catalogs to .qm files inside the package when a catalog is more than 20% translated. Compiled .qm files are build artifacts and are not stored in the source tree. The release workflow builds the macOS apps, Windows installer, Debian package, and Python wheel; see GitHub Actions.

The automated suite contains 147 tests. To run it locally:

QT_QPA_PLATFORM=offscreen pytest -q

License

GPL-3.0-or-later. See LICENSE.

Author

Daniel Nylander — danielnylander.se · GitHub

Metadata

Release files for linguaedit 1.8.20

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for linguaedit 1.8.20
File Size Uploaded Provenance Actions
linguaedit-1.8.20.tar.gz 986.1 kB With provenance Details for linguaedit-1.8.20.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for linguaedit 1.8.20
File Interpreter ABI Platform Actions
linguaedit-1.8.20-py3-none-any.whl Python 3 none any Details for linguaedit-1.8.20-py3-none-any.whl

Total release size: 2.3 MB

Release files / linguaedit-1.8.20.tar.gz

Download URL linguaedit-1.8.20.tar.gz
Size 986.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e62fa662227809317b32d5a1f7968840f41e37175f4445895e74897b5c71b34b
BLAKE2b-256 checksum
How to use checksums
c391cccfa8ad8893856eaf39e2836c88d469bad3a7a04455c0635a83cf91d936
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / linguaedit-1.8.20-py3-none-any.whl

Download URL linguaedit-1.8.20-py3-none-any.whl
Size 1.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
cc414ccf5f52ac77bff40c8c1304906c97d09d52387e7986523ffd0f12d801fb
BLAKE2b-256 checksum
How to use checksums
0d38340c01a1f8f8fbe7dc15b660bc53385d42decf576a776897241676e6a0ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for linguaedit 1.8.20

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for linguaedit-1.8.20.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page