1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. Mira_Belle

Beiträge von Mira_Belle

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

    • Mira_Belle
    • 15. Juni 2025 um 12:16

    Endor In Deiner Scripte Sammlung ist dann aber nicht die aktuellste Version, oder?
    Zumal im Beitrag #4.500 die Version auch wieder anders ausschaut!

  • Script für Button um about-Dialog aufzurufen -

    • Mira_Belle
    • 11. Juni 2025 um 09:26

    Hi harff182 Sorry, ich war wohl etwas neben der Spur!
    Die von mir gepostete Skripte rufen "about:about" auf
    und nicht wie von Dir gewünscht den Dialog "Über Firefox":!:

    Bitte vielmals um Entschuldigung, wenn ich für Verwirrungen und/oder Irritationen gesorgt habe.

  • Script für Button um about-Dialog aufzurufen -

    • Mira_Belle
    • 10. Juni 2025 um 21:22

    Schau Dir dieses Skript einmal an!

    JavaScript
    // JavaScript Document
    // QuickLinkButton-about:about.uc.js  =  Button_for_QuickLinks-about.uc.js
    // Source file https://www.camp-firefox.de/forum/thema/135613/?postID=1213791#post1213791
    // Source file https://www.camp-firefox.de/forum/thema/139289/?postID=1271890#post1271890
    
    /* ----------------------------------------------------------------------------------- */
    /*     Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen     */
    /*            %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons             */
    /* ----------------------------------------------------------------------------------- */
    
    (function() {
      
       if (location.href !== 'chrome://browser/content/browser.xhtml') return;  
       try {
          CustomizableUI.createWidget({
             id: 'link-button-about',
             type: 'custom',
             defaultArea: CustomizableUI.AREA_NAVBAR,
             onBuild: function(aDocument) {         
                let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
                let props = {
                   id: 'link-button-about',
                   class: 'toolbarbutton-1 chromeclass-toolbar-additional',
                   removable: 'true',
                   label: 'Quicklink: about:about',
                   tooltiptext: 'Quicklink:\nabout:about',
                };            
                for (var p in props) {
                   toolbaritem.setAttribute(p, props[p]);
                }           
    
                return toolbaritem; 
             }      
          });
       } catch(e) {};
    
       document.getElementById('link-button-about').addEventListener('click', event => {
          if (event.button === 0) {
             openTrustedLinkIn("about:about", "tab")
          }
       });
    
       // Pfad zum Profilordner
       let ProfilePath = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/");
       // Pfad in den entsprechenden Unterordner
       let IconPath = '/chrome/icons/';
       // Name & Dateiendung des anzuzeigenden Symbols!
       let ButtonIcon = "firefox.svg";
       // Erstelle ein img-Element, um zu überprüfen, ob die Grafik geladen werden kann
       let img = new Image();
       img.src = "file:" + ProfilePath + IconPath + ButtonIcon;
       
       img.onload = function() {
          // Wenn die Grafik geladen werden kann, setze das listStyleImage
          document.getElementById('link-button-about').style.listStyleImage = 'url("' + ("file:" + ProfilePath + IconPath + ButtonIcon) + '")';
          document.getElementById('link-button-about').style.fill = '#f1b508';    // Hier wird die Iconfarbe direkt gesetzt
       };
       
       img.onerror = function() {
          // Wenn die Grafik nicht geladen werden kann, verwende das Fallback-Icon
          document.getElementById('link-button-about').style.listStyleImage = 'url("chrome://global/skin/icons/warning.svg")';
          document.getElementById('link-button-about').style.fill = 'red';    // Hier wird die Iconfarbe direkt gesetzt
       };
    })();
    Alles anzeigen

    Oder dieses:

    JavaScript
    // JavaScript Document
    //  aboutabout-button.uc.js
      
    (function() {
          
        var css =`
            #aboutabout-ToolBarButton > image {
                display: none !important;
            }
    
            #aboutabout-ToolBarButton > label {
                display: flex !important;
                background-color: lightgreen !important;
                color: red !important;
                outline: 1px solid red !important;
                outline-offset: -1px !important;
            }
    
            #aboutabout-ToolBarButton:hover > label {
                background-color: green !important;
                color: cyan !important;
                outline: 1px solid purple !important;
                outline-offset: -1px !important;
            }
        `;
      
      var sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
      var uri = makeURI('data:text/css;charset=UTF=8,' + encodeURIComponent(css));
      sss.loadAndRegisterSheet(uri, sss.AUTHOR_SHEET);
    
       if (location != 'chrome://browser/content/browser.xhtml') return;
        
        try {   
            CustomizableUI.createWidget({
                id: 'aboutabout-ToolBarButton',
                type: 'custom',
                defaultArea: CustomizableUI.AREA_NAVBAR,
                onBuild: function(aDocument) {            
                    var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
                    var props = {
                        id: 'aboutabout-ToolBarButton',
                        class: 'toolbarbutton-1 chromeclass-toolbar-additional',
                        label: 'About:About',
                        tooltiptext: 'About:About',
                        /* style: 'list-style-image: ', */
                        //onclick: 'if (event.button == 0) { \
                        //        openTrustedLinkIn("about:about", "tab");\
                        //    }; '
                    };
                    for (var p in props)
                        toolbaritem.setAttribute(p, props[p]);
                    /* Fix1 */
                    //toolbaritem.addEventListener('click', event => {      
                    //    if (event.button == 0) { 
                    //        openTrustedLinkIn("about:about", "tab");
                    //    }
                    //});
                    /* Bis hier */
    
                return toolbaritem;
                }
            });
        } catch(e) { };
        /* Fix 2 */
        document.getElementById('aboutabout-ToolBarButton').addEventListener('click', event => {	  
            if (event.button === 0) {
    		openTrustedLinkIn('about:about',"tab");  
            }
        });
        /* Bis hier */
    })();
    Alles anzeigen

    Beide erstellen einen "Button" um den about-Dialog aufzurufen.

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

    • Mira_Belle
    • 9. Juni 2025 um 15:26

    jizz Many thanks!

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

    • Mira_Belle
    • 9. Juni 2025 um 11:42

    jizz Please complete your idea in a whole script.

    Because I can't really do much with the code snippet.

  • Skript für Tamper- Violentmonkey gesucht

    • Mira_Belle
    • 8. Juni 2025 um 20:31

    Wenn Du die Spamnummern nicht selber sammeln möchtest, oder Du einfach nur neugierig bist,
    kannst Du Dir ja mal dieses Projekt von Bernhard Haumacher anschauen!
    Ich nutze es und bin nahe zu Spamfrei!

    PhoneBlock: Der Werbeblocker fürs Telefon


    Aber Du kannst das Ding auch privat zu Hause selber betreiben!
    https://hub.docker.com/r/phoneblock/answerbot

    Klick Dich da mal durch!

  • Tab mit Audioinhalt: Ist diese Darstellung normal oder ein nicht mehr richtig funktionierendes Script?

    • Mira_Belle
    • 8. Juni 2025 um 20:19

    Zitronella AH! Jetzt verstehe ich:!:
    Also bei mir wird bei dem Link das Seitenicon angezeigt, das Lautsprechersymbol und der Titel.
    Endet der Ton, wird nur das Lautsprechersymbol ausgeblendet, der Titel verbreitert sich, ABER der Tab bleibt in der Breite gleich!

    Habe ich aber viele Tabs offen, ist es genau so, wie von Dir beschrieben:!:

  • Skript für Tamper- Violentmonkey gesucht

    • Mira_Belle
    • 8. Juni 2025 um 20:10

    2002Andreas Also habe ich es doch richtig vermutet, dass es um das Sperren von Spamanrufen geht?

  • Skript für Tamper- Violentmonkey gesucht

    • Mira_Belle
    • 8. Juni 2025 um 17:46

    Nur zu meinem Verständnis!
    Kannst Du mir mal genau erklären, was das soll? Ich verstehe es nicht!
    Was bezweckst Du mit diesem Skript? Spamanrufe blockieren?

    Um Spamanrufe zu blockieren, habe ich eine andere Lösung.

  • Tab mit Audioinhalt: Ist diese Darstellung normal oder ein nicht mehr richtig funktionierendes Script?

    • Mira_Belle
    • 8. Juni 2025 um 17:42

    Zitronella Warum nagelst Du die Tabbreite nicht auf feste Werte fest?
    Denn der Code oben lässt ja eine gewisse Variation der Breite zu.

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 6. Juni 2025 um 20:42

    @Horstmann Ich bin jetzt etwas irritiert.
    Ist das Ironie oder Sarkasmus, oder was ganz anderes?

  • Seit FF139 geht das script nicht mehr: allow_search_oneoff_with_empty_text.uc.js

    • Mira_Belle
    • 6. Juni 2025 um 20:13

    jizz 私たちは日本語があまり得意ではないのだが?:saint:
    You do know that we're not very good at Japanese here?

    Is this what you mean? And this?

    Übersetzung:

    So installieren Sie userchrome.js Methode 1: 1.
    1. Speichern Sie die folgende Datei direkt unter dem Installationsordner der Anwendung (z. B. %ProgramFiles%\Mozilla Firefox)
    117/install_folder/config.js

    2. Speichern Sie die folgende Datei direkt unter dem Installationsordner der Anwendung\defaults\pref
    117/install_folder\defaults\pref\config-prefs.js


    3. Erstellen Sie einen Chrome-Ordner direkt unter dem Profilordner (z. B. %APPDATA%\Mozilla\Firefox\Profiles\hogehoge.default) und speichern Sie die folgenden Dateien
    139/userChrome.js, 135/userChrome.js oder 106/userChrome.js
    72/userChrome.css, falls erforderlich


    4. speichern Sie die erforderlichen Skriptdateien

    5. zur Sicherheit starten Sie es einmal mit der Option %ProgramFiles%\Mozilla Firefox\firefox.exe -purgecaches

  • Seit FF139 geht das script nicht mehr: allow_search_oneoff_with_empty_text.uc.js

    • Mira_Belle
    • 6. Juni 2025 um 15:30

    Thanks jizz .
    Here's the original script.

    But with which loader should it work?

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 4. Juni 2025 um 22:19

    An wen ist die Frage gestellt?
    Ich find's gut und hätte sogar noch mehr "Einstellungen" per Variablen im Block "//Einstellungen Javascript =>" vorgenommen
    und aus dem CSS rausgenommen.

    Das hier z.B.:

    JavaScript
           /*
           Einstellungen CSS =>
           #A Zaehler (Counter) anpassen (nur falls noetig),
           #B Feinabstimmung allgemein,
           #C Feinabstimmung Zentrierung Trennlinie,
           #D eigene Farben anpassen
           */

    Ich hätte es per Variabel einstellen wollen.
    Den Grund habe ich auch schon einmal genannt.
    Niemand müsste dann irgendetwas am eigentlichen Code ändern!


    Zitat von Horstmann

    Und nur für den Fall, dass wir alle Varianten mit externem CSS einbinden wollen, ohne JS Optionen zu benutzen, das geht.
    Ist auch sehr simpel.

    Mag sein, und ist gar nicht schwer. Mache ich ja auch per userChrome.css @import ....
    und ich habe schon 32 CSS-Dateien! Wenn nun noch viele weiter hinzukommen,
    wie unterscheide ich dann, welche zu Anpassungen des Firefox gehören und welche nur für Design in Skripten da sind?
    Ok, gibt Möglichkeiten, ich habe mich bisher für eine entschieden!
    Und ich werde mir nicht die Arbeit machen und Skripte von Alice oder unserem japanischen Freund auseinander zu kla­bus­tern,
    nur damit CSS und JS strickt getrennt sind!

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 4. Juni 2025 um 21:57

    Habe mir gerade so einige Skripte von alice0775 aber auch von Endor8.
    Ich glaube, diese Diskussion bringt nichts!
    Schaut Euch die verschiedenen Skripte an, dann werdet Ihr sehen, was ich meine.
    Es bleibt alles, wie es ist.
    Es wird von einigen Skripten dutzende individuell angepasste Versionen geben und wir werden daran nichts,
    aber auch gar nichts ändern.

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 4. Juni 2025 um 21:33
    Zitat von milupo

    Es ist einfach unübersichtlicher.

    Findest Du? Ich nicht!
    Zumal es für mich den Vorteil hat, alles für "eine" Funktion in einer Datei zu haben.
    Es darf halt nicht ausarten und "Styles" sollten dann wirklich nur in einem CSS-Block definiert werden.
    Den so manches geht auch ganz und gar in JavaScript! Darauf sollten wir dann halt verzichten.
    Ach, und für mich spricht noch etwas für CSS im Block!
    Es lassen sich viel einfacher Variablen definieren, damit ein User eben nicht im Code rumbasteln muss!

    Siehe z.B. "BookmarkCount.uc.js", "Scrollbaruc..js" oder "UndoListInTabmenuToo.uc.js".
    Und auch im "Appmenu.uc.js", egal was für eine Version da zur Anwendung kommt.
    Bei all diesen Skripten gibt es ganz am Anfang einen Konfigurationsbereich,
    und auch recht viel CSS findet Anwendung, sei es in einem Block oder eingebettet.


    Ach, kleiner Nachtrag!
    Ich habe 32 CSS-Dateien und 39 JS-Dateien.
    Wenn ich nun für alle JS-Dateien auch noch extra CSS erstellen würde, würde ich den Überblick verlieren.
    CSS ist bei mir nur für das Design des Firefox zuständig, Designelemente für JavaScript sind in den Skripten.
    Also klar definiert und getrennt.

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 4. Juni 2025 um 19:39
    Zitat von .DeJaVu

    ..., dass CSS in Scripten kann, aber eigentlich nicht optimal ist.

    Das trift auf jeden Fall beim erstellen von Pages zu!
    Da wird schön getrennt zwischen HTML, JavaSkcipt und CSS!
    Das sind aber dann auch meistens große Projekte, wo z.B. JavaScript und auch teilweise CSS seitenübergreifend angewendet werden.
    Da würde ein File sehr bald total unübersichtlich werden, wenn alle drei Codes darin verwendet werden würden.

    Bei so kleinen Anwendungen, wie wir sie für den Firefox verwenden ist es gar nicht schlimm, wenn JavaScript und CSS
    in den Files Verwendung finden.

    Wir müssten uns nur darauf einigen, anstatt Designvorhaben in JavaScript wirklich nur in CSS einzubinden!
    Denn da hat Horstmann absolut recht, die Basis, also das JavaScript könnte immer gleich sein,
    nur das CSS wäre dann individuell!

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 3. Juni 2025 um 19:23

    Tja, da wollte ich ja hin, aber alle Ansätze dazu wurden abgeschmettert.
    Somit ist es mir jetzt egal, und an bitten am Header oder ähnlichem nichts zu ändern hält sich ja auch keine Sau!
    Da werden Skripte miteinander verwurschtelt, "aus zwei mach eins" obwohl in beiden Skripten gleiche Variablen genutzt werden,
    Versionsnummern werden nicht übernommen oder gar gelöscht, und Quellenangaben sind ja auch nur Ballast.

    Mir egal, wenn das Skript zu retten ist, helfe ich, wenn nicht, lese ich den nächsten Beitrag.

  • BookmarkCount.uc.js funktioniert nach Update auf FF-Version 139.0 nicht mehr.

    • Mira_Belle
    • 3. Juni 2025 um 15:23

    Sorry, wenn ich Dir gegens Schienbein treten muss!
    Es mag ja sein, dass beide Skripte für DICH irgendwie zusammen gehören, tun sie aber nicht!!
    In beiden "Teilen" kommen gleiche Bezeichnungen diverser Variablen vor,
    z.B. menuCount und menuitemCount
    Das kann zu Überschneidungen führen!

    Lass die Skripte doch einfach getrennt, sollte EIN Skript nicht mehr funktionieren,
    ist es viel einfacher, die Ursache zu finden und zu beheben!

  • Unterschiedliche Versionen des Skriptes "Mehrzeilige Tableiste"

    • Mira_Belle
    • 3. Juni 2025 um 08:56
    Zitat von Stoiker

    ... kann aber mangels Kenntnisse nicht einschätzen ab wann bei folgenden Updates von Firefox da wieder Probleme auftauchen könnten.

    Das kann ich auch nicht, aber es wird definiv bei den allermeisten Skripten passieren, dass Mozilla etwas ändert und das Skript,
    dass auf interne Funktionen zugreift oder erweitert oder, oder, wieder angepasst werden muss.
    So ist es nun mal.

    Zitat von Stoiker

    Daher bleibe ich wohl bei der Version die Endor übersetzt hat,

    Das Skript? => MultiRowTabLiteforFx.uc.js

    Zitat von Stoiker

    ... auch wenn mir dort ein paar Feinheiten fehlen

    Was wäre das denn?

Unterstütze uns!

Jährlich (2026)

69,4 %

69,4% (538,17 von 775 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon