[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] po4a://debhelper/man/po4a/po/de.po (Teil1)



Moin Christoph,
Am Tue, Apr 09, 2024 at 08:37:16PM +0200 schrieb Christoph Brinkhaus:
> Am Tue, Apr 09, 2024 at 05:04:32PM +0000 schrieb Helge Kreutzmann:
> > Am Tue, Apr 09, 2024 at 06:11:42PM +0200 schrieb Christoph Brinkhaus:
> > > Hallo Hermann-Josef,
> > > >  #. type: textblock
> > > >  #: debhelper.pod:91
> > > > @@ -591,23 +595,32 @@
> > > >  msgid "Substitution limitations: filtering"
> > > >  msgstr "Ersetzungsbeschränkungen"
> > > > 
> > > > s/Ersetzungsbeschränkungen/Ersetzungsbeschränkungen: Filterung/
> > > Da habe ich nicht genug kopiert beziehungsweise habe zu viel
> > > weggeschnitten. Darüber ist ein fuzzy. Jetzt sehe ich erst, dass es zwei
> > > Blöcke gibt. Hier sind die zwei mit Zeilennummern:
> > > 
> > >   573 #. type: =head3
> > >   574 #: debhelper.pod:226
> > >   575 msgid "Substitution limits"
> > >   576 msgstr "Ersetzungsbeschränkungen"
> > > 
> > > und
> > > 
> > >   592 #. type: =head3
> > >   593 #: debhelper.pod:233
> > >   594 #, fuzzy
> > >   595 #| msgid "Substitution limits"
> > >   596 msgid "Substitution limitations: filtering"
> > >   597 msgstr "Ersetzungsbeschränkungen"
> > > 
> > > Der Block oben zwischen den Klammeraffen ist schon im Original so.
> > > Das "fuzzy" scheint nicht übernommen worden zu sein. Die Übersetzung ist
> > > aber schon, als ob "fuzzy" übernommen worden wäre. Das ist an mehrern
> > > Stellen so. Da ist die Frage, wie ich damit umgehen soll. Es ist ja
> > > möglich, dass der Autor den Änderungsvorschlag, der mit "fuzzy"
> > > gekennzeichnet ist, einfach nicht akzeptiert hat.
> > 
> > Das verstehe ich leider nicht.
> > 
> > Wenn eine Zeile mit 
> > #, fuzzy
> > beginnt, ist sie zu aktualisieren. Der als Übersetzung eingetragenen
> > Text wird von po4a „geraten“, kann also nahe dran oder grandios
> > daneben sein. 
> > 
> > Wenn Du die Übersetzung korrigiert hast, dann muss das 
> > #, fuzzy
> > raus.
> 
> Hallo Helge,
> das verstehe ich nun nicht. Hier ist nun der Abschnitt aus der
> vorherigen po Datei mit Zeilennummern. Dazu habe ich in den
> Zeilen ohne Zeilennummer mit "Kommentar" etwas eingefügt.
> 
>   568 #. type: =head3
>   569 #: debhelper.pod:226
>   570 msgid "Substitution limits"
>   571 msgstr "Ersetzungsbeschränkungen"
> Kommentar: Alles in Ordnung, keine Aktion notwendig.

Ja.

>   573 #. type: textblock
>   574 #: debhelper.pod:228
>   575 msgid ""
>   576 "To avoid infinite loops and resource exhaustion, debhelper will stop with an "
>   577 "error if the text contains many substitution variables (50) or they expand "
>   578 "beyond a certain size (4096 characters or 3x length of the original input - "
>   579 "whichever is bigger)."
>   580 msgstr ""
>   581 "Um Endlosschleifen und Ressourcenverschwendung zu vermeiden, bricht "
>   582 "Debhelper mit einer Fehlermeldung ab, falls der Text viele "
>   583 "Ersetzungsvariablen (50) enthält oder sie über eine bestimmte Größe "
>   584 "expandieren (4096 Zeichen oder die dreifache Länge des Originaleingabe - je "
>   585 "nachdem, was größer ist)."
> Kommentar: Alles in Ordnung, so ist das Original.
>   586 
>   587 #. type: =head3
>   588 #: debhelper.pod:233
>   589 #, fuzzy
>   590 #| msgid "Substitution limits"
>   591 msgid "Substitution limitations: filtering"
>   592 msgstr "Ersetzungsbeschränkungen"
> Kommentar: Die "msgid" ist etwas anders verglichen mit Zeile 570. 
> Die Übersetzung "msgstr" ist aber identisch zu Zeile 571 und passt eher
> zu der Zeile 589 mit dem "fuzzy".

Die Zeilen 570/571 sind älter, d.h. existierten schon, als die Zeile
591 hinzukam. Zu diesem Zeitpunkt hat po4a „geraten“ und glaubt, dass
die Zeile 591 so ähnlich ist wie die Zeile 570. Daher schreibt po4a
die Zeile 570 in die Zeile 590 (das erkennst Du am Anfang: "#|"). Und
dementsprechend schlägt er als Übersetzung in Zeile 492 den Inhalt aus
Zeile 571 vor.

Fuzzy heißt unscharf. D.h. die Übersetzung ist (hoffentlich) ungefähr
so ähnlich, wenn das Original ungefähr so ähnlich ist.

> Was ist in so einem Fall zu tun?

1. Du übersetzt 591, manchmal musst Du Zeile 592 komplett löschen,
   manchmal ist die Übersetzung schon recht gut. Gerade bei längeren
   Absätzen, die sich nur in Details unterscheiden, reicht es oft,
   den Unterschied einfach in Zeile 592 zu integrieren und schon hast
   Du die Übersetzung.

2. Dann löscht Du die Zeile 589 und 590. Aber Achtung: Wenn in der
   Zeile 589 noch mehr steht (z.B. 
   #, fuzzy, nowrap
   Dann nur das „,fuzzy“ löschen. 

   Gute Editoren können das automatisch, wenn Du einen PO-Editor oder
   PO-Modus einsetzt, ist das wahrscheinlich nur eine
   Tastenkombination entfernt.
   

> Sollte ich hier die Übersetzung korrigieren?

Ja, die Übersetzung muss *immer* zum Original passen. (Manchmal, wenn
das Original unglücklich auf zwei Abschnitte verteilt ist, kann das
sich in der Übersetzung verschieben, aber dann müssen halt die zwei
Absätze zum Original als Summe passen).

> Ist Zeile 590 nur ein Kommentar, den ich ignorieren kann?

Ja, Du kannst ihn ignorieren. Aber er liefert Dir die Erklärung, warum
anfänglich Zeile 592 ist, wie sie ist. Bei langen Absätzen (s.o.) kann
das Dir Arbeit sparen. 

> Im Falle von 2x ja wäre der msgstr wie schon von Hermann-Josef
> angemerkt "Ersetzungsbeschränkungen: Filterung" statt nur
> "Ersetzungsbeschränkungen" .
> 
> Wenn ja, soll ich dann die Zeilen 589 und 590 löschen?

Ja, s.o.

> Oder nur Zeile 589 mit dem "fuzzy" Eintrag?

Könntest Du auch, dann löschen das später Skripte weg.

> Wahrscheinlich habe ich mich nur von Zeile 590 irritieren lassen.

Hier noch mal ein Beispiel von einem größen Absatz:
#, fuzzy
#| msgid ""
#| "The package()  function is used to install files into the directory that "
#| "will become the root directory of the built package and is run after all "
#| "the optional functions listed below\\&. The packaging stage is run using "
#| "fakeroot to ensure correct file permissions in the resulting package\\&. "
#| "All other functions will be run as the user calling makepkg\\&."
msgid ""
"The package()  function is used to install files into the directory that "
"will become the root directory of the built package and is run after all the "
"optional functions listed below\\&. The packaging stage is run using "
"fakeroot to ensure correct file permissions in the resulting package\\&. All "
"other functions will be run as the user calling makepkg\\&. This function is "
"run inside $srcdir\\&."
msgstr ""
"Die package()-Funktion wird zum Installieren von Dateien in das Verzeichnis "
"verwendet, das zum Wurzelverzeichnis des gebauten Pakets wird\\&. Sie wird "
"nach allen nachfolgend beschriebenen optionalen Funktionen ausgeführt\\&. "
"Die Paketierungsstufe wird in einer Fakeroot-Umgebung ausgeführt, um die "
"korrekten Zugriffsrechte des sich ergebenden Pakets sicherzustellen\\&. Alle "
"anderen Funktionen laufen unter der Kennung und mit den gleichen Rechten wie "
"der Benutzer, der Makepkg ausführt.\\&."

Wenn Du den Abschnitt mit „#|“ und die eigentliche msgid vergleichst, 
dann siehst Du, dass nur ein neuer Satz hinzugekommen ist (am Ende). 
Und müsstest der übersetzung auch nur diesen einen Satz hinzufügen. 

Vielleicht kann Dein PO-Editor diesen Vergleich gut durchführen,
meiner leider nicht, daher habe ich mir ein kleines Skript dafür
gebastelt, dann das passiert häufiger und manchmal sind die
Unterschiede nur wenige Wörter in einem größeren Absatz.

Klärt das das Verhalten?

Viele Grüße

          Helge


-- 
      Dr. Helge Kreutzmann                     debian@helgefjell.de
           Dipl.-Phys.                   http://www.helgefjell.de/debian.php
        64bit GNU powered                     gpg signed mail preferred
           Help keep free software "libre": http://www.ffii.de/

Attachment: signature.asc
Description: PGP signature


Reply to: