From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4131 invoked by alias); 25 Oct 2004 20:20:58 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 4108 invoked from network); 25 Oct 2004 20:20:56 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sourceware.org with SMTP; 25 Oct 2004 20:20:56 -0000 Received: from drow by nevyn.them.org with local (Exim 4.34 #1 (Debian)) id 1CMBKm-0005TE-RE; Mon, 25 Oct 2004 16:20:52 -0400 Date: Mon, 25 Oct 2004 20:20:00 -0000 From: Daniel Jacobowitz To: Eli Zaretskii Cc: ibr@ata.cs.hun.edu.tr, gdb-patches@sources.redhat.com Subject: Re: an i18n sample Message-ID: <20041025202052.GA15021@nevyn.them.org> Mail-Followup-To: Eli Zaretskii , ibr@ata.cs.hun.edu.tr, gdb-patches@sources.redhat.com References: <20041024104805.GA2369@ata.cs.hun.edu.tr> <01c4b9ff$Blat.v2.2.2$1ebcb860@zahav.net.il> <20041024201802.GA17380@nevyn.them.org> <01c4bace$Blat.v2.2.2$09c744a0@zahav.net.il> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <01c4bace$Blat.v2.2.2$09c744a0@zahav.net.il> User-Agent: Mutt/1.5.5.1+cvs20040105i X-SW-Source: 2004-10/txt/msg00415.txt.bz2 On Mon, Oct 25, 2004 at 10:04:53PM +0200, Eli Zaretskii wrote: > > Date: Sun, 24 Oct 2004 16:18:02 -0400 > > From: Daniel Jacobowitz > > Cc: Baurjan Ismagulov , > > gdb-patches@sources.redhat.com > > > > I agree about partial translations, of course. In this particular > > case, it looks like the file needs type_sprint or type_to_string. > > It is generally bad to produce strings in parts, because that prevents > the translator from seing the full sentence or at least a full phrase. > So I think type_sprint etc. will not solve the problem I was worried > about. > That's not what I meant. I wanted to see something like this: > > if (TYPE_LENGTH (type) <= 0) > { > if (TYPE_NAME (rtype)) > warning (_("Invalid type size for `%s' detected: %d."), > TYPE_NAME (rtype), TYPE_LENGTH (type)); > else > warning (_("Invalid type size for detected: %d."), > TYPE_LENGTH (type)); > } Sorry, my wording was not clear; I understood your suggestion. I still disagree with it. I think that a type whose name is "" or _("") should recieve the same output as a type whose TYPE_NAME is NULL. A format string is a different sort of problem than a partial sentence. It's a complete grammatical construct, but we have to take what steps we can to make sure that the parts that get substituted in make sense in any language. Can you give an example where the two above sentences should have different structure? I can't think of one. > > That said, the "when" is a partial sentence, and the \n%*s doesn't > > need to be translated. > > That's a very partial sentence, so it needs to be made a full sentence > along the same lines as above. I think this is just an extension of the same different point of view... the "when" has to be dynamically generated, because it expressing a computed property of the type. This is equivalent to the "instantiated from here" or "with T = " messages from G++ for templates. Although I see that the "instantiated from here" message is not marked from translation in G++. I thought it was. There are a lot of similar constructs which are, however. -- Daniel Jacobowitz