2006/08/08

Linux applications - languages

If a Linux application starts and the interface is translated into some language that you don't want to use (or even worse - it is partly translated, as it was in my case, so names in the menus were a mix of English and Polish words), you can go to:

/usr/share/locale/[language_folder]

and delete [application_name].mo file.

Rather a dirty hack, but it works.

You will need root privileges, of course.

2 comments:

  1. A dirty hack, indeed. The better way to do it is to create a shell script with two lines:

    LANG=en_US
    [here call your application]

    This will cause the application to ignore the global system setting (you probably have pl_PL) and to use the english interface texts and settings.

    Please note that you can use the english texts in application, but choose to have polish date format or currency format.

    Example
    LANG=en_US
    LC_MONETARY="pl_PL"
    LC_TIME="pl_PL"

    Remember though, that:
    - it does not work perfectly for all apps (it's up to the programmer, in fact, to use locale, or locale file may not be created for particular program)
    - learn about locale command to see more on the topic (list of available languages etc)

    ReplyDelete
  2. To be honest, I have no idea what my system language settings are - locale command returns:

    LANG=pl_PL.UTF-8
    LANGUAGE=en_US:en


    But you are right - setting LANG to en_US before launching an app solves my problem, too.

    ReplyDelete