Skip to content

OpenFadeR v0.2.4 : Seven Languages for the App and its Extensions

Choose a tag to compare

@github-actions github-actions released this 22 Oct 17:54
· 79 commits to main since this release
039e2a4

This release makes OpenFadeR and its bundled extensions available in seven languages: English, French, Spanish, German, Portuguese (Brazil), Italian and Dutch.

Languages

  • New setting PREFERENCES > VIEW > LANGUAGE: SYSTEM (the default) or one of the seven languages, each listed in its own language.
  • SYSTEM follows the computer's language when it is one of the seven, and English otherwise.
  • A change applies at once, including the plugin manager, the Plugins menu, the File menu entries and the browser tree.
  • Menus, settings, dialogs, tooltips, status messages and the track browser are translated: 2257 texts per language.
  • Labels that match DJ hardware stay in English in every language: CUE, SYNC, MASTER, LOOP, BEAT FX, KEY and similar.
  • Labels on fixed-width buttons were measured with the interface font and shortened where they would have been cut.

Extensions

  • The bundled plugins are translated too: descriptions, settings, Plugins menu entries, error and status messages, and the rekordbox-device pages under PREFERENCES > DJ SYSTEM (player settings keep their hardware names).
  • The bundled themes carry translated descriptions.
  • A plugin translates itself with locales/<language>.json in its folder: English text to translation, with {} for values filled in at run time. A theme does the same with a "locales" entry in its file. Every request to a plugin also carries the language as "lang". See docs/plugins.md and docs/skins.md.
  • Effect, knob mode and pad mode names stay in English, like the app's own DJ labels.

Fixes

  • In every language other than English, the jog wheel arcs and the knob arcs did not draw: the numbers in their drawings were written with a decimal comma. They now draw in every language.
  • The BPM filter fields of the browser accept a decimal comma.

For Contributors

  • Every shown text is marked: @tr("…") in the .slint files and tr!("…") in the app's Rust code; a text that comes from an extension goes through the extension's own translations instead.
  • python3 ui/translations/extract.py collects new texts and adds them to each language's file in ui/translations/<language>/LC_MESSAGES/openfader-ui.po, where they show in English until translated.
  • A test reports every text a language is missing and every translation whose placeholders differ from the English.
  • Corrections from native speakers are welcome as pull requests, on the app's .po files and on the extensions' locales files.

Stability & Testing

  • Continuous integration (build, tests and a packaged-app start) passes on Linux, Windows and macOS for every change in this release.
  • The app was run in each language; the main window, the preferences, the welcome window, the plugin manager, the Plugins menu and the DJ SYSTEM pages were checked, including a live switch from French to German.

The v0.2.4 GitHub Actions release workflow completed successfully for Linux, Windows and macOS Apple silicon.

Downloads

Each desktop archive includes the application, themes, controller mappings and plugins.

Windows — x86_64

openfader-0.2.4-windows-x86_64.zip

Extract the archive and run openfader.exe.

The application is not code-signed, so Windows SmartScreen may display a warning.

Linux — x86_64

openfader-0.2.4-linux-x86_64.tar.gz

Extract the archive and run ./openfader.

Requires the usual desktop libraries, including ALSA, a graphical desktop environment and fontconfig. Install zenity or kdialog for file selection.

macOS — Apple silicon (ARM64)

OpenFadeR-0.2.4-macos-arm64.zip

Extract the archive, move OpenFadeR.app to Applications and use right-click → Open if macOS blocks the first launch.

The application is ad-hoc signed but not Apple Developer ID signed or notarized.

Optional dependencies: FFmpeg for video functionality and Python 3 for Python plugins.

Changes & Development

OpenFadeR is an open-source DJ application under active development. Please continue reporting bugs, suggesting improvements and sharing controller mappings through GitHub Issues.