Latest Posts

Topic: How to play with translation?

GunChleoc
Avatar
Joined: 2013-10-07, 15:56
Posts: 3324
Ranking
One Elder of Players
Location: RenderedRect
Posted at: 2018-09-06, 17:45

Also, your system language is set to "C", so I'm not sure it that will screw up the autodetection. Try selecting "Deutsch" in the options instead.


Busy indexing nil values

Top Quote
dreieck
Avatar
Topic Opener
Joined: 2018-08-25, 11:48
Posts: 72
OS: Artix GNU/Linux
Version: -git
Ranking
Likes to be here
Location: Germany
Posted at: 2018-09-06, 18:35

GunChleoc wrote:

Also, your system language is set to "C", so I'm not sure it that will screw up the autodetection. Try selecting "Deutsch" in the options instead.

As I elaborated [further up], I tried many possible combinations; also selecting "Deutsch" in the options:

It also displays this text if I select Language: Deutsch manually from the menu.

But still everything stays in English.

In fact this was the very first thing I did when I tried to switch language.


(empty signature.)

Top Quote
GunChleoc
Avatar
Joined: 2013-10-07, 15:56
Posts: 3324
Ranking
One Elder of Players
Location: RenderedRect
Posted at: 2018-09-08, 18:53

I really don't know what the problem is. Kaputtnik, since it's working on your system, what is your locale output? If there is a difference, that might point to the problem.


Busy indexing nil values

Top Quote
kaputtnik
Avatar
Joined: 2013-02-18, 20:48
Posts: 2433
OS: Archlinux
Version: current master
Ranking
One Elder of Players
Location: Germany
Posted at: 2018-09-08, 21:41

The output is:

$> locale
LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF
LC_ALL=

All i can think of is that dreieck messed up his installation(s) with different Versions which broke the localizations. Thats why i mentioned to remove widelands and check for remaining files. Otherwise i have no idea.


Fight simulator for Widelands:
https://wide-fighter.netlify.app/

Top Quote
dreieck
Avatar
Topic Opener
Joined: 2018-08-25, 11:48
Posts: 72
OS: Artix GNU/Linux
Version: -git
Ranking
Likes to be here
Location: Germany
Posted at: 2018-09-09, 11:31

OK, I think I pinned it down:

kaputtnik wrote:

The output is:

$> locale
LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF
LC_ALL=

I now tried starting widelands with setting the environment variables as yours, and the translation is there.

Then I tried to find which variable is it, and it is LC_IDENTIFICATION="de_DE.UTF-8" that needs to be set. (And LC_IDENTIFICATION="de_DE" does not suffice.) Setting LC_IDENTIFICATION="UTF-8" also suffices, although this is not any valid locale. Something seems just to look for the UTF-8 (case does not matter).

I consider it as a bug that this is needed, because:

  • Language seems to depend on settings of environent variable and options in the menu.
  • When I set LANG=de_DE, as the terminal outout if widelands says I should, it still does not work. Another environment variable needs to be set (and LANG is irrelevant if the options menu is used).

Can anyone fix this so that either widelands prints out a prominent warning, if that environent variable is not set, or much better, do not depend on this variable since things are to be set in the menu anyway?

Some stuff about LC_IDENTIFICATION was also discussed [here], there is the stanza

LC_IDENTIFICATION is a [GNU extension]. I could not find a specification of it though. Since it's just metadata, I'm assuming it's not used in any userland programs.

[This manpage] gives some definition, too.

It seems to me that no-one should rely on LC_IDENTIFICATION.

All i can think of is that dreieck messed up his installation(s) with different Versions which broke the localizations. Thats why i mentioned to remove widelands and check for remaining files. Otherwise i have no idea.

Since I install via package management, nothing is left over after removal.

Thanks, kaputtnik, for helping me finding the point!

Edited: 2018-09-09, 11:40

(empty signature.)

Top Quote
GunChleoc
Avatar
Joined: 2013-10-07, 15:56
Posts: 3324
Ranking
One Elder of Players
Location: RenderedRect
Posted at: 2018-10-17, 10:24

I have created a bug report: https://bugs.launchpad.net/widelands/+bug/1798297


Busy indexing nil values

Top Quote