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
firefox [2010/06/29 12:50]
greebo
firefox [2014/01/30 10:27] (current)
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/+
  
-<code javascript> +imdisk.exe --s 200M -m R: -S 4096 -"/fs:exFAT //y"
-  # 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); +
-  # +
-  user_pref("network.ftp.idleConnectionTimeout", 60); +
-  // Just to make sure, disable windows shellprotocol +
-  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 +http://www.softperfect.com/products/ramdisk/
-  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 +in about:config add 
-  //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 +  browser.cache.disk.parent_directory  R:\ 
-  user_pref("browser.xul.error_pages.enabled", true)+  browser.cache.disk.capacity 190000 
 + 
 + 
 +=== Make Firefox remember all forms and passwords === 
 + 
 +find nsLoginManager.js\\ 
 +\\ 
 +linux 
 +  /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 241: 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 251: 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.1277808644.txt.gz · Last modified: 2010/06/29 12:50 by greebo
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 ipv6 ready