Hallo Helge,

Am Wed, Jul 03, 2024 at 06:50:15PM +0000 schrieb Helge Kreutzmann:
> Hallo Christoph,
> Am Wed, Jul 03, 2024 at 06:07:28PM +0200 schrieb Christoph Brinkhaus:
> > Am Tue, Jul 02, 2024 at 09:37:40PM +0200 schrieb Christoph Brinkhaus:
> 
> > # Wie 3.13.1, ab Zeile 458, nur B<-P> entfernt
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > msgid ""
> > "Run Python in isolated mode. This also implies B<-E> and B<-s>. In 
> > isolated "
> > "mode sys.path contains neither the script's directory nor the user's site-"
> > "packages directory. All PYTHON* environment variables are ignored, too.  "
> > "Further restrictions may be imposed to prevent the user from injecting "
> > "malicious code."
> > msgstr ""
> > "Startet Python im isolierten Modus. Das impliziert auch B<-E> und B<-s>. "
> > "Im isolierten Modus beinhaltet sys.path weder das Verzeichnis des Skripts "
> > "noch das lokale Paketverzeichnis. Alle PYTHON*-Umgebungsvariablen "
> > "werden ebenfalls ignoriert. Weitere Einschränkungen können auferlegt 
> > werden, "
> > "um den Benutzer daran zu hindern, böswilligen Code einzuschleusen."
> 
> Müsste es nicht (an beiden Stellen)
> s/lokale Paketverzeichnis/lokale Paketverzeichnis des Benutzers/
> heißen?
Es gibt ein Paketverzeichnis vom System. Der Ort ist
installationsabhängig. Zusätzlich gibt es noch ein benutzerspezifisches
Verzeichnis. Wie können das gerne "lokale Paketverzeichnis des
Benutzers" nennen. Dann müsste ich alle anderen Vorkommen der "lokalen
Verzeichnisse" ebenfalls erweitern, zumindest müsste ich überprüfen, wie
das in die Zeichenketten passt.

> > # Ein Mix aus drei Stellen von 3.13.3 zu Warnungen
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > msgid ""
> > "Warning control.  Python sometimes prints warning message to 
> > I<sys.stderr>.  "
> > "A typical warning message has the following form: I<file>B<:>I<line>B<: "
> > ">I<category>B<: >I<message.> By default, each warning is printed once for "
> > "each source line where it occurs.  This option controls how often warnings 
> > "
> > "are printed.  Multiple B<-W> options may be given; when a warning matches "
> > "more than one option, the action for the last matching option is 
> > performed.  "
> > "Invalid B<-W> options are ignored (a warning message is printed about "
> > "invalid options when the first warning is issued).  Warnings can also be "
> > "controlled from within a Python program using the I<warnings> module."
> > msgstr ""
> > "Steuerung von Warnungen. Python gibt manchmal Meldungen auf I<sys.stderr> 
> > aus. "
> > "Eine typische Warnmeldung hat das folgende Format: I<file>B<:>I<line>B<: "
> > ">I<category>B<: >I<message.> Standardmäßig wird jede Warnung einmal für "
> > "jede Zeile des Quellcodes ausgegeben, die sie ausgelöst. Diese Option 
> > steuert, "
> > "wie oft Warnungen ausgegeben werden. "
> > "Es können mehrere Optionen B<-W> angegeben werden; wenn eine Warnung auf 
> > mehr "
> > "als eine Option passt, dann wird die Aktion zur letzten passenden Option "
> > "ausgeführt. Ungültige Optionen B<-W> werden ignoriert (jedoch wird bei "
> > "der ersten ausgegebenen Warnmeldung eine Meldung zu ungültigen Optionen "
> > "ausgegeben). Warnungen können auch aus einem Python-Programm heraus mit 
> > dem "
> > "Modul I<warnings> gesteuert werden."
> 
> Ich würde:
> s/I<file>B<:>I<line>B<: >I<category>B<: >I<message.>
>  /I<Datei>B<:>I<Zeile>B<: >I<Kategorie>B<: >I<Meldung>./
> (aber auf jeden Fall den Satzpunkt aus dem I<>)
> 
> Ich sehe aber, dass Du das an anderen Stellen (leider) auch nicht
> übersetzt hast - ggf. global? 

Das kann ich gerne global machen, auch für die schon existierende
Vorlage für Python3.13.1. Dann würde ich erst einmal alle Vorkommen von
"I<...>" und "B<...>" extrahieren und für die Platzhalter einen
Vorschlag machen.
> 
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > msgid ""
> > "The simplest form of I<argument> is one of the following I<action> strings 
> > "
> > "(or a unique abbreviation): B<ignore> to ignore all warnings; B<default> 
> > to "
> > "explicitly request the default behavior (printing each warning once per "
> > "source line); B<all> to print a warning each time it occurs (this may "
> > "generate many messages if a warning is triggered repeatedly for the same "
> > "source line, such as inside a loop); B<module> to print each warning only "
> > "the first time it occurs in each module; B<once> to print each warning 
> > only "
> > "the first time it occurs in the program; or B<error> to raise an exception 
> > "
> > "instead of printing a warning message."
> > msgstr ""
> > "Das einfachste Format von I<Argument> ist eine der folgenden 
> > I<action>-Zeichenketten "
> > "(oder eine eindeutige Abkürzung): B<ignore>, um alle Warnungen zu 
> > ignorieren; "
> > "B<default>, um explizit das standardmäßige Verhalten (Ausgabe jeder 
> > Warnung für "
> > "jede Zeile im Quellcode); B<all>, um eine Warnung bei jedem Auftreten 
> > auszugeben "
> > "(wenn eine Warnung wiederholt für die selbe Zeile im Quellcode, wie z.B. 
> > innerhalb "
> > "einer Schleife ausgelöst wird, kann das viele Meldungen erzeugen); 
> > B<module>, um "
> > "Warnungen nur einmal pro Modul auszugeben; B<once>, um Warnungen nur beim 
> > allerersten "
> > "Auftreten in dem Programm auszugeben; oder B<error>, um einen 
> > Ausnahmefehler auszulösen, "
> > "anstatt eine Warnmeldung auszugeben."
> 
> Ich würde s/I<action>/I<Aktion>/
> s/standardmäßige Verhalten/standardmäßige Verhalten anzufordern/
> s/Schleife ausgelöst/Schleife, ausgelöst/
Diese Schachtelsätze sind einfach nix.
Aber Du hast recht.
> 
> > # Verschiedene Abschnitte aus 3.13.1 
> > # Zum einfacheren Finden ist die Übersetzung nicht neu umgebrochen.
> > # Ab Zeile 689 bis Zeile 755
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > msgid ""
> > "The full form of I<argument> is I<action>B<:>I<message>B<:>I<category>B<:"
> > ">I<module>B<:>I<line.> Here, I<action> is as explained above but only "
> > "applies to messages that match the remaining fields.  Empty fields match 
> > all "
> > "values; trailing empty fields may be omitted.  The I<message> field 
> > matches "
> > "the start of the warning message printed; this match is case-insensitive.  
> > "
> > "The I<category> field matches the warning category.  This must be a class "
> > "name; the match test whether the actual warning category of the message is 
> > a "
> > "subclass of the specified warning category.  The full class name must be "
> > "given.  The I<module> field matches the (fully-qualified) module name; 
> > this "
> > "match is case-sensitive.  The I<line> field matches the line number, where 
> > "
> > "zero matches all line numbers and is thus equivalent to an omitted line "
> > "number."
> > msgstr ""
> > "Die vollständige Form von I<Argument> lautet 
> > I<action>B<:>I<message>B<:>I<category>B<:"
> > ">I<module>B<:>I<line.> Das Feld I<action> wirkt hier wie oben erklärt, 
> > betrifft "
> > "aber nur Warnungen, die auf die restlichen Felder passen."
> > "Leere Felder passen auf alle Werte; leere Felder am Ende können 
> > weggelassen werden. "
> > "Das Feld I<message> passt auf den Anfang der ausgegebenen Warnmeldung; "
> > "der Vergleich ignoriert Groß- und Kleinschreibung. "
> > "Das Feld I<category> passt auf die Kategorie der Warnung. "
> > "Dies muss ein Klassenname sein; es wird verglichen, "
> > "ob die Kategorie der aktuellen Warnmeldung eine Unterklasse der 
> > angegebenen "
> > "Kategorie der Warnung ist. Es muß der vollständige Klassenname angegeben 
> > werden. "
> > "Das Feld I<module> passt auf den (vollständigen) Modulnamen; dieser 
> > Vergleich "
> > "berücksichtigt die Groß- und Kleinschreibung. "
> > "Das Feld I<lineno> passt auf die Zeilennummer, wobei die Null auf alle "
> > "Zeilennummern passt und damit äquivalent zu einer weggelassenen "
> > "Zeilennummer ist."
> 
> s/I<action>B<:>I<message>B<:>I<category>B<: >I<module>B<:>I<line.>
>  /I<Aktion>B<:>I<Meldung>B<:>I<Kategorie>B<: >I<Modul>B<:>I<Zeile>./
> (aber auf jeden Fall den Satzpunkt aus dem I<>)
> 
> Wenn Du das machst, natürlich konsequent im Absatz fortsetzen, z.B.
> s/I<action>/I<Aktion>/
> 
> (Grundsatzentscheidung, s.o.)
> 
> s/Das Feld I<lineno>/Das Feld I<line>/
>  (oder I<Zeile>, wenn Du meinem Vorschlag folgst)
> 
> > # Pingeliges FIXME(?): in 3.13.1 "implementation-specific", "-" instead of 
> > " "
> > # wie 3.13.1, ab Zeile 414
> 
> Ich habe den Eindruck, diese Bindestriche sind denglisch andersherum,
> zu meiner Schulzeit "gabs" die noch nicht …
Das denglisch ist wirklich grausam.
> 
> (Und FIXMEs here ergeben wenig Sinn, weil es sich um ältere Fassungen
> der Handbuchseiten handelt - nur für die neuste würde ich die
> berichten).

Gut.
> 
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > msgid ""
> > "Set implementation specific option. The following options are available:"
> > msgstr ""
> > "Setzt implementierungsspezifische Option. Folgende Optionen "
> > "sind verfügbar:"
> 
> > # erst einmal 3.13.1 ab Zeile 848 kopiert
> > #. type: Plain text
> > #: opensuse-tumbleweed
> > #, no-wrap
> > msgid ""
> > "    -X dev: enable CPython's \"development mode\", introducing additional 
> > runtime\n"
> > "        checks which are too expensive to be enabled by default. It will 
> > not be\n"
> > "        more verbose than the default if the code is correct: new warnings 
> > are\n"
> > "        only emitted when an issue is detected. Effect of the developer 
> > mode:\n"
> > "           * Add default warning filter, as -W default\n"
> > "           * Install debug hooks on memory allocators: see the 
> > PyMem_SetupDebugHooks() C function\n"
> > "           * Enable the faulthandler module to dump the Python traceback 
> > on a crash\n"
> > "           * Enable asyncio debug mode\n"
> > "           * Set the dev_mode attribute of sys.flags to True\n"
> > "           * io.IOBase destructor logs close() exceptions\n"
> > msgstr ""
> > "    -X dev: aktiviert den »Entwicklungsmodus« von CPython, der zusätzliche 
> > Laufzeit-\n"
> > "        Diagnosen bereitstellt, die für eine standardmäßige Aktivierung zu 
> > aufwendig\n"
> > "        sind. Wenn der Code in Ordnung ist, werden nicht mehr Meldungen 
> > ausgegeben als\n"
> > "        in der Voreinstellung: Neue Warnungen werden nur ausgegeben, wenn 
> > ein Problem\n"
> > "        erkannt wird. Effekt des »Entwicklungsmodus«:\n"
> > "           * Hinzufügen eines standardmäßigen Warnungsfilters, wie -W 
> > default\n"
> > "           * Installiert zur Fehlersuche Hooks auf Speicherzuweiser: 
> > siehe\n"
> > "             die C-Funktion PyMem_SetupDebugHooks()\n"
> > "           * Aktiviert das Modul zur Fehlerbehandlung, um bei einem 
> > Absturz\n"
> > "             Python-Rückverfolgungsprotokolle zu schreiben\n"
> > "           * Aktiviert den Modus zur Fehlersuche des Asyncio-Moduls\n"
> > "           * Setzt das dev_mode Attribut vom sys.flag auf »True«\n"
> > "           * io.IOBase Destruktor zeichnet close()-Ausnahmefehler auf\n"
> 
> ggf. s/zu schreiben/rauszuschreiben/
> 
> s/dev_mode Attribut/dev_mode-Attribut/
> ggf. s/vom sys.flag/von sys.flag/
> 
> s/zeichnet … auf/protokolliert/
Da schaue ich nochmal. Das "rausschreiben" ist in der vorherigen Vorlage
an mindestens einer Stelle eingefügt.

Sollen die Änderungen auch in die vorherige Vorlage?
Soll das die Zeichenketten innerhalb der I<..> und B<..> einschliessen?
Wenn die Möglichkeit besteht, die vorherige Vorlage noch zu verbessern,
dann wäre das für mich der richtige Weg.

Viele Grüße,
Christoph
-- 
Ist die Katze gesund
schmeckt sie dem Hund.

Attachment: signature.asc
Description: PGP signature

Antwort per Email an