[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Monotone-devel] 0.26 status update
From: |
Nathaniel Smith |
Subject: |
Re: [Monotone-devel] 0.26 status update |
Date: |
Wed, 5 Apr 2006 02:08:53 -0700 |
User-agent: |
Mutt/1.5.11 |
On Tue, Apr 04, 2006 at 01:50:18PM +0200, Richard Levitte - VMS Whacker wrote:
> For those having a problem seeing what the characters are, the
> translation of "in" is a down arrow and the translation of "out" is an
> up arrow. I debugged this as far as I could, and what happens is that
> somewhere internally, those arrows get replaced with a question mark
> ("?"). Now, when several tickers are in action at once, there's a
> requirement that each ticker has a unique title. Unfortunately, with
> all those arrows becoming question marks, what happens is that you get
> "octets ?" and "octets ?", which is far from unique :-).
>
> The ticker code itself is not responsible for the question marks, they
> are already there in the strings received by the constructors, and I
> haven't been able to figure much further.
Ah, found it -- the arrows are indeed cute, and are fine in unicode.
But the people seeing problems are using ISO-8859-1 (the default for
fr_FR):
$ grep fr_FR /etc/locale.gen
fr_FR ISO-8859-1
fr_FR.UTF-8 UTF-8
Thus:
$ LANG=fr_FR mtn pull
monotone: récupération anonyme; utilisez -kNOMCLEF si
vous avez besoin d'une authentification
monotone: connexion à venge.net
monotone: recherche d'éléments à
synchroniser :
monotone: certificats | clefs | révisions
monotone: 16907 | 22 | 5595
monotone: néfaste: std::logic_error: ui.cc:38: invariant
'I(ui.tickers.find(tickname) == ui.tickers.end())' violated
$ LANG=fr_FR.UTF-8 mtn pull
monotone: récupération anonyme; utilisez -kNOMCLEF si
vous avez besoin d'une authentification
monotone: connexion à venge.net
monotone: recherche d'éléments à
synchroniser :
monotone: certificats | clefs | révisions
monotone: 16907 | 22 | 5595
monotone: certs ⇩ | octets ⇧ | octets
⇩ | révs ⇩
monotone: 0/0 | 2,7 Ki | 2,5 Ki | 0/0
monotone: échange réussi avec venge.net
The problem is that the arrows have no representation in ISO-8859-1,
and so when gettext transcodes the UTF-8 strings from the message
catalog to match the current locale, it collapses some strings to be
the same.
So, this isn't really even a bug in monotone -- the very best it could
do would be to display two "bytes ?" tickers, which is not very
useful.
The only solution I see is to either remove the use of the arrows
entirely, or else make sure that those translated strings are only
used when the locale actually is UTF-8, and have some other
translation otherwise.
-- Nathaniel
--
Eternity is very long, especially towards the end.
-- Woody Allen
- [Monotone-devel] 0.26 status update, Nathaniel Smith, 2006/04/04
- Re: [Monotone-devel] 0.26 status update, Richard Levitte - VMS Whacker, 2006/04/04
- Re: [Monotone-devel] 0.26 status update, Richard Levitte - VMS Whacker, 2006/04/04
- [Monotone-devel] Re: 0.26 status update, Lapo Luchini, 2006/04/05
- Re: [Monotone-devel] Re: 0.26 status update, Richard Levitte - VMS Whacker, 2006/04/05
- [Monotone-devel] legacy I18N and tickers (was Re: 0.26 status update), Graydon Hoare, 2006/04/06
- Re: [Monotone-devel] legacy I18N and tickers (was Re: 0.26 status update), Benoît Dejean, 2006/04/07
- Re: [Monotone-devel] legacy I18N and tickers (was Re: 0.26 status update), Nathaniel Smith, 2006/04/08
- Re: [Monotone-devel] legacy I18N and tickers (was Re: 0.26 status update), Nathaniel Smith, 2006/04/08
Re: [Monotone-devel] 0.26 status update,
Nathaniel Smith <=
Re: [Monotone-devel] 0.26 status update, Nathaniel Smith, 2006/04/04
Re: [Monotone-devel] 0.26 status update, Nathaniel Smith, 2006/04/04