Sunday, August 24, 2008

Ultimate Firefox Tweak Guide

Firefox is one of the best browsers out there. What I really like about it (besides all the plugins) is the ability (via about:config) to set most of the system paramters via the UI. I have been using Firefox for years now, so lets see what I set up and why.

Most of these settings also have an entry in the Mozilla knowledgebase. I have tried to link to that, wherever possible. Some of these may not exist by default. In this case, they can simply be created from the right click menu (Make sure to match the type.) There is no option to delete something in about:config. Simply click "Reset" and the option will be gone the next time you open about:config. Warning Many of these options, particularly the ones which deal with reduced memory footprint and content rendering will slow down Firefox.

Setting Type Value Purpose
accessibility.typeaheadfind boolean true Make Firefox star searching inside the page the moment some text is typed, if a field does not have focus
accessibility.typeaheadfind.flashBar integer 0 Prevent fashing the toolbar when typeahead starts
accessibility.typeaheadfind.linksonly boolean true Searches only links. Equivalent to starting search with '
browser.cache.memory.capacity integer 15000 How much data can Firefox store in its "in memory" cache. (In KB) (Yes, I know, 15360)
browser. enable_automatic_image_resizing boolean false This controls Firefox's behavior, when displaying a image only (i.e. if the URL itself points to an image). If enabled, images larger than Firefox's window will be resized down automatically.

Setting Type Value Purpose integer 0 Forces Javascript links to open a tab instead of a new window.
browser. sessionhistory. max_entries integer 10 How many URLs can you traverse purely through the Back/Forward buttons. Setting this to a high value will make Firefox use more memory, as some data for this is cached. (And this is 10 per tab BTW)
browser.sessionhistory.max_total_viewers integer 0 The number of pages (per tab) to store in memory to allow fast back/forward. Separate from memory cache
browser.ssl_override_behavior integer 2 Prepopulate the faulty certificate on the add exception page. Enabling this and xul.error_pages.expert_bad_cert will reduce 2 clicks from the process to add an exception for a bad certificate.
browser.xul.error_pages.expert_bad_cert boolean true Show "Add Exception" on the invalid certificate error page automatically. browser.xul.error_pages.enabled must be true

Setting Type Value Purpose
config.trim_on_minimize boolean true Makes Firefox release most of its memory when it is minimized
content.interrupt.parsing boolean true Periodically interrups parsing a page to check for UI events. Useful if Firefox freezes under high CPU
content.max.tokenizing.time integer 50000 How much time (in microseconds) Firefox will wait between checking for UI events.
content.notify.interval integer 1000000 While parsing, how much time (in microseconds) to wait before the currently parsed content will be displayed
content.notify.ontimer boolean true If true, will enable content.notify.interval setting. Dont enable this if you have a high speed connection

Setting Type Value Purpose
content.switch.threshold integer 1000000 How long will Firefox stay "on alert" when its rendering of a page is interrupted by a user action (say typing or a mouse click)
gfx.color_management.enabled boolean true Enable this setting to make Firefox display richer colors for images
network.prefetch-next boolean false If true, Firefox will (on a hint from a webpage) fetch some links before you actually click on them.
browser.identity.ssl_domain_display integer 1 Makes Firefox highlight sites using HTTPS by showing their domain name in a blue background(New 10 Nov '08)
geo.enabled boolean false Disables Geolocation(New 30 June '09)

Setting Type Value Purpose
network.manage-offline-status boolean false Prevent Firefox from going into offline mode by itself if you don't have a network connection
browser.sessionstore.max_concurrent_tabs integer 0 Make Firefox 4 load only one tab at a time - inbuilt bartab
browser.gesture.* string See Link Make Firefox 4 support multitouch gestures from the mousepad
dom.event.clipboardevents.enabled boolean false Set this to false to prevent annoying webpages from disabling copy/paste

Some other useful stuff: a list of the winners of the best Firefox 3 extensions is here. If you want Firefox 3 on Ubuntu to look like the way it does on Windows (with the huge back button and all) you can get the required theme here and finally, if you want to use MPlayer as a plugin in Firefox (on Linux) to play streams and media files, you can get it here.

A blog is an interesting way to put out your thoughts, its also an interesting way to store information, almost like a diary :) Well this post leans heavily on the side of the second purpose, to store exactly what custom Firefox settings I keep and why. I will try to keep it updated as I change stuff around...


Pog said...

Bypass'd the about:config stuff. Cuz, its mostly old news or stuff that I really don't need.

Onto the meal ... Firefox extensions. ahhh!
Pencil - is WAY neat. Good find!
Installed it right away. Was missing something like that. I had its cousin Fireshot, which is really handy too!

Speaking of which, here are the extensions that I am using.
1. NoScript - having fun with the google ecosystem; especially analytics!!! ;)
2. Web Developer
3. User Agent switcher - obv
4. Firebug - way cool!
5. Foxmarks - bookmark sync tool
6. FireFTP - i find it better (faster, and cleaner) than RemoteSystemExplorer
7. Colorful tabs
8. ColorZilla
9. Ctrl-Tab
10. Fireshot
11. HTML Validator
12. MeasureIt
13. ModifyHeaders - must have
14. Morning coffee
15. WizzRSS - although not so excited about it
16. NewTabButtonOnTabRight - simple, yet very useful!
17. Table2Clipboard
18. TamperData - useful!
19. ShowIP

Was using SEOQuake for a bit. Am not using it anymore.

and yes, I use over 95% regularly.

Hey, which ones of these do you use?

P.S. The tone in the post was definitely more uplifting. :p

Pog said...

Hey Moglee,

The current layout is too narrow. When you start putting in tables (w/cols > 2), it requires horiz scrolling. When you start adding big images or embed video - the blog unnecessarily becomes long and narrow. Its bad enough that we have to do vertical scrolling as it is :p

Just a thought.

Unknown said...

thanks for the information, will improves my knowledge.