View Issue Details

IDProjectCategoryView StatusLast Update
0008654ardourbugspublic2022-10-09 06:29
Reportern3klid Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformUbuntuOSLinuxOS Version(any)
Product VersionMixbus 6.x 
Summary0008654: Use translation Tickle box does not work
DescriptionEven I unchecked Use translation Tickle box, Ardour always starts with translated interface.

I need run Ardour with English interface regardless Ubuntu system setting.

This bug appears in Xfce, Gnome, KDE.
Steps To ReproduceSet main Ubuntu language English , units and collating in Czech - >Ardour starts with Czech interface

Set main Ubuntu language English, units and collating English -> Ardour starts with English interface

In both cases "Use translates" check box in Ardour settings is UNCHECKED (I do not want to use translations).
Additional Informationpedro@studio:~$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US:cs
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_US.UTF-8
LC_TIME=cs_CZ.UTF-8
LC_COLLATE=cs_CZ.UTF-8
LC_MONETARY=cs_CZ.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=cs_CZ.UTF-8
LC_NAME=cs_CZ.UTF-8
LC_ADDRESS=cs_CZ.UTF-8
LC_TELEPHONE=cs_CZ.UTF-8
LC_MEASUREMENT=cs_CZ.UTF-8
LC_IDENTIFICATION=cs_CZ.UTF-8

Ardour starts in English but during load switch to Czech:
pedro@studio:~$ ardour
WARNING: Could not check your glib-2.0 for mutex locking atomic operations.

Ardour6.3.0~ds0 (built using 6.3.0~ds0-1 and GCC version 10.2.0)
Ardour: [INFO]: Your system is configured to limit Ardour to 1048576 open files
Ardour: [INFO]: Loading system configuration file /etc/ardour6/system_config
Ardour: [INFO]: Loading user configuration file /home/pedro/.config/ardour6/config
Ardour: [INFO]: CPU vendor: GenuineIntel
Ardour: [INFO]: AVX-capable processor
Ardour: [INFO]: CPU brand: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
Ardour: [INFO]: Using AVX optimized routines
Ardour: [INFO]: Loading plugin meta data file /usr/share/ardour6/plugin_metadata/plugin_tags
Ardour: [INFO]: Loading plugin statistics file /home/pedro/.config/ardour6/plugin_metadata/plugin_stats
Ardour: [INFO]: Loading default ui configuration file /etc/ardour6/default_ui_config
Ardour: [INFO]: Loading user ui configuration file /home/pedro/.config/ardour6/ui_config
Ardour: [INFO]: Loading 449 MIDI patches from /usr/share/ardour6/patchfiles
Ardour: [INFO]: Nahrává se soubor s barvou '/usr/share/ardour6/themes/dark-ardour.colors
Ardour: [INFO]: Nahrává se soubor s nastavením rozhraní /etc/ardour6/clearlooks.rc
Ardour: [INFO]: Loading bindings from /etc/ardour6/ardour.keys
Nahrává se soubor s nastavením rozhraní /etc/ardour6/clearlooks.rc


Tagstranslations

Activities

n3klid

2021-04-05 19:59

reporter  

2021-04-05_21-28.png (188,347 bytes)   
2021-04-05_21-28.png (188,347 bytes)   
2021-04-05_21-37.png (16,875 bytes)   
2021-04-05_21-37.png (16,875 bytes)   

paul

2021-04-22 00:35

administrator   ~0025743

You put the version down as "Mixbus", but the screenshots show ardour.

Where did you get this version of Ardour from?

paul

2021-04-22 00:40

administrator   ~0025746

Also, does this still happen with Ardour 6.6 ?

eudoxos

2022-10-04 06:14

reporter   ~0026596

I am confirming this with Ardour 6.9.0~ds0-1build1 (Ubuntu package) - the UI follows locale settings regardsless of this option being unchecked (the workaround is to run `LC_ALL=C ardour`),

eudoxos

2022-10-04 06:33

reporter   ~0026597

Without having time for a proper PR ATM, a cursory analysis of main.cc (lines 256 and below) and my hypothesis:

A. (main.cc:258) force-sets LC_MESSAGES to the first nonempty of LC_ALL, LC_MESSAGES, LANG) (as per man 3 gettext).

B. (main.cc:278) bindtextdomain will bind text domain unconditionally

Calls to gettext(...) consume LC_MESSAGES env var (as per man 3 gettext), which was either set by (A) but it could be also part of the process environment already - that is the case for @n3klid (see his output from locale above).
image.png (122,850 bytes)   
image.png (122,850 bytes)   

paul

2022-10-04 13:36

administrator   ~0026598

1. the option in preferences will control whether or not ARDOUR::translations_are_enabled() returns true. Does the file ~/.config/ardour6/.translate exist on your system (note the leading dot before the word translate)

2. bindtextdomain() has no consequences if the locale is not set inside the application

3. We cannot provide support for distribution builds, where we do not/cannot control the build process. If you test this again, please use a nightly build from nightly.ardour.org

eudoxos

2022-10-09 06:29

reporter   ~0026602

I can reproduce this with local build from git & created a PR at github (https://github.com/Ardour/ardour/pull/733).

Issue History

Date Modified Username Field Change
2021-04-05 19:59 n3klid New Issue
2021-04-05 19:59 n3klid Tag Attached: translations
2021-04-05 19:59 n3klid File Added: 2021-04-05_21-28.png
2021-04-05 19:59 n3klid File Added: 2021-04-05_21-37.png
2021-04-22 00:35 paul Note Added: 0025743
2021-04-22 00:40 paul Note Added: 0025746
2022-10-04 06:14 eudoxos Note Added: 0026596
2022-10-04 06:33 eudoxos Note Added: 0026597
2022-10-04 06:33 eudoxos File Added: image.png
2022-10-04 13:36 paul Note Added: 0026598
2022-10-09 06:29 eudoxos Note Added: 0026602