Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 158438 - Please avoid sentence splitting in system-config-bind
Summary: Please avoid sentence splitting in system-config-bind
Alias: None
Product: Fedora
Classification: Fedora
Component: system-config-bind
Version: 4
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Jason Vas Dias
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2005-05-22 12:13 UTC by Christian Rose
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version: 4.0.0-20
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2006-03-14 10:05:14 UTC

Attachments (Terms of Use)

Description Christian Rose 2005-05-22 12:13:05 UTC
system-config-bind as of lately includes an insane amount of chopped-up
translateable messages; that is, parts of translateable sentences that appear to
have been marked for translation seperately with seperate gettext calls.
Below is a fictive example of the problem to illustrate it:

  _("Doing") + _(" like this ") + _(" is ") + _("so") + _(" enormously ") +
_("fundamentally") + _(" broken") + _(" from ") + _("any translation point of

Sentences can *only* be properly be translated in full! There's no way proper
grammar, genders, or word order can be translated into another language without
complete access to the full sentence, like so:

  _("Doing like this is the only way a complete sentence can be properly

You can read more about the endless amount of problems that sentence splitting
causes at

Below is a non-complete list of weird sentence fragments that make no sense on
their own:

#: ../ ../
msgid "Zone "

#: ../ ../ ../ ../ ../
msgid "file"

#: ../
msgid "load error:"

#: ../
msgid "contains a reference to an undefined ACL"

#: ../
msgid "not allowed"

#: ../
msgid "too long - it is over the 63 character limit"

#: ../
msgid " weeks "

#: ../
msgid " week "

#: ../
msgid " days "

#: ../
msgid " day "

#: ../
msgid " hours "

#: ../
msgid " hour "

#: ../
msgid " minutes "

#: ../
msgid " minute "

#: ../
msgid " seconds "

#: ../
msgid " second "

#: ../
msgid "has zone"

#: ../
msgid "contains zone"

#: ../
msgid "for zone:"

#: ../
msgid "Check that Remote Server"

#: ../
msgid "Check that the directory"

#: ../
msgid "in its $ROOTDIR/var/named directory."

#: ../
msgid "was not found after dnssec-keygen completed."

#: ../
msgid "and Zone Origin strings."

#: ../
msgid "cannot be removed from this"

#: ../
msgid "cannot be added to this"

#: ../ ../
msgid "The"

#: ../
msgid "is out of zone"

#: ../
msgid "Doesn't Have"

#: ../
msgid "Has"

#: ../ ../ ../
msgid "already exists."

#: ../
msgid "already exists. Specify another Zone Origin."

#: ../
msgid "of class"

: ../
msgid "or should I append a '.'?"

#: ../
msgid " is out-of-zone "

#: ../
msgid " contains invalid hex digits : only [0-9] [A-Z] [a-z] allowed."

#: ../ ../
msgid "removed."

#: ../ ../
msgid "is out-of-zone"

#: ../ ../
msgid "for"

#: ../
msgid "is an Access Control List name."

#: ../
msgid "does not exist"

#: ../ ../
msgid "Save of Zone File "

#: ../
msgid "already exists. Specify another address."

#: ../ ../
msgid "and all its contents"

#: ../
msgid "Do you really want to delete"

#: ../
msgid "already exists in view"

Comment 1 Jason Vas Dias 2005-05-23 16:25:50 UTC
Do I need to modify s-c-b to join split sentences or can translation
be accomplished as is ?

Comment 2 Christian Rose 2005-05-23 22:44:46 UTC
Well, the answer depends...

Theoretically, a translator with access to the source code to be able
to reverse the sentence puzzle and nothing better to do, could in some
cases be able to retrofit translated sentence fragments as
translations of the existing messages with the existing message
design. This would still only hold for a very few languages though;
for many languages it would still be impossible to provide a correct
translation, especially if there are many conflicts (sentence
fragments used in different linguistic contexts).

Realistically, many translators wouldn't want to touch these messages
with a ten feet pole, since the time needed to reverse engineer these
sentence fragments could be better spent translating other pieces of
software instead. And the brave souls who try to translate this as-is
will probably in most cases produce translations that would make
Babelfish translations look like Shakespeare literature in comparison,
simply because they lack the time nor the patience to reverse engineer
the sentence puzzle, or, because it is impossible to provide a correct
translation for linguistic reasons with the current design.

Comment 3 Jason Vas Dias 2005-07-26 00:03:42 UTC
This is now fixed with system-config-bind-4.0.0-20 / redhat-config-bind-4.0.0-20.

I've done my best to avoid sentence splitting wherever possible without 
radical redesign.

Note that many strings that appear to be sentence fragments are actually 
proper nouns (eg. "Zone", "View"), dialog titles (eg. "Initializing to
defaults"), definitions (eg. "Processing of client requests." ) or are 
verbs / menu elements (eg. "Edit", "New", "Delete").

Let me know if you've any further issues with system-config-bind translation.

Thank You!

Comment 4 Göran Uddeborg 2006-03-14 10:05:14 UTC
Christian, I thinkt this is fine now.  I have around 10% still to do in my
update of system-config-bind, but it looks fine.  So I'll close this.

Note You need to log in before you can comment on or make changes to this bug.