Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
firefox [2010/07/24 20:42]
greebo
firefox [2014/01/30 10:25]
zagi [Speeding up Firefox]
Line 1: Line 1:
 ====== Firefox ====== ====== Firefox ======
  
-[[firefox addons]]\\+[[firefox:addons]]\\
 [[greasemonkey]]\\ [[greasemonkey]]\\
-[[firefox#user.js|user.js]]\\ 
 [[firefox#about_url|about_url]]\\ [[firefox#about_url|about_url]]\\
-[[firefox#cpu optimized builds|Firefox CPU optimized builds]]+[[firefox#cpu optimized builds|Firefox CPU optimized builds]]\\ 
 +Optimized Firefox [[firefox:user.js|user configuration file]]\\
  
-=== Firefox config optimizations === 
-http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9020880 
  
-=== Firefox hardware acceleration ==+=== FIX Crashing X-window with ATI drivers while moving toolbar icons ==
-http://www.basschouten.com/blog1.php/2010/03/02/presenting-direct2d-hardware-acceleratio+
  
-=== user.js === +nglayout.enable_drag_images false
-[[http://kb.mozillazine.org/About:config_entries|Mozillazine config entries explained]]+
  
-user.js file is located in your Firefox profile folder: 
  
-In Windows XP, the profile folder is +=== Move disk cache onto RAMdisk ===
-\Documents and Settings\<username>\Application Data\Mozilla\Firefox\Profiles\<profile ID>.default\+
  
-In Windows Vista, this folder is +use tmpfs in linux
-\Users\<username>\AppData\Roaming\Mozilla\Firefox\Profiles\<profile ID>.default\+
  
-Note that Application Data and AppData are hidden folders by default, so they may not show up unless you force Explorer to show hidden objects. (Open the Control Panel, double-click Folder Options, select the View tab, select "Show hidden files and folders" and click OK.)+add to /etc/fstab:
  
-In Mac OS X, the profile folder is +  tmpfs /mnt/ramdisk tmpfs size=520M,noatime,mode=0777           0
-<username>/Library/Application Support/Firefox/Profiles/<profile ID>.default/+
  
-and in Linux it's +use rmdisk in Windows http://www.ltr-data.se/opencode.html/#ImDisk
-~/.mozilla/firefox/<profile ID>.default/+
  
-= Make Firefox 4.0beta (Minefield) work with "incompatibleplugins =+imdisk.exe -a -s 200M -m R: -S 4096 -p "/fs:exFAT /q /y"
  
-user_pref("extensions.checkCompatibility.4.0b", false);+http://www.softperfect.com/products/ramdisk/
  
-(for release version use "extensions.checkCompatibility.4.0")+in about:config add
  
 +  browser.cache.disk.parent_directory  R:\
 +  browser.cache.disk.capacity 190000
  
-<code javascript> 
-  # no blinking text 
-  user_pref("browser.blink_allowed", false); 
-  # 
-  //  
-  user_pref("network.http.pipelining", true);  
-  user_pref("network.http.proxy.pipelining", true);  
-  user_pref("network.http.pipelining.maxrequests", 8);  
-  user_pref("network.http.pipelining.firstrequest", true); 
-  user_pref("network.http.request.max-start-delay", 0);  
-  user_pref("network.http.max-connections", 48);  
-  user_pref("network.http.max-connections-per-server", 16); 
-  user_pref("network.http.max-persistent-connections-per-proxy", 12);  
-  user_pref("network.http.max-persistent-connections-per-server", 8);  
-  // keep-alive timeout. default is 115 
-  user_pref("network.http.keep-alive.timeout", 30);  
-  // Enable prefetching 
-  user_pref("network.prefetch-next", true); 
-  // Disable offline mode 
-  user_pref("browser.offline-apps.notify", false); 
-  # 
-  user_pref("network.ftp.idleConnectionTimeout", 60); 
-  // Just to make sure, disable windows shell: protocol 
-  user_pref("network.protocol-handler.external.shell", false); 
-  # 
-  // DNS  
-  user_pref("network.dnsCacheEntries", 1024); 
-  user_pref("network.dnsCacheExpiration", 300); 
-  # 
-  // Remove painting delay when loading pages. Default is 250  
-  user_pref("nglayout.initialpaint.delay", 0); 
-  # 
-  user_pref("ui.submenuDelay", 50); 
-  # 
-  user_pref("content.notify.backoffcount", 5);  
-  user_pref("content.notify.ontimer", true);  
-  user_pref("content.interrupt.parsing", true);  
-  user_pref("content.max.tokenizing.time", 2250000);  
-  user_pref("content.notify.interval",750000); 
-  user_pref("content.maxtextrun", 8191); 
-  user_pref("content.switch.threshold", 750000); 
-  # 
-  # Cache 
-  user_pref("browser.cache.offline.enable", false); 
-  # Disable disk cache  - using only RAM 
-  #user_pref("browser.cache.disk.enable", false); 
-  user_pref("browser.cache.memory.enable", true); 
-  # 
-  # Specify the amount of memory cache: 
-  # -1 = determine dynamically (default), 0 = none, n = memory capacity in kilobytes 
-  user_pref("browser.cache.memory.capacity", 65535); 
-  # How many sites to remember for back/forward function 
-  user_pref("browser.sessionhistory.max_total_viewers", 3); 
-  # 
-  # Move Firefox out of working memory to swap memory on minimize. Windows ONLY! 
-  #user_pref("config.trim_on_minimize", true); 
-  # 
-  # Allow certain sites to acces local files 
-  user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess"); 
-  user_pref("capability.policy.localfilelinks.sites", "pardus.at"); 
-  user_pref("capability.policy.policynames", "localfilelinks"); 
-  # 
-  # Location address functions 
-  user_pref("layout.word_select.eat_space_to_next_word", false); 
-  user_pref("layout.word_select.stop_at_punctuation",false); 
-  user_pref("browser.urlbar.clickSelectsAll", false); 
-  # 
-  user_pref("browser.search.openintab", true); 
-  user_pref("browser.tabs.closeButtons", 0); 
-  user_pref("browser.tabs.loadFolderAndReplace", false); 
-  user_pref("browser.tabs.tabMinWidth",80); 
  
-  // Open new windows in tab +=== Make Firefox remember all forms and passwords ===
-  user_pref("browser.link.open_newwindow", 3); +
-  # +
-  #http://kb.mozillazine.org/Network.http.sendRefererHeader +
-  user_pref("network.http.sendRefererHeader", 1); +
-  # make all frames resizeable +
-  user_pref("layout.frames.force_resizability",true); +
-  # disable target="_blank" (open in same window): +
-  user_pref("browser.block.target_new_window", true); +
-  # Stop reusing active windows: +
-  user_pref("advanced.system.supportDDEExec", false); +
-  # do not close Firefox with last tab +
-  user_pref ("browser.tabs.closeWindowWithLastTab", false); +
-  // extensions/plugins/addons +
-  # do NOT scan for additional plugins on local computer +
-  user_pref ("plugin.scan.plid.all", false); +
-  user_pref("extensions.disabledObsolete", true); +
-  // disable addon countdown +
-  user_pref("security.dialog_enable_delay", 1); +
-  // Show full path for plugin file on about:plugins page +
-  // the full path was removed for security purposes, please keep that in mind +
-  // Note: showing full paths can be a security risk only use when debugging. +
-  user_pref("plugin.expose_full_path", true);  +
-  # +
-  # disable javascript annoyances +
-  ## user_pref("dom.disable_window_status_change", true);  +
-  user_pref("browser.jsannoyances.disabled", true); +
-  user_pref("dom.event.contextmenu.enabled", false); +
-  # +
-  user_pref("browser.display.show_image_placeholders", false);+
  
-  // Shows an error page instead of an error popup dialog +find nsLoginManager.js\\ 
-  //if you load multiple pages at the same the dialog box actually holds up the browser +\\ 
-  // using this will allow the other pages/elements to load for the rest of the pages +linux 
-  user_pref("browser.xul.error_pages.enabled", true)+  /usr/lib/xulrunner-1.9.1.5/components/nsLoginManager.js 
 +\\ 
 +windows 
 +  C:\Program Files\Mozilla Firefox\nsLoginManager.js) 
 +\\ 
 +Once you've found that file, open it in an editor, and find the section that has isAutoCompleteDisabled, and make it look like this (so it will always return FALSE): 
 + 
 +<code> 
 +    /
 +    * _isAutoCompleteDisabled 
 +    * 
 +    * Returns true if the page requests autocomplete be disabled for the 
 +    * specified form input. 
 +    */ 
 +    _isAutocompleteDisabled :  function (element) { 
 +    //        if (element && element.hasAttribute(”autocomplete”) && 
 +    //            element.getAttribute(”autocomplete”).toLowerCase(== “off”) 
 +    //            return true; 
 +  
 +    return false; 
 +    },
 </code> </code>
  
 +
 +In recent FF versions the nsLoginManager.js file is located in the "omni.jar" file (or "omni.ja" since FF 10).
 +You'd have to open omni.jar with an unarchiver tool and look for your file in the "components" folder.
 +After the modification select all files/folders within the omni folder, re-compress them and rename the resultant archive file to omni.jar
 +
 +
 +=== Make old Firefox add-ons "compatible" ===
 +Find in install.rdf section similar to this:
 +<code>
 +  <em:targetApplication>
 +  <Description>
 + <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
 + <em:minVersion>1.0</em:minVersion>
 + <em:maxVersion>3.6.*</em:maxVersion>
 +  </Description>
 +  </em:targetApplication>
 +</code>
 +
 +and change maxVersion to something higher...
 +
 +=== Firefox config optimizations ===
 +http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9020880
 +
 +=== Firefox hardware acceleration ===
 +http://www.basschouten.com/blog1.php/2010/03/02/presenting-direct2d-hardware-acceleratio
  
 === about_url === === about_url ===
Line 250: Line 188:
  
 check SQLoptimizer add-on!\\ check SQLoptimizer add-on!\\
 +
 +
 +<note important>install sqlite3 command line package first!</note>
 +
 +
  
 Firefox insists on doing huge amounts of I/O when closing, as well as act slow when using the awesomebar, try the following (close down Firefox completely first): Firefox insists on doing huge amounts of I/O when closing, as well as act slow when using the awesomebar, try the following (close down Firefox completely first):
 +
  
 <code> <code>
-    for f in ~/.mozilla/firefox/*/*.sqlite; do sqlite3 $f VACUUM;; done+#!/bin/bash 
 +killall firefox 
 +killall thunderbird 
 +du -hs ~/.mozilla/firefox 
 +du -hs ~/.thunderbird 
 +for f in "~/.mozilla/firefox/*/*.sqlite"; do sqlite3 ${f} "VACUUM;"; done 
 +for f in "~/.thunderbird/*/*.sqlite"; do sqlite3 ${f} "VACUUM;"; done 
 +du -hs ~/.mozilla/firefox 
 +du -hs ~/.thunderbird
 </code> </code>
  
Line 260: Line 212:
 Win32 .bat file: Win32 .bat file:
 <code> <code>
-for %%in (*.sqlite) do sqlite3 "%%v" VACUUM;+@echo off 
 +setlocal 
 +pushd 
 + 
 +REM IF EXIST "%APPDATA%\Thunderbird\Profiles" SET "HAS_TBIRD=1" 
 +REM IF EXIST "%APPDATA%\Mozilla\Firefox\Profiles" SET "HAS_FFOX=1" 
 +REM IF EXIST "%APPDATA%\Moonchild Productions\Pale Moon\profiles" SET "HAS_PALEMOON=1" 
 + 
 +set profiles=%APPDATA%\Thunderbird\Profiles 
 + 
 +cd /d %profiles% 
 +  
 + for /r %%in (*.sqlite) do 
 + echo %%a 
 + sqlite3 "%%a" VACUUM; 
 + sqlite3 "%%a" REINDEX; 
 +  ) 
 + 
 +set profiles=%APPDATA%\Mozilla\Firefox\Profiles 
 +cd /d %profiles% 
 +  
 + for /r %%a in (*.sqlite) do ( 
 + echo %%a 
 + sqlite3 "%%a" VACUUM; 
 + sqlite3 "%%a" REINDEX; 
 +  ) 
 + 
 +set profiles=%APPDATA%\Moonchild Productions\Pale Moon\profiles 
 + 
 +cd /d %profiles% 
 +  
 +for /r %%a in (*.sqlite) do ( 
 + echo %%a 
 + sqlite3 "%%a" VACUUM; 
 + sqlite3 "%%a" REINDEX; 
 +  ) 
 + 
 + 
 +popd 
 </code> </code>
  
 It’s harmless, no data will be lost: it compacts your **__[[sqlite]]__** databases. It’s harmless, no data will be lost: it compacts your **__[[sqlite]]__** databases.
- 
  
 ==== cpu optimized builds ==== ==== cpu optimized builds ====
firefox.txt · Last modified: 2014/01/30 10:27 by zagi
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 ipv6 ready