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. milupo

Beiträge von milupo

  • Firefox v136.0a1-OpenWith.uc.js funktioniert nicht mehr

    • milupo
    • 4. Februar 2025 um 15:24

    Endor Bei dir gibt es gar kein Untermenü. Außerdem ist es viel länger als das des TE oben. Wie war denn deine alte Zeile 148, bevor du sie mit dem Code von uns oben ersetzt hast?


    Zitat von milupo

    Bei dir gibt es gar kein Untermenü.

    Alles klar, bei dir gibt es eine zusätzliche Einstellung MENU_GROUP, die auf true gesetzt ist, das heißt auf horizontales Menü.

  • Firefox v136.0a1-OpenWith.uc.js funktioniert nicht mehr

    • milupo
    • 4. Februar 2025 um 13:33
    Zitat von Sören Hentzschel

    Die zweite Zeile in Beitrag #3 sollte vermutlich eher so aussehen:

    OK, danke, funktioniert. Hatte nicht getestet, weil ich davon ausging, dass alle Pfade bei ihm anders sind. Aber der Edge-Pfad ist bei mir gleich.


    Zitat von ufo1024k

    Funktioniert immer noch nicht

    Ersetze mal die jetzige Zeile 122 durch folgende Zeile wie oben in Beitrag #5 durch Sören Hentzschel angegeben:

    JavaScript
    OpenWithManager.openWithOtherBrowser(this, id, type);
  • Firefox v136.0a1-OpenWith.uc.js funktioniert nicht mehr

    • milupo
    • 4. Februar 2025 um 13:08

    Ich habe das Skript etwas eingedeutscht. Die Kommentare habe ich erst einmal in Japanisch belassen.

    JavaScript
    // ==UserScript==
    // @name           OpenWith.uc.js
    // @description    用其他浏览器打开页面、链接、书签及标签
    // @author         ding
    // @include        main
    // @version        2018.2.3.1
    // @homepageURL    https://bbs.kafan.cn/thread-2114879-1-1.html
    // @startup        window.OpenWithManager.init();
    // @shutdown       window.OpenWithManager.destroy();
    // @note           适配Firefox57+
    // ==/UserScript==
    location.href.startsWith('chrome://browser/content/browser.x') && (function () {
    
        const MENU_NAME = "Mit einem anderen Browser öffnen";
    
        //是否使用二级菜单
        const USE_MENU_AREA = true; //页面
        const USE_MENU_TAB = false; //标签
        const USE_MENU_PLACE = false; //书签
    
        function getFirefoxPath(){//firefox.exe所在路径
            return OS.Constants.Path.libDir;
        }
        function getRootPath() {//firefox所在盘路径
            var path = getFirefoxPath();
            var index = path.indexOf(":");
            return path.substring(0,index+1);
        }
        //修改内容后请将脚本改名来保证加载的是最新,或使用无缓存的userChrome.js
        var browsers = {
           
    		Edge: {
                enable: true,
                name: "Edge",
                path: "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe",
                image: "data:image/png;base64,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"
            },
    		Chrome: {
                enable: true,
                name: "Chrome",
                path: "D:\\GoogleChromePortable64\\GoogleChromePortable.exe",
                image: "data:image/png;base64,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"
            },
            
            Slimjet: {
                enable: true,
                name: "Slimjet",
                path: "D:\\Slimjet\\slimjet.exe",
                image: "data:image/png;base64,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"
            },
            FireFox: {
                enable: true,
                name: "Firefox Nightly",
                path: "D:\\FirefoxNightly\\FirefoxPortable.exe",
                image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAE5ElEQVRIx8WVW4hd5RXHf+vb93Oby5nO5FJlopKQ4qVSpQk+zB4otZVWBUHwTQRHEAVBCvWlM2OhUOhLoX2RFiuBgnlKKfUChTkVSm2tU1p0hIxOLibGZDKZOefsfc6+fd/Xh2OGBFuVltIFH+y1H9Zv/9f69n/BfxFPbP4s5n8Z7Y1nrZz8/mdC5IsUum/h+NIrb22CXx8dN2LPc725iwdW40A89roH5k/NLnQ+F3Dih0l87oyNn/pFcwkgOviDJe0GiwUehE3wGxA0IRpDPX8BO74GgCsh1dsPd77T2rv82/ua14Gca5O79z394o6XPfrlO47IpezwSpKXcTg5zYFvzOFMj5FeSsCLwA/hXo0VDTbCWAMz67Mfps3Z6tgLL/1bBc99833rReMM2y3SGThjr6BunuJ87xyrv34dwvFRi6ImzvMNdLQKVIC7W+P24q7lf9x559LVXF19+PPP83hfuY9a1MYJXUzg0JqZQQcOG385CaYCXYA1YAxyuYaUN4BtgA3BNMA0WHNPLz6zcTb+FGDjhLPoeBFGgfnkg7QDRkFwx1GmHvk2k/ffBjqHKsf8/jJ+MYtrG2BdsC5iQ7QOODG8sHgd4PXHirjqqxjACqAs1hn1zwiI69C8+UbGboygzKAYYN7uYlYHBMmteGYMMXVE1xA8zpbmegW9dXZfiB1VFT3K3QrGVcLmseOc+vErUA6gSKFIKY+to9/s0+reTrP6EqgmYiaQssb03z5Y2gU09tk5AEcsyoCqQGkwSYoZZBTv/Z3k3XXQ5ScKEij6UA3JX36L9GKdsL+fMN2DlC3EROy/YOa4On6bEysskgvKgKOFjdNrdMOStReOUwU+VNVIktGjQZcZKBerS6qts/QHB2nfNKDv9EkpuNy18S7Ac8yoHVpwCyiHORJETLRmGJ/ay/bFj/AVVGWOqYrRbRIHlANG4+oulR9gtyva/hjF2A7SHP1iLsDwvFp2sYu6snj5CDIdTaH9kCMPLrD+zgrbvSv4X5mlaIZcevOvpCfPQ6lRtiJqNrETMEhrtMmYSEL2RnD2KiCYMJTbispaggwmagGFdsgKRR4Kh77+LQZNGNagGxaE4zVOvfsrjAhSd5g8eJhhagGIcqFdKFJXlncVtI+WneJVtVhZIciFYAiTgUviWrYG2+TnN9F1h+2dM1z40xvkSUZDORhdMfnw/TQyD7VjQStqmeAoj3umTeeda63itbnBSpp78QCHPID+uJC0IGlZVtd+w+mTf0RZhwILIpjIZ+Kh79I6cheVGIrS4hQw0xcilXZeXhib51oT8Rvlsi6cuLKCFIIdgBXBivC1ww9wy23zXNp6n0QPoT1G7dAhTM3HbkMpCmMhGli8riY7N/zDvzS7lQd7K/2PgzjFpRQhb0CvIQzrMKxDFlqKuqUIRnaS+QqrQItFtCUcCnma8dVb9Pz3Hh/Z9qcWzqv39FYyHcYZDqUIRc2S1BR5bTTkIoAyMhSuYF2LVmCt4GiIlMGImf/Jj/zOZ2603917ZaXsNuIcRYGi9KCKIKkJZQCFD8aByht5lzGaoJ51Fn/amP/CK/PE0X7sNNXKoBdgEEoRSg9MYMlcReVDX4ZsD7YYv6HbWfzlrfP/0U5+bWFzSffqc1lCnO/46EpBZAj3aC5v+st2/1bnyZemOvy/4p94BjsVGJyURAAAAABJRU5ErkJggg=="
            },
    
            others: {
                enable: false,
                name: "",
                path: "",
                image: ""
            },
    
            all: {
                enable: true,
                name: "Ihrem Browser",
                image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACjElEQVQ4T21TXUgUURT+zswuZZruTBRRFJHOvgRR0EMRCQkVQWUEai9WD+LWjtpDQfVQLRQYPUSFd0xSCMJ+pCIMC1+rh+itzMC964MIRRYzu2WitjsnZqZ1t637cOGce8937ved7xJKli5SawA0MfE+AJvAnAXoPYhfECsPbLNmsriEFgIxVaFR5i6AegIK+eBCo7cx4yII0uGqZpgrpr1ccPGmXKSF+C2BNpa+iMGvnCmjDgnKgpkiluxQiJrtLLajw5jzATQr2UOg1tJivyvQ7cSNePFZRCSPEWGbE4/GqFKkalTwGBGUUgAX6IWrXlZCuXL7uPGx+FyzkvdzrJwnTchOIpz9X/d8LsdoyJjGo3wcsVLtBD4NoJ90IYeZ2CZWvoD45D8aMEYc0yho0/NpiZadHgawFYRR0kXyiW1GDy3tGo+GFXfsj9qjv3LYqYa5VnHJdEyjLg+sCfmQyJ/KjD8FTcinjmkcRICcIaJQsXCRrmRtui36cgHAkhMErPVjxnefgm0ae7w4YqWOKuyeADANoueuqz5Ot62fKKali5Rnsn4CVAa/I3+ECt3Iq1zZO6mH5mY7mHABjHmALjlfqzuRIDcPpIvUdRDvYuAZRbrlZmJqdeI1XudgXZss0xfP+hyDl/IQcuo5p716pAAi+7KqciUwkkjeYsa9v7gKOUiE/fkCF6hPx41BL64ScrcKNNqm0RJYuYfDek7ehkJXFwwzwKr2LeVxbWLm144Z3RHoJA8Q8yknVLEXsVUzhU+T4JC2fPwMK+6PdHllH46s/KlbsgHAAAgJAG/gogUKPtjL5jvRuGHeH2Opccq6x1aXuephJncLQE1gZDzDABiaU8N3ZmLrPhfX/AYp2hIKQjp+9wAAAABJRU5ErkJggg=="
            }
        };
    
        if (window.OpenWithManager) {
            window.OpenWithManager.destroy();
            delete window.OpenWithManager;
        }
    
        function $(id) {
            return document.getElementById(id);
        }
    
        window.OpenWithManager = {
            useMenu: false,
            getTypeDesc: function (type) {
                switch (type) {
                    case "page":
                        return " - Seite";
                    case "link":
                        return " - Link";
                    //case "tab": return "标签";
                    //case "bm": return "书签";
                }
                return "";
            },
            buildMenuName: function (label, type) {
                return "Mit " + label + " öffnen" + this.getTypeDesc(type);
            },
            attachNode: function (anchorNode, node) {
                if (this.useMenu) {
                    anchorNode.appendChild(node);
                } else {
                    anchorNode.parentNode.insertBefore(node, anchorNode);
                }
            },
            createMenuPopup: function (anchorNode, type) {
                let menu = document.createXULElement("menu");
                menu.setAttribute("label", MENU_NAME);
                menu.setAttribute("id", "openwith-menu-" + type);
                menu.setAttribute("class", "menu-iconic openwith-menu open-" + type);
                menu.setAttribute("image", browsers.all.image);
                anchorNode.parentNode.insertBefore(menu, anchorNode);
    
                let popup = document.createXULElement("menupopup");
                popup.id = "openwith-popup-" + type;
                menu.appendChild(popup);
                return popup;
            },
            createMenuItem: function (anchorNode, id, browser, type) {
                let menuitem = document.createXULElement("menuitem");
                menuitem.id = "openwith-m-" + type + "-" + id;
                menuitem.setAttribute("label", this.buildMenuName(browser.name, type));
           //   menuitem.setAttribute("oncommand", "OpenWithManager.openWithOtherBrowser(this,'" + id + "','" + type + "')");
    		  menuitem.addEventListener("command", function() {
    			  OpenWithManager.openWithOtherBrowser(this,'" + id + "','" + type + "');
    		  });
                menuitem.setAttribute("class", "menuitem-iconic openwith-menuitem open-" + type);
                if (browser.image) {
                    menuitem.setAttribute("image", browser.image);
                }
                this.attachNode(anchorNode, menuitem);
            },
            createBrowserMenu: function (anchorNode, type) {
                for (let key in browsers) {
                    try {
                        if (browsers[key].enable) {
                            this.createMenuItem(anchorNode, key, browsers[key], type);
                        }
                    } catch (e) {
                        alert(e.message);
                    }
                }
            },
            //contentAreaContextMenu
            initContentAreaMenu: function () {
                var inspos = $("inspect-separator");
                let sep = document.createXULElement("menuseparator");
                sep.setAttribute("class", "openwith-menuitem");
                inspos.parentNode.insertBefore(sep, inspos);
                this.useMenu = USE_MENU_AREA;
    
                var anchorNode;
                if (this.useMenu) {
                    anchorNode = this.createMenuPopup(inspos, "area");
                } else {
                    anchorNode = inspos;
                }
                //链接部分
                this.createBrowserMenu(anchorNode, "link");
    
                let sepLink = document.createXULElement("menuseparator");
                sepLink.setAttribute("class", "open-link openwith-menuitem");
                this.attachNode(anchorNode, sepLink);
    
                //控制链接菜单的显示
                inspos.parentNode.addEventListener("popupshowing", this, false);
    
                //页面部分
                this.createBrowserMenu(anchorNode, "page");
            },
            //tabContextMenu
            initTabContextMenu: function () {
    
                var inspos = $("context_closeTabOptions") || $("context_closeTabOptions") 
                let sep = document.createXULElement("menuseparator");
                sep.setAttribute("class", "openwith-menuitem");
                inspos.parentNode.insertBefore(sep, inspos.nextSibling);
    
                this.useMenu = USE_MENU_TAB;
    
                var anchorNode;
                if (this.useMenu) {
                    anchorNode = this.createMenuPopup(sep.nextSibling, "tab");
                } else {
                    anchorNode = sep.nextSibling;
                }
                this.createBrowserMenu(anchorNode, "tab");
    
            },
            //placesContext
            initPlacesContextMenu: function () {
    
                var inspos = $("placesContext_openSeparator");
                //let sep = document.createXULElement("menuseparator");
                //inspos.parentNode.insertBefore(sep, inspos);
    
                this.useMenu = USE_MENU_PLACE;
                var anchorNode;
                if (this.useMenu) {
                    anchorNode = this.createMenuPopup(inspos, "place");
                } else {
                    anchorNode = inspos;
                }
                this.createBrowserMenu(anchorNode, "place");
    
                //文件夹显示
                inspos.parentNode.addEventListener("popupshowing",this, false);
            },
            handleEvent: function (event) {
                if(event.target.id=="placesContext"){
                    var isFloder = false;
                    try {
                        let selectedNode = PlacesUIUtils.getViewForNode(event.target.ownerDocument.popupNode).selectedNode;
                        isFloder = !selectedNode || selectedNode.hasChildren;
                    } catch (e) {
                    }
                    let menus = $("placesContext").querySelectorAll(".open-place");
                    for (let menu of menus) {
                        if (isFloder) {
                            menu.hidden = true;
                        } else {
                            menu.hidden = false;
                            menu.disabled = false;
                        }
                    }
                }
                if(event.target.id=="contentAreaContextMenu"){
                    let menus = $("contentAreaContextMenu").querySelectorAll(".open-link");
                    for (let menu of menus) {
                        if (gContextMenu.onLink) {
                            menu.hidden = false;
                        } else {
                            menu.hidden = true;
                        }
                    }
                }
    
            },
            init: function () {
    
                //contentAreaContextMenu
                this.initContentAreaMenu();
    
                //tabContextMenu
                this.initTabContextMenu();
    
                //placesContext
                this.initPlacesContextMenu();
    
            },
            destroy:function () {
                $("contentAreaContextMenu").removeEventListener("popupshowing", this, false);
                $("placesContext_openSeparator").removeEventListener("popupshowing", this, false);
    
                let menus = document.querySelectorAll(".openwith-menu"),
                    menuitems = document.querySelectorAll(".openwith-menuitem");
                for(let menuitem of menuitems){
                    menuitem.parentNode.removeChild(menuitem);
                }
                for(let menu of menus){
                    menu.parentNode.removeChild(menu);
                }
            },
            openWithBrowser: function (url, path) {
                if (!path) {
                    alert("Browserpfad nicht installiert ");
                    return;
                }
                if (path == "microsoft-edge") {
                    //edge用url打开
                    var cmdUrl = path + ":" + url;
                    let win = window.openDialog(cmdUrl, "", "chrome");
                    win.close();
                    return;
                }
    
                let clientApp = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile);
                clientApp.initWithPath(path);
                if (!clientApp.exists()) {
                    alert("Browserpfadfehler: " + path);
                    return;
                }
                try {
                    let ss = Cc["@mozilla.org/browser/shell-service;1"]
                        .getService(Ci.nsIShellService);
                    ss.openApplicationWithURI(clientApp, url);
                } catch (e) {
                    let p = Cc["@mozilla.org/process/util;1"]
                        .createInstance(Ci.nsIProcess);
                    p.init(clientApp);
                    p.run(false, [url], 1);
                }
            },
            openWithOtherBrowser : function (obj, id, type) {
                var url;
                switch (type) {
                    case "page":
                        url = gBrowser.currentURI.spec;
                        break;
                    case "link":
                        url = gContextMenu.linkURL;
                        break;
                    case "tab": {
                        let tab = TabContextMenu.contextTab;
                        let bw = tab && tab.linkedBrowser;
                        url = bw && bw.currentURI.spec;
                    }
                        break;
                    case "place":
                        url = PlacesUIUtils.getViewForNode(PlacesUIUtils.lastContextMenuTriggerNode).selectedNode.uri;
                        break;
                }
                if (url) {
                    if (id == "all") {
                        for (let key in browsers) {
                            let browser = browsers[key];
                            if (browser.enable && key != "all" && browser.path) {
                                this.openWithBrowser(url, browser.path);
                            }
                        }
                    } else {
                        let browser = browsers[id];
                        this.openWithBrowser(url, browser.path);
                    }
                }
            }
    
        };
        OpenWithManager.init();
    })();
    Alles anzeigen
  • Firefox v136.0a1-OpenWith.uc.js funktioniert nicht mehr

    • milupo
    • 4. Februar 2025 um 12:48

    Ersetze Zeile 121 durch folgende Zeilen:

    JavaScript
      menuitem.addEventListener("command", function() {
    			  OpenWithManager.openWithOtherBrowser(this,'" + id + "','" + type + "');
    		  });
  • Suchfeld wird nicht mehr geleert

    • milupo
    • 3. Februar 2025 um 19:48

    Boersenfeger Dein Skript funktioniert in meinem Nightly.

  • FF135: Textfarbe für (aktiven) Tab wird nicht übernommen

    • milupo
    • 3. Februar 2025 um 19:43
    Zitat von genetic

    inkl. Hoover

    Ist jetzt vielleicht etwas spitzfindig, aber Hoover ist ein Staubsaugerhersteller und hat mit :hover nichts zu tun. Ich schreibe das, weil immer die Gefahr besteht, dass man sich etwas Falsches einprägt.

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 2. Februar 2025 um 17:28

    Ich kann mir auch nicht vorstellen, dass hier Firefox schuld sein soll. Selbst der Admin vom türkischen Forum schrieb ja, dass vBulletin einfach zu alt ist. Er schiebt nur die Arbeit auf die Forumnutzer ab. Wenn es ein generelles Problem ist, dass vBulletin mit Firefox hat, betrifft es ja alle Firefox-Nutzer. Der Forums-Admin macht sich es hier einfach zu leicht. Er verlangt dann indirekt, dass sich alle Firefox-Nutzer selbst kümmern sollen.

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

    • milupo
    • 2. Februar 2025 um 12:02
    Zitat von Endor

    Ich sogar für sehr nützlich.

    War er ja auch, für alle die Benutzerskripte nutzen. Die Skripte müssen ja umgebaut werden, wenn nicht jetzt, dann wenn Fx 136 final wird.

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

    • milupo
    • 2. Februar 2025 um 10:45
    Zitat von bege

    Wofür ist dann in Zukunft dieses Thema gedacht?

    Das ist ein Sammelthread, wo du Fragen zu einem Skript stellen kannst. Zu dem einen Skript wird es keine 80 Antworten geben, sondern nur ein paar und du musst auch nicht diesen Sammelthread hier von Anfang bis Ende durchforschen, da es immer nur um dein aktuelles Problem geht. Der andere Thread, der mittlerweile geschlossen wurde, war im Grunde genommen auch als Sammelthread angelegt, obwohl es am Anfang vielleicht nicht gleich so aussah. Aber all diese Skripte da hatten eine Gemeinsamkeit: Es ging um die Umstellung von Inline-Eventhandlern auf Codes mit der Methode .addEventListener. Die Anzahl der Skripte war hier begrenzt, wenn auch der Thread sehr lang wurde. Ich weiß jetzt nicht mehr, ob da Probleme behandelt wurden, die nichts mit Inline-Eventhandlern zu tun hatten. Die hätte man auslagern sollen.

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 2. Februar 2025 um 09:53
    Zitat von omar1979

    und keine Ahnung, welche Erweiterungen das verhindern können..

    Da solltest du gar keine Erweiterung brauchen. Das sollte eine Funktion der Forum-Software bzw. des Forums sein. Wie hier im Forum die Funktion Dateianhänge. Unser Forum basiert allerdings auf der Software WoltLab Suite. Es könnte Beschränkungen geben, z. B. nur bestimmte Dateiformate oder bei der Größe einer Datei. Die sollte es aber dann auch bei anderen Browsern geben, da das vom Forum bzw. dessen Administrator festgelegt wird.

    Vielleicht kann Sören Hentzschel noch etwas dazu schreiben, er ist ja Forum-Administrator.

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 2. Februar 2025 um 00:36

    Erhältst du eine Fehlermeldung, wenn du Bilder hochladen willst? Offenbar kannst du auch Türkisch. Wie gehst du denn dann vor?

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 2. Februar 2025 um 00:30
    Zitat von omar1979

    ich weiss jetzt nicht ob der Link was nützt, da man sich registrieren muss.

    Doch, der Link nützt etwas. Ganz unten auf der Forumseite steht:

    Zitat

    Powered by vBulletin® Version 3.8.8 Beta 3

    Wenn man bedenkt, dass vBulletin 6 aktuell ist, ist es fast schon eine Frechheit auf einen anderen Browser zu verweisen. Es ist Aufgabe der Website-Entwickler sich darum zu kümmern und nicht die der Browsernutzer.

    Um welche Firefox-Erweiterungen geht es in diesem Zusammenhang?

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 1. Februar 2025 um 23:45
    Zitat von omar1979

    Also mir wurde das gesagt von einem der Forum-Mitarbeiter " Einige Plugins, die Sie auf Firefox installieren, können eingeschränkt sein, weil die vbulletin-Version alt ist. Bitte versuchen Sie es mit einem anderen Browser."

    Das liest sich etwas eigenartig. Ein Forumsmitarbeiter, ich nehme mal an, von diesem türkischen Forum, verweist darauf, dass die vBulletin-Version, also die Version der Forumssoftware, auf der das Forum läuft, veraltet ist. Dann würde ich erwarten, dass doch das Admin-Team dieses Forums endlich mal die Forumssoftware aktualisiert, statt auf einen anderen Browser zu verweisen.

    Hast du mal die URL von diesem türkischen Forum?


    Noch etwas. Welche „Plugins“ sollen das sein? Von vBulletin oder von Firefox? Oder sind eigentlich Erweiterungen gemeint und auch hier: von vBulletin oder Firefox? Doch alles etwas unklar.

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 1. Februar 2025 um 22:51
    Zitat von omar1979

    man muss zusätzlich noch was installieren..

    Ich habe mir die Erweiterung auch mal installiert. In deren Einstellungen muss man alles erst einrichten. Ich kenne die Erweiterung nicht, aber offensichtlich muss man erst das Paket für die Skriptsprache Python installieren und dann das verlinkte Python-Skript für die Installation von Open With herunterladen. Angeblich werden dann wohl nach der Ausführung des Installationsskripts alle bereits installierten Browser von der Erweiterung erkannt. Für eine Erstinstallation der Erweiterung erscheint mir das doch etwas kompliziert, zumal auf der SUMO-Seite nichts davon steht. Im Gegenteil, es steht da, dass die Erweiterung nicht mehr weiterentwickelt wird.

    Es ist also aus meiner Sicht besser, das Skript zu nutzen. Das nutzen hier auch Andere und wenn mal etwas nicht mehr funktioniert, wird dann hier gemeinsam nach einer Lösung gesucht.

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 1. Februar 2025 um 22:40
    Zitat von omar1979

    ich mach wohl irgendwas falsch..

    Was nutzt du denn hier? Skript oder Erweiterung?

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 1. Februar 2025 um 22:03

    Hier auch von mir noch zwei Bildschirmfotos:

    Link öffnen:

    Seite öffnen:

  • Script oder Erweiterung um bestimmte Links mit Rechtsklick in einem anderen Browser öffnen.

    • milupo
    • 1. Februar 2025 um 21:41
    Zitat von omar1979

    Danke für die Erweiterung.

    Das gibt es auch als Benutzerskript. Es legt die Einträge Seite öffnen mit … bzw. Link öffnen mit… im Kontextmenü an, mit Untereinträgen für die Browser.

    JavaScript
    // ==UserScript==
    // @name			OpenWith
    // @description		Fügt dem Kontextmenü ein Menü hinzu, zum Öffnen der aktuelle Seite und eines ausgewählten Links in einem anderen Browser.
    // @description		und eines ausgewählten Links in einem anderen Browser.
    // @version			1.2.1a  63+
    // @author			y2k
    // @include			main
    // @charset			UTF-8
    // @namespace		http://tabunfirefox.web.fc2.com/
    // @note			Anwendungssymbol anzeigen
    // @note			als .uc.js Script umgeschrieben
    // ==/UserScript==
    (function() {
    "use strict";
    /*
    	Vor Verwendung, Pfad auf eigene Umgebung ändern(\ wird durch \\ ersetzt)
    	Zum Übergeben von Argumenten, wie folgt vorgehen:
    	C:\\Program Files\\Internet Explorer\\iexplore.exe<>$1 Argument Argument
    	※ $1 wird in URL umgewandelt
    */
    const BrowserPath = {
    "Firefox":    "D:\\Programme\\firefox-103.0a-hsb\\firefox.exe",	
    "Chrome":  "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",
    "Edge":		  "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe",
    "Opera":	  "C:\\Program Files (x86)\\Opera\\Launcher.exe",	
    };
    
    const FlatMenu = false;
    
    const OpenWith = {
    	start: function() {
    		const cm = document.getElementById("contentAreaContextMenu");
    		cm.addEventListener("popupshowing", function(e) {
    			if (e.target == this) { OpenWith.onpopup(e); }
    		}, false);
    	},
    
    	createMenu: function() {
    		if (this.pageItem || this.linkItem) {
    			return;
    		}
    
    		const contextMenu = document.getElementById("contentAreaContextMenu");
    		const pageMenu = this.$C("menu", { id: "context-open-with-page", label: "Seite öffnen mit…" });
    		contextMenu.insertBefore(pageMenu, contextMenu.querySelector(":scope > #context-bookmarkpage, :scope > #context-savepage"));
    
    		const linkMenu = this.$C("menu", { id: "context-open-with-link", label: "Link öffnen mit…" });
    		contextMenu.insertBefore(linkMenu, contextMenu.querySelector(":scope > #context-sep-open"));
    
    		this.pageItem = this.createMenuItem(pageMenu, "openPage", FlatMenu? "Seite öffnen mit $1 ":"  Öffnen mit $1");
    		this.linkItem = this.createMenuItem(linkMenu, "openLink", FlatMenu? "Link öffnen mit $1 ":"  Öffnen mit $1");
    	},
    	
    	createMenuItem: function(menu, method, format) {
    		const frag = document.createDocumentFragment();
    		
    		let menuitem = [];
    		for (let i of Object.keys(BrowserPath)) {
    			const item = this.$C("menuitem", {
    				label:	format.replace("$1", i),
    				class:	"menuitem-iconic",
    				image:	"moz-icon:file:///" + BrowserPath[i].split("<>")[0] + "?size=16",
    				value:	JSON.stringify([ method, i ]),
    			});
    			item.addEventListener("command", this, false);
    
    			frag.appendChild(item);
    			menuitem[menuitem.length] = item;
    		}
    		
    		if (!FlatMenu) {
    			const menupopup = this.$C("menupopup");
    			menupopup.appendChild(frag);
    			menu.appendChild(menupopup);
    			menuitem = [ menu ];
    		}
    		else {
    			const parent = menu.parentNode;
    			parent.insertBefore(frag, menu);
    			parent.removeChild(menu);
    		}
    		
    		return menuitem;
    	},
    
    	$C: function(tag, attrs) {
    		const elem = document.createXULElement(tag);
    		if (attrs) {
    			for (let key of Object.keys(attrs))
    				elem.setAttribute(key, attrs[key]);
    		}
    		return elem;
    	},
    
    	onpopup: function(e) {
    		this.createMenu();
    		
    		const isHtml = /^(https?|file):/.test(gBrowser.currentURI.spec);
    		const pageItemHidden = !isHtml || gContextMenu.onLink || gContextMenu.onTextInput;
    		const linkItemHidden = !isHtml || !gContextMenu.onLink || gContextMenu.onTextInput;
    		
    		const pageItem = this.pageItem;
    		for (let i = 0, l = pageItem.length; i < l; i++) {
    			pageItem[i].hidden = pageItemHidden;
    		}
    		const linkItem = this.linkItem;
    		for (let i = 0, l = linkItem.length; i < l; i++) {
    			linkItem[i].hidden = linkItemHidden;
    		}
    	},
    
    	handleEvent: function(event) {
    		if (event.type === "command") {
    			const [ method, key ] = JSON.parse(event.originalTarget.getAttribute("value"));
    			const url = method === "openPage"? gBrowser.currentURI.spec: gContextMenu.linkURL;
    			this.launch(BrowserPath[key], url);
    		}
    	},
    	
    	launch: function(browserPath, openURL) {
    		let [ path, args ] = browserPath.split("<>");
    		if (args) {
    			args = args.split("^^").map(a => a.replace("$1", openURL));
    		} else {
    			args = [ openURL ];
    		}
    		
    		const file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsIFile);
    		file.initWithPath(path);
    		
    		const process = Cc['@mozilla.org/process/util;1'].createInstance(Ci.nsIProcess);
    		process.init(file);
    		process.run(false, args, args.length, {});
    	},
    };
    
    OpenWith.start();
    
    })();
    Alles anzeigen

    Zwischen den Zeilen 21 und 26 sind die Einträge mit den Pfaden zur EXE-Datei des jeweiligen Browsers. Passe die Pfade an deine Pfade an. Beachte dabei, dass Rückstriche immer doppelt sein müssen, insbesondere wenn du die Pfade einfach aus dem Windows-Explorer heraus kopierst. Windows verwendet einfache Rückstriche, die musst du dann verdoppeln, wie es oben zu sehen ist. Einfache Rückstriche sind in JavaScript nicht erlaubt.

  • userChromeShadow.css Code funktioniert nicht (mehr) in Nightly

    • milupo
    • 31. Januar 2025 um 18:45
    Zitat von Boersenfeger

    Ich hatte den Pfad aus dem TotalCommander kopiert. Da sind die / andersherum.

    Ich weiß jetzt nicht genau, wie es bei CSS ist, aber bei JavaScript kannst du auch Rückstriche verwenden, die müssen dann aber durch einen zweiten Rückstrich „maskiert“ werden. Also, am besten:

    Verzeichnis/Unterverzeichnis1/Unterverzeichnis 2

    aber es geht auch:

    Verzeichnis\\Unterverzeichnis1\\Unterverzeichnis2

  • userChromeShadow.css Code funktioniert nicht (mehr) in Nightly

    • milupo
    • 31. Januar 2025 um 18:05

    Hast du denn nun die die Rückstriche durch Schrägstriche im Pfad ausgetauscht?

  • addons_very_day_updatecheck.uc.js tut nicht mehr

    • milupo
    • 31. Januar 2025 um 17:39

    Ja, leider, ich weiß. Abr ich bin ziemlich sicher, dass moduleURI in esModuleURI geändert werden muss, bedingt durch die Umstellung von JSM auf ESM (.sys.mjs). Jetzt mit Fx 136 ist JSM ja vollständig weggefallen, siehe diesen Bugreport:

    1881888 - Remove support for JSMs
    RESOLVED (arai.unmht) in Core - XPConnect. Last updated 2025-01-23.
    bugzilla.mozilla.org

    Den Bugreport hat Sören erst vor kurzem in einem seiner Beiträge erwähnt.

    In Beitrag #6 hat Sören auf die automatische URL-Kodierung der geschweiften Klammern hingewiesen, die mit der Funktion decodeURI() wieder dekodiert werden müssen. Wenn ich in die Browserkonsole sehe, werden mir für Zeile 56 die dortigen geschweiften Klammern ebenfalls als kodiert angezeigt: %7B für die geöffnete Klammer und %7D für die geschlossene Klammer. Aber mit decodeURI konnte ich da noch nichts erreichen.

Unterstütze uns!

Jährlich (2025)

92,9 %

92,9% (604,17 von 650 EUR)

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