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

Beiträge von aborix

  • Background Task

    • aborix
    • 7. November 2018 um 20:00

    Das Löschen des Skript-Caches während der Sitzung lässt Firefox nicht zu (jedenfalls bei Windows), da kommt eine Fehlermeldung vom Betriebssystem.

    Wenn in der userChrome.js am Anfang diese Zeile steht:

    Code
    userChrome.ignoreCache = true;

    dann braucht man den Skript-Cache aber gar nicht zu löschen, es genügt ein normaler Neustart. Viel Skripte benötigen dann nicht einmal einen Neustart, sondern es genügt bereits ein neues Fenster, damit Änderungen übernommen werden. Skripte, die eine CustomizableUI-Funktion enthalten, benötigen auf jeden Fall einen Neustart. Das betrifft die meisten Skripte für Buttons (CustomizableUI.createWidget) und zusätzliche Leisten (CustomizableUI.registerArea).

  • Bildschirmfoto Button

    • aborix
    • 6. November 2018 um 18:29

    Im Skript aus #21 ersetzen wir Zeile 22:

    Code
    setTimeout(function() {

    durch

    Code
    content.setTimeout(function() {
  • Lesezeichen als json Datei mit Befehl sichern

    • aborix
    • 6. November 2018 um 09:40

    Das ist die AutoCofig-Datei:

    Code
    //  AutoConfig
    
    
    const Cu = Components.utils;
    
    
    try {
    
    
      Cu.import("resource://gre/modules/Services.jsm");
      Cu.import("resource://gre/modules/osfile.jsm");
      Cu.import("resource://gre/modules/BookmarkJSONUtils.jsm");
      Cu.import("resource://gre/modules/Timer.jsm");
    
    
      const path = "C:\\Users\\BenutzerA\\Downloads\\bookmarks.json";
    
    
      let importExportBookmarks = {
    
    
        init: function() {
          Services.obs.addObserver(this, "final-ui-startup", false);
        },
    
    
        observe: function(aSubject, aTopic, aData) {
          switch (aTopic) {
            case "final-ui-startup":
              BookmarkJSONUtils.importFromFile(path, {replace: true})
                .then(
                  () => OS.File.remove(path),
                  () =>
                    setTimeout(() => {
                      let window = Services.wm.getMostRecentWindow('navigator:browser');
                      window.alert("Das Importieren der Lesezeichen ist fehlgeschlagen.");
                    }, 1000)
                );
              Services.obs.removeObserver(this, "final-ui-startup");
              Services.obs.addObserver(this, "quit-application-requested", false);
              break;
    
    
            case "quit-application-requested":
              BookmarkJSONUtils.exportToFile(path);
          };
        }
      };
    
    
      importExportBookmarks.init();
    
    
    } catch(e) {
      Cu.reportError(e);
    };
    Alles anzeigen

    In Zeile 12 steht der Pfad zur json-Datei. Wenn das Importieren klappt, wird die Datei danach gelöscht, andernfalls erscheint eine Fehlermeldung. Wenn das Exportieren nicht funktioniert, kommt keine Fehlermeldung; daran arbeite ich noch.

    Zum Ausführen von AutoConfig befindet sich im Installationsordner im Unterordner \defaults\pref eine js-Datei, die den Namen der AutoConfig-Datei enthält. Wenn du Fx 63 verwendest, muss dort auch diese Zeile stehen:

    Code
    pref("general.config.sandbox_enabled", false);

    Bei Fx 60esr ist das nicht notwendig.

  • Lesezeichen als json Datei mit Befehl sichern

    • aborix
    • 3. November 2018 um 21:27
    Zitat von sam2008


    Vielleicht hat jemand Lösung dass man über .cfg oder .css Datei machen kann.

    .cfg: Meist du AutoConfig ?
    Das ist machbar.

    Zum Importieren haben wir bereits ein Skript:
    https://www.camp-firefox.de/forum/viewtopi…094699#p1094699

  • Doppelklick "Neuer Tab" kein Cursor im Adressfeld

    • aborix
    • 2. November 2018 um 18:09

    Ersetze die Zeile

    Code
    gBrowser.selectedTab = gBrowser.addWebTab('about:blank');

    durch

    Code
    openTrustedLinkIn('about:blank', 'tab');
  • FF ESR 60.2.0 mit zentraler Config.js Datei

    • aborix
    • 30. Oktober 2018 um 21:39

    Ich habe, zumindest teilweise, herausgefunden, was geändert werden muss.

    Die Funktionen isBookmarked und getBookmarkIdsForURI des Nav-Bookmarks-Service gibt es nicht mehr. Das Modul Bookmarks.jsm enthält Funktionen, mit denen man Funktionen des Nav-Bookmarks-Service ersetzen kann. Ich habe das im Skript für die beiden nicht mehr vorhandenen Funktionen und zum Teil auch für das Einfügen und Entfernen von Lesezeichen und Ordnern durchgeführt. Da die Funktionen asynchron sind, wird der Operator await benötigt. Der funktioniert seinerseits nur in asynchronen Funktionen und darum habe ich das ganze Skript in eine solche eingehüllt. Möglicherweise werden noch weitere Nav-Bookmarks-Service-Funktionen entfernt werden und müssen dann ersetzt werden. Für Bookmarks.jsm habe ich als aktuelle Dokumentation nur den Quelltext gefunden:
    https://dxr.mozilla.org/mozilla-esr60/…s/Bookmarks.jsm

    Außerdem gibt es das Objekt Components.interfaces.nsILocalFile nicht mehr und es muss durch Components.interfaces.nsIFile ersetzt werden. Das habe ich ebenfalls gemacht.

    Teste bitte:

    CSS
    Components.utils.reportError('global_settings.js');
    
    
    // CENIT FireFox ESR Anpassungen
    // 2016.07.01 Version 1.0 erstellt
    // 2017.12.14 Version 1.1 erstellt - uBlock Filtereinstellungen erweitert
    
    
    (async function() {
    
    
    // URI_PATH Variable ermitteln
    <!--#if expr="%{REQUEST_URI} =~ m#(^/.*)(/.*\.js)#i && $1 =~ /(.+)/" -->
      <!--#set var="URI_PATH" value="$0" -->
    <!--#endif -->
    
    
    // Benoetigte Components hinzufuegen
    
    
    Components.utils.import("resource://gre/modules/FileUtils.jsm");
    Components.utils.import("resource://gre/modules/PlacesUtils.jsm");
    Components.utils.import("resource://gre/modules/Services.jsm");
    Components.utils.import("resource://gre/modules/NetUtil.jsm");
    Components.utils.import("resource://gre/modules/AddonManager.jsm");
    
    
    Components.utils.import("resource://gre/modules/Bookmarks.jsm");
    
    
    // uBlock AddOn installieren
    AddonManager.getInstallForURL('https://<!--#echo var="HTTP_HOST" --><!--#echo var="URI_PATH" -->/uBlock0@raymondhill.net.xpi', function(aInstall) { aInstall.install();}, "application/x-xpinstall");
    
    
    // Bookmarks Klassenvariablen hinzufuegen
    
    
    var navBook = Components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getService(Components.interfaces.nsINavBookmarksService);
    var ios = Components.classes["@mozilla.org/network/io-service;1"] .getService(Components.interfaces.nsIIOService);
    var histSer = Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsINavHistoryService);
    var fos = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);
    
    
    // Bestehenden Bookmarks Ordner finden und loeschen (My Title)
    var options = histSer.getNewQueryOptions();
    var query = histSer.getNewQuery();
    var toolbarFolder = navBook.bookmarksMenuFolder;
    query.setFolders([toolbarFolder], 1);
    var result = histSer.executeQuery(query, options);
    var rootNode = result.root;
    rootNode.containerOpen = true;
    // iterate over the immediate children of this folder.
    for (var i = 0; i < rootNode.childCount; i ++) {
    
    
    
    
              //alert(i);
               var node = rootNode.getChild(i);
               //alert(node.title + " "  + node.itemId);
               if (node.title == "CENIT AG") {
               var Torem = node.itemId;
               var childFolder = node.itemId;
               //alert("Folder ID = " + childFolder);
                  navBook.removeItem(Torem);
    
    
    }
    
    
    //else {
    //alert("Folder Does Exsists and Place Holder Not There");
    //}
    
    
    }
    
    
    //End of finding folder
    // close a container after using it!
    rootNode.containerOpen = false;
    
    
    //Looks to see if the place holder exsists and if not adds placeholder.
    
    
    /*
    
    
    var uri = ios.newURI("http://PlaceHolder.com/", null, null);
    if (!navBook.isBookmarked(uri)) {
    //alert("Alert LPO");
    var FolderId = navBook.createFolder(navBook.bookmarksMenuFolder, "CENIT AG", 0);
    var uri11 = Services.io.newURI("http://PlaceHolder.com", null, null);
    //alert("Putting in URL");
    navBook.insertBookmark(FolderId, uri11, 11, "Place Holder");
    }
    
    
    */
    
    
    var bookmark = await Bookmarks.fetch({url: "http://PlaceHolder.com/"});
    
    
    if (!bookmark) {
      var folderInfo = {
        parentGuid: Bookmarks.menuGuid,
        type: Bookmarks.TYPE_FOLDER,
        title: "CENIT AG",
        index: 0
      };
      var folder = await Bookmarks.insert(folderInfo);
      var bookmarkInfo = {
        parentGuid: folder.guid,
        type: Bookmarks.TYPE_BOOKMARK,
        url: "http://PlaceHolder.com/",
        title: "Place Holder"
      };
      bookmark = await Bookmarks.insert(bookmarkInfo);
    };
    
    
    /*
    
    
    //PlaceHolder bookmark ID = BId var
    //alert("Alert DFG");
    var BId = navBook.getBookmarkIdsForURI(uri, {});
    //alert(BId);
    
    
    //FId is the returned value from the get folder ID using the bookmark ID.
    //alert("Alert DRU");
    try {
    
    
         var FId = navBook.getFolderIdForItem(BId);
         //alert("Alert ADM");
         } catch (e) {
           //alert("Alert FGH");
         }
    
    
    //Remove Folder based on Folder Id number
    
    
    try {
    
    
        navBook.removeItem(FId);
        //alert("Alert BQP");
        } catch (e) {
        //alert("Alert KGP");
        }
    
    
    */
    
    
    //Remove folder
    var folderGuid = bookmark.parentGuid;
    Bookmarks.remove(folderGuid);
    
    
    var FolderId = navBook.createFolder(navBook.bookmarksMenuFolder, "CENIT AG", 0);
    
    
    //Add bookmarks
    var uri1 = Services.io.newURI("http://www.cenit.com", null, null);
    var uri2 = Services.io.newURI("https://secure.cenit.com", null, null);
    var uri3 = Services.io.newURI("https://support.cenit.com", null, null);
    var uri4 = Services.io.newURI("http://helpdesk.de.cenit-group.com", null, null);
    var uri5 = Services.io.newURI("https://intranet.de.cenit-group.com", null, null);
    var uri6 = Services.io.newURI("https://myhr.cenit.com", null, null);
    var uri7 = Services.io.newURI("https://www.cenit.com/tkconf", null, null);
    var uri8 = Services.io.newURI("https://webmail.cenit.com", null, null);
    var uri9 = Services.io.newURI("https://xfer.cenit.com", null, null);
    var uri10 = Services.io.newURI("https://servicestore.de.cenit-group.com", null, null);
    var uri11 = Services.io.newURI("https://dokuwiki.de.cenit-group.com/doku.php?id=ito:start", null, null);
    var uri12 = Services.io.newURI("https://jam12.sapjam.com/c/azl7kd5zr.accounts.ondemand.com/auth/status", null, null);
    
    
    //Add bookmark to newly created folder
    navBook.insertBookmark(FolderId, uri1, 0, "CENIT AG Website");
    navBook.insertBookmark(FolderId, uri2, 1, "CENIT AG Secure Access");
    navBook.insertBookmark(FolderId, uri3, 3, "Helpdesk (extern)");
    navBook.insertBookmark(FolderId, uri4, 4, "Helpdesk (intern)");
    navBook.insertBookmark(FolderId, uri5, 5, "Intranet (intern)");
    navBook.insertBookmark(FolderId, uri6, 6, "MyHR (intern)");
    navBook.insertBookmark(FolderId, uri7, 7, "Telefonkonferenzserver");
    navBook.insertBookmark(FolderId, uri8, 8, "Webmail");
    navBook.insertBookmark(FolderId, uri9, 9, "XFER");
    navBook.insertBookmark(FolderId, uri10, 10, "ServiceStore");
    navBook.insertBookmark(FolderId, uri11, 11, "ITO Tipps");
    navBook.insertBookmark(FolderId, uri12, 12, "CENIT ONE");
    
    
    // Userchrome und Usercontent Dateien schreiben
    
    
    var profileDir = Services.dirsvc.get("ProfD", Components.interfaces.nsIFile);
    profileDir.append("chrome");
    
    
    if( !profileDir.exists() || !profileDir.isDirectory() ) {
     profileDir.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0777);
    };
    
    
    profileDir.append("userChrome.css");
    fos.init(profileDir, -1, -1, false);
    var css1 = "#PanelUI-customize {visibility:collapse!important;}\r\nmenu[label=\x22Tools\x22] menuitem[label=\x22Sync Now\x22],#PanelUI-footer-fxa,#toolbar-context-menu,#sync-setup-appmenu,#sync-button,#sync-syncnowitem-appmenu,#PanelUI-fxa-status,#sync-setup,#sync-status-button,#BrowserPreferences radio[pane=\x22paneSync\x22] {display:none!important;}";
    fos.write(css1, css1.length);
    fos.close();
    
    
    var profileDir = Services.dirsvc.get("ProfD", Components.interfaces.nsIFile);
    profileDir.append("chrome");
    profileDir.append("userContent.css");
    
    
    
    
    fos.init(profileDir, -1, -1, false);
    var css10 = "#category-sync {display:none !important;}";
    fos.write(css10, css10.length);
    fos.close();
    
    
    try {
    
    
    function importExceptions(Exception) {
      var uri = Services.io.newURI([Exception], null, null);
      Services.perms.add(uri, "popup", 1);
      Services.perms.add(uri, "cookie", 1);
      Services.perms.add(uri, "plugins", 1);
      // Services.perms.add(uri, "install", 1);
    }
    
    
    importExceptions("http://www.cenit.com");
    importExceptions("http://www.cenit.de");
    
    
    importExceptions("https://www.cenit.de");
    importExceptions("https://extranet.cenit.de");
    
    
    importExceptions("https://www.cenit.com");
    importExceptions("https://alo5.cenit.com");
    importExceptions("https://myhr.cenit.com");
    importExceptions("https://secure.cenit.com");
    importExceptions("https://support.cenit.com");
    importExceptions("https://webmail.cenit.com");
    importExceptions("https://xfer.cenit.com");
    
    
    importExceptions("http://intranet.de.cenit-group.com");
    importExceptions("http://helpdesk.de.cenit-group.com");
    
    
    importExceptions("https://intranet.de.cenit-group.com");
    
    
    importExceptions("https://servicestore.de.cenit-group.com");
    
    
    } catch(e) {
    Components.utils.reportError(e);
    };
    
    
    // Plugins im Browser anzeigen
    clearPref("plugin.disable_full_page_plugin_for_types");
    
    
    // Auto Update deaktivieren
    lockPref("app.update.enabled", false);
    lockPref("app.update.auto", false);
    lockPref("app.update.mode", 0);
    lockPref("app.update.service.enabled", false);
    
    
    // Extensions Auto Update deaktivieren
    lockPref("extensions.update.enabled", false);
    
    
    // Deaktiviert die Kompatbilitätsprüfung der Add-ons
    clearPref("extensions.lastAppVersion");
    
    
    //Deaktiviert das Plugin Checking
    lockPref("plugins.hide_infobar_for_outdated_plugin", true);
    clearPref("plugins.update.url");
    
    
    // Do Not Track senden
    lockPref("privacy.donottrackheader.enabled", true);
    lockPref("Privacy.donottrackheader.value", 1);
    
    
    // Abfrage fuer FireFox als Standardbrowser deaktivieren
    lockPref("browser.shell.checkDefaultBrowser", false);
    lockPref("pref.general.disable_button.default_browser", true);
    
    
    // Internetauftritt als Startseite - Über Softwarepaket als Vorschlag
    // lockPref("browser.startup.homepage", "http://www.cenit.com");
    // lockPref("browser.startup.page", 1);
    
    
    // Was ist neu ausblenden
    lockPref("browser.startup.homepage_override.mstone","ignore");
    
    
    // Lernen Sie ihre Rechte kennen ausblenden
    lockPref("browser.rights.3.shown", true);
    
    
    // Willkommen Seite ausblenden
    lockPref("noWelcomePage", true);
    
    
    // Health Reporter deaktivieren
    lockPref("datareporting.healthreport.service.enabled", false);
    lockPref("datareporting.healthreport.uploadEnabled", false);
    
    
    // Datenupload (Telemetry/FHR) zu Mozilla deaktivieren
    lockPref("datareporting.policy.dataSubmissionEnabled", false);
    
    
    // Absturzmeldungen deaktivieren
    lockPref("toolkit.crashreporter.enabled", false);
    Components.classes["@mozilla.org/toolkit/crash-reporter;1"].getService(Components.interfaces.nsICrashReporter).submitReports = false;
    
    
    // Firefox Smart & Standard Bookmarks entfernen
    lockPref("removeSmartBookmarks", true);
    lockPref("removeDefaultBookmarks", true);
    
    
    // Webseiten teilen deaktivieren
    lockPref("disableSharePage", true);
    
    
    // Reset von Firefox verhindern
    lockPref("disableResetFirefox", true);
    
    
    // Google als Standardsuche
    pref("browser.search.order.1", "Google");
    
    
    // Deaktiviert den internen PDF-Viewer
    pref("pdfjs.disabled", true);
    
    
    // Sync Funktion deaktivieren
    lockPref("services.sync.enabled", false);
    lockPref("browser.migrated-sync-button", false);
    
    
    lockPref("services.sync.serverURL", "");
    lockPref("services.sync.clusterURL", "");
    lockPref("services.sync.jpake.serverURL", "");
    
    
    // Netzwerkproxy sperren
    pref("network.proxy.type", 5);
    
    
    // Entfernte DNS abfrage sperren
    lockPref("network.proxy.socks_remote_dns", false);
    
    
    // Download Dir nicht verwenden
    lockPref("browser.download.useDownloadDir", false);
    
    
    // Hello / WebRTC deaktivieren
    lockPref("loop.enabled", false);
    lockPref("media.peerconnection.enabled", false);
    
    
    // Pocket deaktivieren
    lockPref("browser.pocket.enabled", false);
    lockPref("extensions.pocket.enabled", false);
    
    
    // Heartbeat deaktivieren
    lockPref("browser.selfsupport.url", "https://www.cenit.com");
    
    
    // Snippets deaktivieren
    lockPref("browser.aboutHomeSnippets.updateUrl", "");
    
    
    // Pocket deaktivieren
    lockPref("browser.newtabpage.enabled", false);
    
    
    // Beacon deaktivieren
    lockPref("beacon.enabled", true);
    
    
    lockPref("browser.search.geoip.timeout", 1);
    lockPref("geo.enabled", false);
    lockPref("geo.wifi.uri", "");
    
    
    lockPref("devtools.webide.autoinstallADBHelper", false);
    lockPref("devtools.webide.autoinstallFxdtAdapters", false);
    lockPref("devtools.webide.enabled", false);
    
    
    lockPref("dom.enable_performance", false);
    lockPref("dom.enable_resource_timing", false);
    lockPref("dom.enable_user_timing", false);
    
    
    lockPref("extensions.installDistroAddons", true);
    lockPref("extensions.enabledScopes", 15);
    lockPref("extensions.autoDisableScopes", 0);
    lockPref("extensions.shownSelectionUI", true);
    
    
    lockPref("extensions.getAddons.cache.enabled", false);
    lockPref("network.http.speculative-parallel-limit", 0);
    lockPref("security.tls.version.min", 1);
    
    
    // Windows Zertifikatstore benutzen
    lockPref("security.enterprise_roots.enabled", true);
    
    
    
    
    // uBlock Einstellungen
    lockPref("extensions.ublock0.adminSettings","{\"timeStamp\":1513183043901,\"version\":\"1.14.20\",\"userSettings\":{\"advancedUserEnabled\":false,\"alwaysDetachLogger\":false,\"autoUpdate\":true,\"cloudStorageEnabled\":false,\"collapseBlocked\":true,\"colorBlindFriendly\":false,\"contextMenuEnabled\":true,\"dynamicFilteringEnabled\":false,\"externalLists\":[],\"firewallPaneMinimized\":true,\"hyperlinkAuditingDisabled\":true,\"ignoreGenericCosmeticFilters\":false,\"largeMediaSize\":50,\"parseAllABPHideFilters\":true,\"prefetchingDisabled\":true,\"requestLogMaxEntries\":1000,\"showIconBadge\":true,\"tooltipsDisabled\":false,\"webrtcIPAddressHidden\":false},\"selectedFilterLists\":[\"user-filters\",\"assets.json\",\"public_suffix_list.dat\",\"ublock-resources\",\"ublock-filters\",\"ublock-badware\",\"ublock-privacy\",\"ublock-abuse\",\"ublock-unbreak\",\"easylist\",\"easyprivacy\",\"malware-0\",\"malware-1\",\"plowe-0\",\"DEU-0\"],\"hiddenSettingsString\":\"assetFetchTimeout 30\\nautoUpdateAssetFetchPeriod 120\\nautoUpdatePeriod 7\\nignoreRedirectFilters false\\nignoreScriptInjectFilters false\\nmanualUpdateAssetFetchPeriod 2000\\npopupFontSize unset\\nsuspendTabsUntilReady false\\nuserResourcesLocation unset\",\"netWhitelist\":\"cenit.com\\nde.cenit-group.com\",\"dynamicFilteringString\":\"behind-the-scene * 3p-frame noop\\nbehind-the-scene * 3p noop\",\"urlFilteringString\":\"\",\"hostnameSwitchesString\":\"\",\"userFilters\":\"\",\"filterLists\":{\"assets/user/filters.txt\":{\"off\":false},\"assets.json\":{\"off\":false},\"assets/thirdparties/publicsuffix.org/list/effective_tld_names.dat\":{\"off\":false},\"assets/ublock/resources.txt\":{\"off\":false},\"assets/ublock/filters.txt\":{\"off\":false},\"assets/ublock/badware.txt\":{\"off\":false},\"assets/ublock/privacy.txt\":{\"off\":false},\"ublock-abuse\":{\"off\":false},\"assets/ublock/unbreak.txt\":{\"off\":false},\"assets/thirdparties/easylist-downloads.adblockplus.org/easylist.txt\":{\"off\":false},\"assets/thirdparties/easylist-downloads.adblockplus.org/easyprivacy.txt\":{\"off\":false},\"assets/thirdparties/www.malwaredomainlist.com/hostslist/hosts.txt\":{\"off\":false},\"assets/thirdparties/mirror1.malwaredomains.com/files/justdomains\":{\"off\":false},\"assets/thirdparties/pgl.yoyo.org/as/serverlist\":{\"off\":false},\"https://easylist-downloads.adblockplus.org/easylistgermany.txt\":{\"off\":false},\"assets/ublock/experimental.txt\":{\"off\":true}}}");
    
    
    })();
    Alles anzeigen
  • FF ESR 60.2.0 mit zentraler Config.js Datei

    • aborix
    • 29. Oktober 2018 um 00:40

    Die Verarbeitung eines Skripts wird beim Auftreten eines Fehlers oft abgebrochen.
    Bei Zeile 66:

    Code
    if (!navBook.isBookmarked(uri)) {


    geschieht das hier anscheinend und darum werden die weiteren Anweisungen nicht ausgeführt. Die Funktion isBookmarked gibt es nicht mehr.
    Von Fx 52 bis Fx 60 hat sich u.a. in den JavaScript-Funktionen einiges geändert, was nun im Skript zu berücksichtigen ist.

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

    • aborix
    • 28. Oktober 2018 um 17:58

    Zum Öffnen von Profil- und Chrome-Ordner mittels Tastenkombination kann ich als Alternative zwei selbst gegriffelte Skripte anbieten:

    Code
    (function() {
      if (location != 'chrome://browser/content/browser.xul')
        return;
      let key = document.createElement('key');
      key.id = 'key_openProfileDirectory';
      key.setAttribute('key', 'P');
      key.setAttribute('modifiers', 'alt');
      key.setAttribute('oncommand', 'Services.dirsvc.get("ProfD", Ci.nsIFile).launch()');
      document.getElementById('mainKeyset').appendChild(key);
    })();
    
    (function() {
      if (location != 'chrome://browser/content/browser.xul')
        return;
      let key = document.createElement('key');
      key.id = 'key_openChromeeDirectory';
      key.setAttribute('key', 'C');
      key.setAttribute('modifiers', 'alt');
      key.setAttribute('oncommand', 'Services.dirsvc.get("UChrm", Ci.nsIFile).launch()');
      document.getElementById('mainKeyset').appendChild(key);
    })();
    Alles anzeigen
  • Ersatz für clear search addon gesucht - 57 kompatibel

    • aborix
    • 27. Oktober 2018 um 16:30

    Für Fx 64:

    Code
    setTimeout(function() {
       if (!window.BrowserSearch)
          return;
       var searchbar = BrowserSearch.searchBar;
       if (!searchbar)
          return; 
       var textbox = searchbar.getElementsByClassName('searchbar-textbox')[0];
       var input = document.getAnonymousElementByAttribute(textbox, 'anonid', 'input');
       var tId;
       input.addEventListener('input', function() {
          clearTimeout(tId);
          tId = setTimeout(function() {
             input.value = '';
             document.getElementById('PopupSearchAutoComplete').hidePopup();
          }, 5000);
       });
    }, 0);
    Alles anzeigen
  • Ersatz für clear search addon gesucht - 57 kompatibel

    • aborix
    • 27. Oktober 2018 um 07:47

    Das Skript funktioniert bei mir in Fx 63 unter Windows 7.

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

    • aborix
    • 26. Oktober 2018 um 22:12

    Ah ja, da müssen wir etwas mehr ändern:

    Code
    // ==Userscript==
    // @name Open Chrome Directory
    // @include *
    // ==/Userscript==
    
    
    (function(win){
        Components.utils.import("resource://gre/modules/Services.jsm");
    
    
        function openChromeDirectory() {
          // Get the chrome directory.
          let currUChrm = Services.dirsvc.get("UChrm", Ci.nsIFile);
          let chromeDir = currUChrm.path;
    
    
          // Show the chrome directory.
          let nsLocalFile = Components.Constructor("@mozilla.org/file/local;1","nsIFile", "initWithPath");
          new nsLocalFile(chromeDir).reveal();
        }
    
    
        if (typeof win.openChromeDirectory == 'undefined') {
            win.openChromeDirectory = openChromeDirectory;
            win.addEventListener('keydown', function(e) {
                if (e.altKey == true && e.keyCode == 67) {
                    e.preventDefault();
                    openChromeDirectory();
                }
            }, false);
        }
    
    
    })(window);
    Alles anzeigen
  • userChrome.js Scripte für den Fuchs (Diskussion)

    • aborix
    • 26. Oktober 2018 um 21:34
    Zitat von edvoldi


    Hallo,
    ich benutze dieses Script um per Tastaturkürzel auf den Profilordner zu zugreifen.
    [...]
    was muss geändert werden damit es auch mit dem Chrome-Ordner funktioniert?

    ungetestet:
    In Zeile 11 "ProfD" durch "UChrm" ersetzen müsste reichen.

  • Firefox 63.0: Tabs speichern und beenden / Fenster und Tabs der letzten Sitzung anzeigen

    • aborix
    • 26. Oktober 2018 um 21:22

    Wenn schon eine ältere Version, dann besser Fx 60.3.0esr, denn dieser hat keine offenen Sicherheitslücken.

    Fx 60.3.0esr Download

  • Uhr+Datum-in-Titlebar.uc.js

    • aborix
    • 26. Oktober 2018 um 20:40

    Gerne. :)

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

    • aborix
    • 26. Oktober 2018 um 20:00
    Zitat von edvoldi


    Hallo aborix,
    was muss man ändern damit auch in Thunderbird ein Button erstellt wird.
    Kannst Du dazu etwas sagen?

    Nein, ich verwende Thunderbird weitgehend unverändert, jedenfalls ohne Erweiterungen und Skripte. Vielleicht kann jemand anders etwas dazu sagen.

  • Uhr+Datum-in-Titlebar.uc.js

    • aborix
    • 25. Oktober 2018 um 20:43

    Da der Button nicht eingetragen und auch nicht zu sehen ist, wird er anscheinend erst gar nicht erzeugt. Was sagt die Browserkonsole?

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

    • aborix
    • 25. Oktober 2018 um 20:26

    Was mir auffällt: Bei den funktionierenden Skripten wird der Button mit CustomizableUI.createWidget erzeugt, bei den nicht funktionierenden nicht. Also...

  • Uhr+Datum-in-Titlebar.uc.js

    • aborix
    • 25. Oktober 2018 um 15:38
    Zitat von milupo


    Muss doch nochmal auf browsertoolbox.uc.js eingehen. Es klappt bei mir im obersorbischen Firefox. Im niedersorbischen Firefox nicht, da erscheint nicht einmal das Symbol.

    Gibt es dazu Meldungen in der Browserkonsole?
    Und: Der Wert von browser.uiCustomization.state ist ein langer String. Enthält dieser den String "browser-toolbox-button" ?

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

    • aborix
    • 25. Oktober 2018 um 07:31

    Dieses funktioniert:
    https://www.camp-firefox.de/forum/viewtopi…093009#p1093009

  • Uhr+Datum-in-Titlebar.uc.js

    • aborix
    • 24. Oktober 2018 um 21:59

    Wenn man devtools.debugger.prompt-connection auf false setzt, kann man mit einem einfacheren Skript einen Button für die Browser-Werkzeuge haben. Es funktioniert bei mir in Fx 63:

    Code
    //  browsertoolbox.uc.js
    
    
    (function() {
    	if (location != 'chrome://browser/content/browser.xul')
    		return;
    
    
    	try {
    		CustomizableUI.createWidget({
    			id: 'browser-toolbox-button',
    			defaultArea: CustomizableUI.AREA_NAVBAR,
    			label: 'Browser-Werkzeuge',
    			tooltiptext: 'Browser-Werkzeuge',
    			onCommand: onCommand,
    			onCreated: function(button) {
    				button.style.listStyleImage = 'url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAdUlEQVQokZVSwRHAIAgLPYfoXs7RCTpG53Avt7APrhaFU8gLMEEJAkEQgFbc7IxkVjt0r6Sp7VIVITumBpKt00FA2ThmjXzkfMMWO8EZFSj8LrUyjsG9b9DaJXq+qAIVxEUxtLHpaXE95dj1NcK2rmbwaGJ4Af0tIg00j/6iAAAAAElFTkSuQmCC)';
    			}
    		});
    	} catch(e) {
    		return;
    	};
    
    
    	function onCommand(event) {
    		var document = event.target.ownerDocument;
    		if (!document.getElementById('menu_browserToolbox')) {
    			let { require } = Cu.import("resource://devtools/shared/Loader.jsm", {});
    			require("devtools/client/framework/devtools-browser");
    		};
    		document.getElementById('menu_browserToolbox').click();
    	};
    
    
    })();
    Alles anzeigen

Unterstütze uns!

Jährlich (2025)

101,9 %

101,9% (662,48 von 650 EUR)

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