Funktion in Config.js funktioniert nicht mit Firefox 115.0 ESR

  • Aber ich habe keine Ahnung!

    Es fehlt eine schließende geschweifte Klammer. Entweder ist eine öffnende zu viel und es wird die dazugehörige schließende Klammer erwartet oder die öffnende ist notwendig, die schließende fehlt aber.


    Ich muss mir Asche aufs Haupt streuen! :( Oben im Code von Beitrag #14 habe ich zwar den Import-Befehl geändert, aber nicht die Dateinamen! Oh wie peinlich!

    Also die Zeilen 64 - 67 müssen so aussehen:

    JavaScript
    Chrome.importESModule("resource://gre/modules/BookmarkJSONUtils.sys.mjs");
    Chrome.importESModule("resource://gre/modules/Timer.sys.mjs");
    Chrome.importESModule("resource://gre/modules/PlacesBackups.sys.mjs");
    Chrome.importESModule("resource:///modules/MigrationUtils.sys.mjs");

    und 126/127:

    JavaScript
    Chrome.importESModule("resource://gre/modules/BookmarkJSONUtils.sys.mjs");
    Chrome.importESModule("resource://gre/modules/Timer.sys.mjs");

    Ü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

    2 Mal editiert, zuletzt von milupo (1. Juli 2023 um 17:50) aus folgendem Grund: Ein Beitrag von milupo mit diesem Beitrag zusammengefügt.

  • Ich habe mal eine neue Version zusammengeschustert:

    Wie Mira_Belle oben schrieb, fehlt angeblich am Ende eine schließende geschweifte Klammer als Entsprechung zu der in Zeile 5.

    Zwei Dinge sind mir noch unklar:

    Erstens: In Zeile 59 steht eine 0 am Ende der Zeile, aus meiner Sicht isoliert in der Prärie. Die Zeile ist davor durch ein Semikolon abgeschlossen. Sollte das nicht einen Syntax-Fehler ergeben?

    Zweitens: Das Skript importiert die userChrome.js. Ja, wie bitte schön soll denn das Skript funktionieren, wenn es zu diesem Zeitpunkt noch gar keine userChrome.js gibt? :/

    Ü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

  • Erstens: In Zeile 59 steht eine 0 am Ende der Zeile, aus meiner Sicht isoliert in der Prärie. Die Zeile ist davor durch ein Semikolon abgeschlossen. Sollte das nicht einen Syntax-Fehler ergeben?

    Das ist deswegen kein Syntaxfehler, weil der Befehl davor durch ein Semikolon abgeschlossen ist, damit nur diese Zahl alleine steht und das Semikolon am Ende einer Anweisung (sofern in der Zeile nichts mehr folgt) optional ist. Die Zahl macht einfach gar nichts. Würde da ein Buchstabe anstelle einer Zahl stehen, würde das als Variable interpretiert werden und dann einen ReferenceError ergeben, wenn eine solche Variable nicht zuvor deklariert worden ist.

  • Ah, danke.

    Die Zahl macht einfach gar nichts.

    Wozu ist sie dann da?

    Ü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

  • Vermutlich steht die Zahl nur versehentlich da.

    Da ist JavaScript offenbar großzügiger als CSS.

    Ü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

  • Moin milupo,

    herzlichen Dank. Deine Code Teilweise funktioniert.

    Das Teil für Favoriten funktioniert leider nicht (diese Teil):

    Mfg

  • Das Teil für Favoriten funktioniert leider nicht (diese Teil):

    Im Moment habe ich keine Idee. Meine JavaScript-Kenntnisse sind auch nicht gerade berauschend. Funktioniert alles nicht oder wird wenigstens der Favoriten-Ordner angelegt?

    Ü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

  • wenn ich diese Teil lösche und Firefox starte und beende, wird Favoriten-Ordner angelegt:

    Code
      Chrome.importESModule("resource://gre/modules/BookmarkJSONUtils.sys.mjs");
      Chrome.importESModule("resource://gre/modules/Timer.sys.mjs");
      Chrome.importESModule("resource://gre/modules/PlacesBackups.sys.mjs");
      Chrome.importESModule("resource:///modules/MigrationUtils.sys.mjs");

    Aber wenn diese teil da ist, passiert gar nicht.

  • ich habe mit diese auch geprüft, leider funktioniert nicht:

    Code
      Chrome.importESModule("resource://gre/modules/BookmarkJSONUtils.sys.mjs");  
    Chrome.importESModule("resource://gre/modules/Timer.sys.mjs");  
    Chrome.importESModule("resource://gre/modules/PlacesBackups.sys.mjs");  
    Chrome.importESModule("resource://modules/MigrationUtils.sys.mjs");

    Mfg

  • Hallo Zusammen,

    ich habe geschafft, mit diese Code funktioniert:

    Code
      ChromeUtils.defineModuleGetter(this, "MigrationUtils", "resource:///modules/MigrationUtils.jsm");
      ChromeUtils.defineModuleGetter(this, "BookmarkJSONUtils", "resource://gre/modules/BookmarkJSONUtils.jsm");
      ChromeUtils.defineModuleGetter(this, "PlacesBackups", "resource://gre/modules/PlacesBackups.jsm");
      ChromeUtils.importESModule("resource://gre/modules/Timer.sys.mjs");
      ChromeUtils.importESModule("resource://gre/modules/PlacesUtils.sys.mjs");

    Vielen Dank für Hilfe

    Mfg

  • sam2008 Verwende mal statt der beiden Zeilen 1 und 2 oben in deinem Beitrag folgende:

    JavaScript
    ChromeUtils.defineESModuleGetters(this, "MigrationUtils", "resource:///modules/MigrationUtils.sys.mjs");
    ChromeUtils.defineESModuleGetters(this, "BookmarkJSONUtils", "resource://gre/modules/BookmarkJSONUtils.sys.mjs");

    Es wird bald keine JSM-Dateien mehr geben und MigrationUtils.jsm und BookmarkJSONUtils.jsm sind bereits nach MigrationUtils.sys.mjs und BookmarkJSONUtils.sys.mjs konvertiert. Morgen kommt Firefox 115 und da könnte der Code mit den JSM-Dateien schon nicht mehr funktionieren.

    EDIT: Habe eine Zeile noch übersehen: :(

    JavaScript
    ChromeUtils.defineESModuleGetters(this, "PlacesBackups", "resource://gre/modules/PlacesBackups.sys.mjs");

    Ü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

    2 Mal editiert, zuletzt von milupo (3. Juli 2023 um 17:13)

  • So wie ich das verstanden habe, testet er ja bereits die neue Version

    Selbst wenn, dann denke ich, dass der Code mit den JSM-Dateien bald nicht mehr funktioniert. Wenn der neue Code mit den MJS-Dateien funktioniert, ist die Zukunft erst einmal gesichert.

    Ü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

  • sam2008 Kannst du mal den Code aus deiner config.js hier in einem Code-Kasten bereitstellen? Ich möchte ihn gerne mal testen.

    Ü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

  • Moin milupo,

    mit diese Code funktioniert nicht:

    Code
    ChromeUtils.defineESModuleGetters(this, "PlacesBackups", "resource://gre/modules/PlacesBackups.sys.mjs");
    ChromeUtils.defineESModuleGetters(this, "MigrationUtils", "resource:///modules/MigrationUtils.sys.mjs");ChromeUtils.defineESModuleGetters(this, "BookmarkJSONUtils", "resource://gre/modules/BookmarkJSONUtils.sys.mjs");


    Hier ist mein Code:

    Mfg

    Einmal editiert, zuletzt von sam2008 (4. Juli 2023 um 08:35)

  • mit diese Code funktioniert nicht:

    Ja, mit deinem Code funktioniert es in Fx 115. Ich arbeite aber in der Regel mit dem Nightly und da funktioniert dieser Code nicht mehr. Warum er noch in Fx 115 funktioniert, ist mir etwas unklar, denn da sind die betroffenen JSM-Dateien auch schon in MJS-Dateien konvertiert.

    Ich habe es jetzt hinbekommen, dass dein Skript auch in Firefox 117 (Nightly) funktioniert. Die Datei-Pfade habe ich mir jedoch angepasst. So sieht mein Code aus:

    Die Zeilen, wo diese Dateien eingelesen werden, sehen für das Nightly jetzt so aus:

    JavaScript
    ChromeUtils.defineESModuleGetters(this, { MigrationUtils: "resource:///modules/MigrationUtils.sys.mjs",});
     ChromeUtils.defineESModuleGetters(this, { BookmarkJSONUtils: "resource://gre/modules/BookmarkJSONUtils.sys.mjs",});
      ChromeUtils.defineESModuleGetters(this, { PlacesBackups: "resource://gre/modules/PlacesBackups.sys.mjs",});
      ChromeUtils.defineESModuleGetters(this, { Timer: "resource://gre/modules/Timer.sys.mjs",});
      ChromeUtils.defineESModuleGetters(this, { PlacesUtils: "resource://gre/modules/PlacesUtils.sys.mjs",});

    Ü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

  • Der Code im vorstehenden Beitrag funktioniert auch in der 116er Beta.

    Ü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