From: Hans U. N. <gp...@n-...> - 2007-05-26 22:30:13
|
I'd like to express some doubts regarding this commit. > Modified Files: > mnote-pentax-entry.c > Log Message: > Unified handling of unknown tag values, some messages were not translated > > > Index: mnote-pentax-entry.c > =================================================================== > RCS file: /cvsroot/libexif/libexif/libexif/pentax/mnote-pentax-entry.c,v > retrieving revision 1.11 > retrieving revision 1.12 > diff -u -p -d -r1.11 -r1.12 > --- mnote-pentax-entry.c 13 May 2007 19:21:47 -0000 1.11 > +++ mnote-pentax-entry.c 24 May 2007 06:47:14 -0000 1.12 > @@ -341,7 +341,7 @@ mnote_pentax_entry_get_value (MnotePenta > /* search the tag */ > for (i = 0; (items[i].tag && items[i].tag != entry->tag); i++); > if (!items[i].tag) { > - strncpy (val, "Internal error", maxlen); > + strncpy (val, _("Internal error"), maxlen); > break; > } OK... so we have one of the worst error messages ever (because it does not give ANY hint as to what may have been the cause), and one which definitely needs developer attention to fix if a user sees it. Does it make the user experience better if that kind of message is translated? The language for discussions with the developers is mainly English, and we don't have translators for bug fixing discussions :) > @@ -350,7 +350,7 @@ mnote_pentax_entry_get_value (MnotePenta > (items[i].elem[j].index < vs); j++); > if (items[i].elem[j].index != vs) { > snprintf (val, maxlen, > - "Internal error (unknown value %i)", vs); > + _("Internal error (unknown value %i)"), vs); > break; > } > strncpy (val, items[i].elem[j].string, maxlen); OK, that is a little better. At least some hint. |
From: Jan P. <pa...@pi...> - 2007-06-25 08:10:22
|
Hans, I am sorry for replaying that late. Actually what I did, was just a unification. I did not attempt to improve the messages as such, although I should have. All the texts I touched do get displayed to the user, they are not (hidden) log or debug messages. Some of them were terminated with dot (like a complete sentence) and some were not. Some were translated and some were not. After my changes, all should be translated and not terminated, to be consistent with all the other texts returned by mnote_*_entry_get_value(). Yes, I think it gets better user experience. The users may also help us in registering new not-yet-known values of new cameras, if they clearly understand the situation. Not every user of SW using libexif speaks English. For example, many users of the Czech software I participate on don't speak English, but we do have good bug-reporting system from our users towards us. Actually this product and feedback from it is the reason why I joined the libexif team and why I do so many changes... -- Jan >> --- mnote-pentax-entry.c 13 May 2007 19:21:47 -0000 1.11 >> +++ mnote-pentax-entry.c 24 May 2007 06:47:14 -0000 1.12 >> @@ -341,7 +341,7 @@ mnote_pentax_entry_get_value (MnotePenta >> /* search the tag */ >> for (i = 0; (items[i].tag && items[i].tag != entry->tag); i++); if >> (!items[i].tag) { >> - strncpy (val, "Internal error", maxlen); >> + strncpy (val, _("Internal error"), maxlen); >> break; >> } > > OK... so we have one of the worst error messages ever (because it does > not give ANY hint as to what may have been the cause), and one which > definitely needs developer attention to fix if a user sees it. > > Does it make the user experience better if that kind of message is > translated? The language for discussions with the developers is mainly > English, and we don't have translators for bug fixing discussions :) >> @@ -350,7 +350,7 @@ mnote_pentax_entry_get_value (MnotePenta >> (items[i].elem[j].index < vs); j++); >> if (items[i].elem[j].index != vs) { >> snprintf (val, maxlen, >> - "Internal error (unknown value %i)", vs); >> + _("Internal error (unknown value %i)"), vs); >> break; >> } >> strncpy (val, items[i].elem[j].string, maxlen); > > OK, that is a little better. At least some hint. |
From: Hans U. N. <gp...@n-...> - 2007-06-25 14:35:17
|
Jan Patera wrote: > I am sorry for replying that late. Actually what I did, was just > a unification. I did not attempt to improve the messages as such, > although I should have. Hmm. What constitutes improvement? Two kinds of improvement I could think of: a) Use a verbal phrase which is more or less unique and describing what went wrong. Possibly helpful to user for circumventing the problem, requires translating many technically complicated sentences which might not make sense to non-developer translators. b) _("Internal error %s"), "LE0051". That is also unique, does not require much phantasy while writing, only needs translating one specific string, and allows anyone with the source code to find out where the thing broke. The only question is how to allocate unique strings like "LE0051". Any more ideas? > All the texts I touched do get displayed to the user, they are > not (hidden) log or debug messages. Some of them were terminated > with dot (like a complete sentence) and some were not. Some > were translated and some were not. After my changes, all should be > translated and not terminated, to be consistent with all the other texts > returned by mnote_*_entry_get_value(). OK, consistency is good. > Yes, I think it gets better user experience. The users may also help us > in registering new not-yet-known values of new cameras, if they clearly > understand the situation. Not every user of SW using libexif speaks > English. For example, many users of the Czech software I participate > on don't speak English, but we do have good bug-reporting system > from our users towards us. Actually this product and feedback from it > is the reason why I joined the libexif team and why I do so many changes... Oh. I was not aware of those non-English channels for user feedback... probably due to my not speaking any Czech at all :) Anyway, I am grateful for anything that works, so +1 on translating the stuff. Uli |