Deepl Context Script funktioniert nicht mehr in Nightly

  • Firefox-Version
    Firefox 138 Nightly
    Betriebssystem
    Windows 11 Pro

    Ich nutze dieses Script, das bereits einmal von universum123 angepasst wurde.

    Leider passiert derzeit auf den Eintrag Übersetzung im Context-Menü nichts.

    Kann man das heilen? Oder gehts nur bei mir nicht?

  • Oder gehts nur bei mir nicht?

    Ist hier auch so.

    Könnte evtl. auch daran liegen:

    .DeJaVu
    26. März 2025 um 19:44
  • Danke, das hatte ich gelesen. Dort meldet Mira_Belle am Schluss, dass die Erweiterung wieder funktioniert.

    Könnte man das Script anpassen oder wäre dann die Erweiterung doch besser? Die BETA-Version des Übersetzers innerhalb Nightly funktioniert zwar auch, dauert aber lang.

  • So auf Anhieb sehe ich, dass in Zeile 27 noch der Inlinehandler oncommand verwendet wird. Das muss in einen Ausdruck mit addEventListener umgebaut werden.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • So auf Anhieb sehe ich, dass in Zeile 27 noch der Inlinehandler oncommand verwendet wird. Das muss in einen Ausdruck mit addEventListener umgebaut werden.

    Hast du da einen Ansatz? ;)

    BTW: Die Erweiterung funktioniert sehr gut, ggf. nutze ich dann diese.

  • Hast du da einen Ansatz?

    Ich muss erst probieren.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • So auf Anhieb sehe ich, dass in Zeile 27 noch der Inlinehandler oncommand verwendet wird. Das muss in einen Ausdruck mit addEventListener umgebaut werden.

    Hast du da einen Ansatz? ;)

    Kannst mal probieren wenn du magst; nur ganz grob getestet:

  • Ja, das funktioniert. :thumbup:

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Horstmann:

    Du hast in Zeile 24 die ID einer Variablen zugewiesen (siehe auch Anmerkung unten).

    Dann ist es cleverer, diese Variable auch in Z. 34 zu verwenden:

    JavaScript
    document.getElementById(menuitem.id).addEventListener('click', event => {
        translate ();
      });

    Davon abgesehen habe ich (oder habe ich es sogar nur übernommen, müsste man im Thread Div. Skripte funktionieren im aktuellem Nightly nicht mehr herausfinden) den ursprünglichen Einzeiler mit setAttribute (Z. 27 bei Börsenfeger) in diesen Einzeiler mit addEventListener an derselben Stelle umgewandelt und es funktioniert hier:

    JavaScript
    menuitem.addEventListener('command', translate );

    Anmerkung zur ID:
    Die ID context-googletranslate ist hier übrigens mindestens irreführend und, wenn man das originale Google-Übersetzungsskript ebenso benutzt, höchstwahrscheinlich sogar falsch. Einfach google in deepl ändern und alles ist gut.

  • :/

    Mein Skript funktioniert in der Nightly.

    Mit <3lichem Gruß

    Mira

  • Horstmann:

    Du hast in Zeile 24 die ID einer Variablen zugewiesen (siehe auch Anmerkung unten).

    Dann ist es cleverer, diese Variable auch in Z. 34 zu verwenden:

    JavaScript
    document.getElementById(menuitem.id).addEventListener('click', event => {
        translate ();
      });

    Davon abgesehen habe ich (oder habe ich es sogar nur übernommen, müsste man im Thread Div. Skripte funktionieren im aktuellem Nightly nicht mehr herausfinden) den ursprünglichen Einzeiler mit setAttribute (Z. 27 bei Börsenfeger) in diesen Einzeiler mit addEventListener an derselben Stelle umgewandelt und es funktioniert hier:

    JavaScript
    menuitem.addEventListener('command', translate );

    Anmerkung zur ID:
    Die ID context-googletranslate ist hier übrigens mindestens irreführend und, wenn man das originale Google-Übersetzungsskript ebenso benutzt, höchstwahrscheinlich sogar falsch. Einfach google in deepl ändern und alles ist gut.

    Korrekt in Allem. :thumbup:
    Ich hatte nur einen schnellen Fix gesucht, um potentiell das aktuelle Problem zu umgehen.

    Den restlichen Code habe ich nicht angefasst; nur in Beitrag #8 Zeile 29 auskommentiert, und die Zeilen 36 - 39 reingebaut.
    Grobschlächtig und unnötig komplex; und offengestanden war ich zu faul um die google Komponente auch noch aufzuräumen.;)

    Selber benutze ich den Google translator häufig, und habe einen Button dafür, aber nicht mit der Menü Einbindung.

  • Danke! :)

    Ich habe jetzt folgenden Code übernommen und er funktioniert. Sind da jetzt noch irgendwelche Codebereinigungen nötig?

  • Wie von Speravir und Mira_Belle erwähnt, kann man das auch etwas eleganter umsetzen, hier mit seinem Code (Zeile 27, nicht in Nightly getestet):

    3 Mal editiert, zuletzt von Horstmann (30. März 2025 um 12:41)