userChrome.js Scripte für den Fuchs (Diskussion)

  • In Nightly funktioniert das Script zum löschen der Eingabe in der Searchbar nicht mehr. Gibt es eventuell schon eine angepasste Version?

    Grüße vom FuchsFan

  • Gibt es eventuell schon eine angepasste Version?

    Teste bitte:

  • Zur Erläuterung: BrowserSearch (Zeilen 6-8) gibt es nicht mehr. Siehe

    Sören Hentzschel
    4. Februar 2025 um 22:53

    Ü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

  • Danke, Andreas, jetzt löppt dat

    :thumbup::)

    Werde es mit deinem Script (zweiter Teil) kombinieren, gefällt mir.

    Finde ich ganz praktisch.


    BrowserSearch (Zeilen 6-8) gibt es nicht mehr.

    Danke:thumbup:

    Mit freundlichem Gruß
    Andreas
    Mein Laptop  Meine Add-ons

    Einmal editiert, zuletzt von 2002Andreas (12. Februar 2025 um 16:54) aus folgendem Grund: Ein Beitrag von 2002Andreas mit diesem Beitrag zusammengefügt.

  • Eine Erklärung könnte für andere dann evtl. hilfreich sein.

    Die Experten wissen es ganz bestimmt, denn oncommand in dieser Zeile wird in der Konsole als Fehler ausgegeben.

    Nun habe ich es mal so versucht, aber es will nicht funktionieren.

    JavaScript
            key.setAttribute('modifiers', Appmenu.hotkeyModifier);
            /*key.setAttribute('oncommand', 'document.getElementById("AMpopup").openPopup();');*/ 
    		key.addEventListener("command", () => { document.getElementById("AMpopup").openPopup();
    			 
            document.getElementById('mainKeyset').appendChild(key);
           
    		}

    Grüße vom FuchsFan

    2 Mal editiert, zuletzt von FuchsFan (13. Februar 2025 um 15:50)

  • Code vernünftig einrücken würde vermutlich bei der Fehlervermeidung helfen. Die schließende geschweifte Klammer fehlt in der vierten Zeile. Die Klammer in Zeile 7 dürfte zur if-Abfrage weiter oben gehören, ausgehend von deinem vorherigen Screenshot. Hättest du den vollständigen Code geteilt, könnte man es mit Sicherheit sagen.

  • Ich habe das jetzt nicht getestet, aber du musst in Zeile 4 noch }); hinzufügen, denn so fehlen die schließenden Klammern. Zeile 5 hatten wir schon mal in einem anderen Skript, da hat BrokenHeart let element = davorgesetzt.

    Ü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

  • Ich meinte, man müsste deinen vollständigen Code sehen, um mit Sicherheit zu sagen, wozu deine Klammern gehören. Hier jedenfalls der relevante Part aus deinem Link mit deiner Korrektur und korrekter Klammersetzung sowie passender Einrückung. Ersetze die Zeilen 526 bis 534 damit:

  • Sören Hentzschel

    Ganz herzlichen Dank, jetzt funktioniert wieder alles fehlerlos. Das mit den Klammern werde ich nie begreifen, obwohl ich das schon alles erklärt bekommen habe.

    Endor

    Du könnest das ja auch in Dein Script so übernehmen, so werden dann in der Konsole ab v137 keine Fehler mehr angezeigt.


    Ich habe das jetzt nicht getestet,

    Auch Dir danke, milupo, aber nun ist ja alles geklärt.

    Grüße vom FuchsFan

    Einmal editiert, zuletzt von FuchsFan (13. Februar 2025 um 16:04) aus folgendem Grund: Ein Beitrag von FuchsFan mit diesem Beitrag zusammengefügt.

  • Das mit den Klammern werde ich nie begreifen, obwohl ich das schon alles erklärt bekommen habe.

    Da gibt es nicht viel zu begreifen: Klammern treten immer paarweise auf. Schreibst du eine öffnende Klammer gehört auch eine schließende dazu. Das Problem ist eher, die Übersicht über die Klammern zu behalten. Mit einem guten Editor (z. B. Notepad++) kann man auch nach fehlenden Klammern suchen.

    Ü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

  • Das mit den Klammern werde ich nie begreifen, obwohl ich das schon alles erklärt bekommen habe.

    Das ist ein ganz einfaches Prinzip: Jede geöffnete Klammer muss auch wieder geschlossen werden. Wenn die Anzahl der öffnenden Klammern eine andere als die Anzahl der schließenden Klammern ist, kann etwas nicht stimmen. Das gilt für alle Formen von Klammern: (), {}, [].

    Und Code sinnvoll einrücken, hilft enorm bei der Lesbarkeit, weil du dann besser siehst, wo die Klammersetzung noch nicht passt. Vergleiche:

    JavaScript
    if (condition1) {
    if (condition2) {
    foo.addEventListener('command', () {
    // Code
    });
    }
    }
    JavaScript
    if (condition1) {
      if (condition2) {
        foo.addEventListener('command', () {
          // Code
        });
      }
    }

    Ich würde behaupten, dass wenn eine Klammer fehlen würde, du das im zweiten Beispiel sehr viel schneller erkennst.

    Und noch eine Ergänzung: Wenn es nur eine Zeile gibt, die unter einer bestimmten Bedinung gilt, kann man die geschweiften Klammern weglassen. Das war auch hier im Original-Code der Fall. Und dann auch noch falsch eingerückt:

    JavaScript
      if (Appmenu.hotkeyModifier)
    key.setAttribute('modifiers', Appmenu.hotkeyModifier);

    Ich würde die Klammern niemals weglassen, weil das Fehler provoziert. Schreibe es so und es gibt keine Unklarheiten:

    JavaScript
    if (Appmenu.hotkeyModifier) {
      key.setAttribute('modifiers', Appmenu.hotkeyModifier);
    }
  • Das Problem ist eher, die Übersicht über die Klammern zu behalten.

    Genau das ist es immer, wie es funktioniert hattest Du mir schon mal vor langer Zeit erläutert (kann ich nicht mehr genau sagen, aber ich glaube Du warst es).

    Und Code sinnvoll einrücken, hilft enorm bei der Lesbarkeit, weil du dann besser siehst, wo die Klammersetzung noch nicht passt.

    Das ist natürlich sinnvoll, aber beim Kopieren und Einfügen klappt es manchmal nicht so richtig, habe ich festgestellt.

    Und noch eine Ergänzung: Wenn es nur eine Zeile gibt, die unter einer bestimmten Bedinung gilt, kann man die geschweiften Klammern weglassen. Das war auch hier im Original-Code der Fall. Und dann auch noch falsch eingerückt:

    Wenn man Ahnung davon hat, dann würde ich das auch so sehen, glaube ich zumindest. Aber vielen Dank für die Erklärungen, nur das Umsetzen wird wohl doch schwieriger sein, wie es sich liest. Mit css-Code habe ich mich ja halbwegs angefreundet, aber Scripte sind eine andere Welt.

    Grüße vom FuchsFan

  • Hallo FuchsFan
    Habe ich so geändert. Schau es Dir mal an ob es so passt:

    userChrome.js/Firefox 135/Appmenu.uc.js at master · Endor8/userChrome.js
    Skripte für die Firefox-Erweiterung userChromeJS. Contribute to Endor8/userChrome.js development by creating an account on GitHub.
    github.com

    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:135.0) Gecko/20100101 Firefox/135.0
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!