" & " in gui von kscd wird nicht angezeigt

Thomas Reitelbach tr at erdfunkstelle.de
Sun Feb 10 19:52:49 CET 2008


On Mittwoch, 30. Januar 2008, Martin Ereth wrote:
> Martin Ereth schrieb:
> > Burkhard Lück schrieb:
> >> Am Donnerstag 24 Januar 2008 23:17:42 schrieb Burkhard Lück:
> >>> ich habe hier bei KsCD Probleme mit der Anzeige von "foo & bar" in der
> >>> GUI.
> >>>
> >>> z. B. diese Nachricht aus dem Einstellungsdialog in kscd.po:
> >>>
> >>> msgid "Settings & Behavior"
> >>> msgstr "Einstellungen & Verhalten"
> >>>
> >>> In gutsy und auch svn stable kde3 wird sowohl in Englisch wie auch in
> >>> Deutsch das " & " korrekt angezeigt.
> >>>
> >>> In beiden KDE4-Systemen (svn stable 4.0 und svn trunk) sehe ich in
> >>> beiden Sprachen nur "foo bar", das "&" fehlt. Auch mit doppeltem "&"
> >>> kein kaufmännisches Und.
> >>>
> >>> Kann das mal bitte jemand überprüfen?
> >
> > Ich habe KsCD (kde4-stable) den gleichen Fehler entlocken können.
> > Ich lad grad den Code von kscd. Ich meld mich, wenn ich was finden hab
> > können.
>
> Also es ist so: (kdemultimedia/kscd/kscd.cpp)
> // Es wird ein KConfigDialog erzeugt,
> configDialog = new KConfigDialog(this, "settings", Prefs::self());
> //...
> //...
> // Dann wird ein Element dazugefügt. (Unser Problemchen)
> configDialog->addPage(confWidget, i18n("CD Player"), "kscd", i18n("Settings
> & Behavior"));
>
> Das zweite Argument ist das, was links in der Auswahlliste steht. da habe
> ich spassenshalber ein & reingeschrieben. Kein Problem bei der Anzeige. das
> 4. ist unser Problem. Ich weiß jetzt nur nicht, wie die Interna der Klasse
> KConfigDialog aussehen bzw. wo sie überhaupt definiert ist.
> Kennt sich hier jemand besser aus?
>
> Am i18n()-Aufruf wird es kaum liegen.
>
> Ein & bringt nur ein #038; zu Tage, &&&& bringt kein einziges zu Tage,
> \& ist nicht erlaubt, /& bringt nur den Slash.
>
> ein ahnungsloser
> Martin

Die Ursache für dieses seltsame Verhalten liegt darin, dass jedes Vorkommen 
von & bewusst aus dem Titel der Seite entfernt wird:

kdelibs/kdeui/paged/kpageview.cpp:245:
=============================
    titleWidget->setText( header.remove( '&' ) );

Der Grund dafür ist, dass diese Titeltexte oft aus Strings generiert wurden, 
die einen Shortcut enthalten. Im Menü war der Shortcut natürlich sinnvoll, 
aber in der Titelzeile sah er völlig deplaziert aus.
Die Lösung des Problems ist also, im Originalstring auf & zu verzichten. 
Ebenso natürlich in der Übersetzung.

Grüße
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/kde-i18n-de/attachments/20080210/baccee3e/attachment.pgp 


More information about the kde-i18n-de mailing list