Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Tue, 8 Sep 2015 11:18:42 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: Message localization [Was: Re: Adjustments to
 roadmap]

On Mon, Sep 07, 2015 at 08:51:19PM +0700, Рысь wrote:
> On Tue, 1 Sep 2015 22:28:56 -0400
> Rich Felker <dalias@...c.org> wrote:
> 
> > On Wed, Sep 02, 2015 at 09:26:57AM +0700, Рысь wrote:
> > > On Tue, 1 Sep 2015 00:47:30 -0400
> > > Rich Felker <dalias@...c.org> wrote:
> > > 
> > > > On Tue, Sep 01, 2015 at 11:26:55AM +0700, Рысь wrote:
> > > > > This is what I get when running musl 1.1.11 without patches
> > > > > (untouched):
> > > > > 
> > > > > % MUSL_LOCPATH=/tmp/l LC_ALL=ru_RU ./lib/libc.so ../date
> > > > > Tue Sep  1 11:22:31 2015
> > > > > 
> > > > > I attached strace output as well as compiled ru_RU data.
> > > > 
> > > > The mo file is broken; it looks like it was produced with the
> > > > buggy msgfmt from the sabotage repo that outputs the strings in
> > > > the order they were in the source, rather than sorting them. If
> > > > you write a perl/awk/whatever script to pre-sort them you should
> > > > be able to get by with this msgfmt; otherwise, you could use the
> > > > GNU version or try the other branch of gettext-tiny.
> > > 
> > > How to sort strings (or there is a script I don't know about)?
> > > Because I can't use gnu version, and using gettext-tiny which was
> > > not updated for 3 years. Or there is another version with this
> > > feature implemented?
> > 
> > It was in gettext-tiny but then reverted because making msgfmt work
> > exposed other limitations in it. You can check out the
> > second-to-newest version or the 'full' branch that still has a working
> > version.
> > 
> > Rich
> 
> Many Thanks!
> 
> Sorry for late feedback, now only had time to test it. It works!
> 
> % MUSL_LOCPATH=/tmp/l LC_ALL=ru_RU ./date
> Пн Сен  7 20:47:05 2015
> 
> Meow!!
> 
> I guess there is a root of lack of translation in my case: many
> programs use msgfmt and friends to make .mo from .po. So if I
> want to solve the problem, I must "update" gettext-tiny then rebuild
> all affected software. Am I right?

Yes, but the reason this code is not in 'master' of gettext-tiny yet
(actually it was committed there then reverted) is that gettext-tiny's
msgfmt is not really working; it's missing some features/behavior
needed to correctly handle real-world .po files from many apps. If you
really can't use the GNU version of msgfmt you might need to see if
there's some other version (maybe a BSD one?) you can use or else find
someone who can fix/finish gettext-tiny's msgfmt for you.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.