Firefox Tweak Guide

[Page 10] Advanced Tweaking (Pt.2)



About:Config Preferences


This section contains the instructions on how to conduct advanced tweaking in Firefox using the About:Config method, as mentioned on the previous page. This is the most common way to perform advanced tweaking in Firefox, as it provides access to the widest range of settings, known as 'preferences'. To view and alter these preferences, you must first go to the Firefox Address Bar and type About:Config, then press Enter. You will be a shown a warning which you should accept, and then you will see a long listing of preferences sorted alphabetically.


There are three main types of preference variables shown here: Integers, Boolean and String variables. An Integer preference can only take a whole number value; Booleans can only take True (on) or False (off) values; and Strings can consist of any combination of letters and numbers. You can change the value of any preference quickly by double-clicking on it: Booleans will toggle from True to False and back; Integers and Strings will open a dialog box which allows you to input a new value. Or you can right-click on a preference and select Modify or Toggle as relevant.


Before making any changes here, read the information on the previous page, and importantly, Please read all of the important notes below carefully before attempting to tweak your About:Config.



Click to enlarge

Important Notes


  • Some preferences are not in About:Config by default; these are denoted with a *Create tag in the list below. If you cannot find a preference mentioned below in your own About:Config listing you will have to create it as a new preference. To do this, right-click on an empty area of the About:Config screen, select New and select the type of preference as specified, then give it the name exactly as shown here, and an appropriate value.

  • Preferences which you have altered at any point (whether edited manually, or changed via the Firefox Options) will appear in bold in the About:Config screen and have a status of 'User Set'. Those which are still at their default setting will be unbolded and have the status 'Default'. To reset a preference to its default configuration, right-click on it and select Reset.

  • Only working preferences which have a noticeable practical impact are provided here. Many preferences with interesting names can already be altered via the standard Firefox options, and so are not listed below. Furthermore, some preferences which have tempting names are legacy items from previous builds of Firefox, or simply do not work.

  • To undo the effects of a mistakenly entered or undesirable custom-created preference, right-click on it and select Reset, then close all instances of Firefox and restart it. However this won't remove a user-created preference from About:Config - you will need to go to your Prefs.js file (See Prefs.js on the previous page), open it with a text editor and do a search for the preference name, highlight and delete the entire line that it is on, then close and save the file. Restart Firefox, open About:Config and it should no longer be there.

  • There are far more preferences which you can change using About:Config than the ones listed in this guide. I've only tried to cover those which I have tested and believe are the most useful. For a more complete list of Firefox preferences see the following article: Mozillazine About:Config Entries

  • To make sure your preference changes are saved, and to test the effects of any preference change(s), close all open instances of Firefox and restart Firefox.


    Note that aside from About:Config, there are a range of other About: commands you can use. Some have already been covered elsewhere in this guide, but details of all of the About: commands can be found here.



    Preferences List


    The list below is presented in alphabetical order with the full preference name in italics, the preference type (i.e. Integer, Boolean or String) in [ ] square brackets, whether it needs to be created by the user denoted by *Create, then followed by a brief description. Recommendations are only given for a few of the settings - most will require you to experiment as the choice is typically based on personal taste and/or your specific hardware and OS settings.


    A quick tip: copy and paste the preference name from the list below into the Search box at the top of About:Config to quickly find it.



    accessibility.typeaheadfind.casesensitive [Integer] - If set to 0, text searches are not case sensitive, if set to 1 they are case sensitive.


    accessibility.typeaheadfind.enablesound [Boolean] - By default this is set to true, which means the 'Search for text when I start typing' feature makes a noise when you enter characters in a string which is not found on the current page. To turn this potentially annoying sound off, set this option to False.


    accessibility.typeaheadfind.linksonly [Boolean] - If set to true, this setting makes the text search feature search only for links on a page.


    accessibility.typeaheadfind.soundURL [String] - Determines the sound made when the 'Search for text when I start typing' feature doesn't find a match. The default is beep, but it can be set to a blank value to disable sounds, or set to the full path to a .wav file which it will play in place of the beep.


    accessibility.typeaheadfind.timeout [Integer] - Sets the amount of time before the 'Search for text when I start typing' feature search box disappears from the screen when inactive. The value is in milliseconds, so 5000 = 5 seconds for example. Lowering it will close the box more quickly when inactive.


    app.update.interval [Integer] - If you've enabled automatic checking for Firefox updates in the Options menus, this setting determines how many seconds Firefox will wait between checking for updates (at the address contained in the app.update.url preference). The default is every 12 hours (43200 seconds).


    browser.backspace_action [Integer] - Determines what the Backspace key does in Firefox. The default value of 0 in Windows means that pressing Backspace on a web page will take you back a page; if set to 1, you will scroll up the page when Backspace is pressed; if set to 2 or above, pressing Backspace on a page will have no impact. This preference does not apply to pressing the Backspace key in any text box on a page.


    browser.bookmarks.livemark_refresh_seconds [Integer] *Create - This is the number of seconds Firefox waits between checking for updates to any Live (RSS) Bookmarks you may have. The default is 3600 seconds = 1 hour, and for most purposes this is fine.


    browser.bookmarks.max_backups [Integer] - By default Firefox creates 10 bookmarks backups in .JSON format, as covered on the previous page. The number of backups created is controlled by this setting; a value of 0 disables automatic bookmark backups, while a value of -1 will remove the limit on the number of backups allowed, which is not recommended.


    browser.cache.check_doc_frequency [Integer] - This setting determines how often Firefox checks the page you're viewing against the cached version it holds. By default (a value of 3), Firefox automatically checks and only reloads the page if it seems outdated; a value of 2 will never check and always load the cached version (not recommended); a value of 1 will always check for a newer version of the page and reload; a value of 0 only checks once per session. In most cases the default of 3 is fine, but you may wish to set this to 1 if you want to ensure that Firefox always checks for and loads up the latest version of a page, though it may reduce browsing speed.


    browser.cache.compression_level [Integer] - This setting determines whether Firefox compresses the data in the disk cache, reducing the size of it. The default value is 0, which means compression is disabled. A value of 1 to 9 enables compression, with the higher the value, the greater the data is compressed, but the potentially slower browsing may become.


    browser.cache.disk_cache_ssl [Boolean] - When set to True, which is the default, this setting allows the caching of secure web pages in your browser disk cache. This speeds up loading of commonly-visited secure pages, but is a security risk and for that reason you may wish to set this to False.


    browser.cache.disk.parent_directory [String] *Create - Determines the path to the parent directory for the Firefox cache, usually held under your profiles directory (i.e. under "%APPDATA%\Mozilla\"). By specifying a new full path here (e.g. "D:\Users\User1\Documents") you can move the cache to another drive or partition, which may improve performance or enhance privacy. Note that if this value is being set directly in the Prefs.js or User.js file, the path requires double backslashes for every backslash instead of single ones (e.g. D:\\Users\\User1\\Documents).


    browser.cache.memory.enable [Boolean] - If this preference is set to True, Firefox will use system RAM to cache certain data, such as images, improving performance. If set to False, Firefox will not use any RAM to cache, resulting in a performance drop. I recommend leaving this setting at its default of True unless troubleshooting a potential memory-related problem in Firefox for example.


    browser.cache.memory.capacity [Integer] *Create - If the browser.cache.memory.enable preference above is set to True, this setting allows you to specify the amount of memory to use for caching data. A value of 0 turns off caching into RAM, which is not recommended as it can slow down browsing. The default value of -1 tells Firefox to automatically determine the size of the cache based on your physical RAM. Systems with 512MB of RAM will result in a 14MB cache, 1GB RAM = 18MB cache, 2GB RAM = 24MB of cache, and 4GB RAM or more = 32MB of cache. You can check the actual amount of RAM allocated for this feature on your system by typing about:cache?device=memory into the Address Bar and pressing Enter, then checking the value in the 'Maximum storage size' field. The default of -1 should be fine for all people, but if you want to set a specific amount of RAM to use for the memory cache, enter a value in KB (e.g. a value of 18432 = 18MB).


    browser.cache.offline.capacity [Integer] - Web applications can be stored locally for offline use, as covered by the 'Offline Web Content and User Data' setting in the Firefox Options. This setting determines the maximum amount of space they can take up in the offline cache. The default value of 512000 in kilobytes corresponds to 500MB. In general there's no need to alter this as it will only be used if you install an offline web application, and is not to be confused with the Firefox disk cache for normal web content. If you wish to turn off the offline cache altogether, set the browser.cache.offline.enable setting to False.


    browser.cache.use_new_backend [Integer] - If set to 1, this setting enables a newer form of the caching system in Firefox, designed to provide improved performance and be more crash proof. I recommend enabling this option (1), and only disabling it (0) if you experience problems. Note that using the new caching system will mean your cached files will be stored under a different directory from the regular cache, namely \Users\[username]\AppData\Local\Mozilla\Firefox\Profiles\[profilename]\cache2. The maximum size of this cache is determined by the browser.cache.disk.capacity preference. Note that as of Firefox 32.0, the new caching system has been enabled by default. However it appears that a browser.cache.use_new_backend_temp preference has been added and enabled instead to implement the new caching system.


    browser.chrome.site_icons [Boolean] - This setting determines the display behavior of the small site icons (also known as "favicons") visible in several areas, including in the Bookmarks menu and on the tab for an open web page. If set to True, these are downloaded and displayed; if set to False they are not. They are best left enabled for quicker site identification.


    browser.chrome.toolbar_tips [Boolean] - If set to True, small 'tooltips' (popup boxes with descriptive text) will be shown when you hover your mouse arrow over items in your Firefox toolbar, as well as on certain objects in some webpages. If you don't like tooltips, set this value to False.


    browser.ctrlTab.previews [Boolean] - Disabled by default, if enabled (set to True) then you can use the enhanced CTRL+TAB switching capabilities of Firefox when three or more tabs are open. See the Tabbed Browsing area of the Features, Tips & Tricks section for full details.


    browser.display.show_image_placeholders [Boolean] - If set to True, image placeholders will be shown until images on a page are fully loaded. If set to False, these are not shown, which may provide a cleaner look as pages load. True is the default and is generally recommended, as otherwise if set to False, text and other non-image elements on a page will continually move around until all images have completed loading.


    browser.download.manager.quitBehavior [Integer] *Create - The built-in Download Manager can pause and resume files which are being downloaded when Firefox is closed. By default (a value of 0) an active download will be automatically paused when Firefox closes, and resumed (if the server allows it) when it next opens. However you can set this to a value of 1, forcing active downloads to pause, but not automatically resume when Firefox starts up again; or set it to a value of 2 so that all active downloads will be cancelled when Firefox is closed.


    browser.enable_automatic_image_resizing [Boolean] - If set to True (the default), images opened separately will be automatically resized to fit the screen, and will need to be left-clicked to be shown at full size. If set to False they will always be shown at their full size.


    browser.fixup.alternate.enabled [Boolean] - If set to True (the default), if a web address is entered in the Address Bar without an appropriate prefix or suffix, Firefox will automatically add them in. For example if you enter https://tweakguides into the Address Bar, Firefox will add www. and .com to either side of the tweakguides text before executing the address. Setting this to False prevents that behavior, and you can also edit the prefix and suffix automatically used by Firefox in the browser.fixup.alternate.prefix and browser.fixup.alternate.suffix preferences. Also keep in mind that entering normal text in the Address Bar and pressing Enter usually launches a web search on that text.


    browser.fullscreen.autohide [Boolean] - If set to True (the default), when you activate Fullscreen Mode in Firefox (by pressing F11), the toolbars and tab bar at the top of the Firefox window will automatically be hidden after a second. If set to False, they won't become hidden and will always be visible.


    browser.link.open_newwindow [Integer] - This setting determines where hyperlinks which would normally open in a new browser window end up opening. If set to 1, they open in the current tab in the existing Firefox window; if set to 2 they open in a new window; and if set to 3 (the default) all such links open in a new tab in the current Firefox window. Note that this setting is the same as that found under Tabs section of the Firefox Options, however there is an additional choice here (setting it to 1).


    browser.link.open_newwindow.restriction [Integer] - This setting determines how new windows launched by javascript (usually popups) are treated. If set to 0, all such windows are opened as tabs in the current window; if set to 1 they open as new windows; and if set to 2 javascript windows will be treated like any other opened link unless they have strict values set. If you want to make sure popup windows do not try to hide/quietly open in the background, set this to 0 so they always open up in a new tab.


    browser.newtabpage.enabled [Boolean] - This setting determines whether the new tab page, accessible by clicking the '+' button in the Tab Bar, displays a thumbnail list of your frequently visited sites. This feature is enabled by default (True), but can be disabled by setting this preference to False, which means opening a new tab will now simply display a blank page.


    browser.newtabpage.rows [Integer] - If the new tab page is enabled, as covered above, then this setting determines the number of rows on which to display thumbnail images of frequently visited sites. You can also adjust the number of columns by altering the browser.newtabpage.columns preference. Both preferences have a default value of 3, but you can raise or lower this as desired.


    browser.overlink-delay [Integer] - This setting determines the length of time between when you hover your mouse arrow over a hyperlink, and when the URL for that link appears in a floating popup text box at the bottom of the Firefox window. The default is almost instantaneous (80 milliseconds), but it can be lowered to 0 to make it instant, or raised to a higher value to delay its appearance or effectively disable it.


    browser.panorama.animate_zoom [Boolean] - If set to True (the default), when using the Panorama (Tab Groups) feature, whenever you click on a tab or open/close Panorama, there will be an animated zoom-in/zoom-out effect. If set to False, the animated effect is removed, which can speed up the use of Panorama.


    browser.preferences.animateFadeIn [Boolean] - If set to True, this setting makes the Firefox Options window automatically resize itself to fit the number of available options shown on each screen.


    browser.preferences.inContent [Boolean] - If set to True, whenever you select the normal Firefox Options under the Firefox main menu button, the preferences will open in a new tab in the browser. If set to False, they will open in a separate window. This should become the default appearance of the Firefox options as of Firefox 32.0 onwards.


    browser.search.openintab [Boolean] - If set to True, the result of any searches made using the Search box in the toolbar will be shown in a newly opened tab; if set to False (the default), the search results will be shown in the current tab.


    browser.sessionhistory.max_entries [Integer] - This setting determines the total number of pages which can be stored in the page history for use with the back and forward buttons. The default value is 50, meaning up to 50 pages worth of your browsing history can be stored for a single tab - the browsing history is accessible when you right-click on the back and forward buttons.


    browser.sessionhistory.max_total_viewers [Integer] - This option determines how many pages of your session browsing history to store in memory to speed up the back and forward buttons in Firefox. The default of -1 automatically determines the amount based on your system RAM, and is generally recommended. With 1GB of system RAM or more, 8 pages are held in memory. You can set this value to 0 to hold no pages in RAM (not recommended), or increase the value if you often use the back and forward functions for more than 8 pages.


    browser.sessionstore.max_tabs_undo [Integer] - Under the History menu in Firefox there is a 'Restore Closed Tabs' section which allows users to select from a list of recently closed tabs to reopen. You can also undo a recently closed tab by pressing CTRL+T at any time. By default Firefox holds a history of up to 10 recently closed tabs, however here you can change the value to increase or decrease the number held.


    browser.sessionstore.max_windows_undo [Integer] - Under the History menu in Firefox there is a 'Restore Closed Windows' section which allows users to select from a list of recently closed Firefox windows (not tabs) to reopen. The default is a history of 3 recently closed windows, however here you can change the value to increase or decrease the number held.


    browser.sessionstore.max_resumed_crashes [Integer] - This setting controls whether Firefox's Session Restore feature automatically restores your session if Firefox crashed or was closed improperly the last time. By default the feature is enabled (1), and automatically restores the last session after a crash. You can disable this feature by setting the value to 0, or you can set the number of crashes allowed before the automatic session restore feature kicks in. E.g. a value of 3 allows for three crashes in a row before the last session is automatically restored.


    browser.showQuitWarning [Boolean] - Disabled by default, if set to True, and you do not have the Session Restore feature enabled, then Firefox will prompt you to save your session when you close the browser by clicking the 'Save and Quit' button. This can be useful if you want to keep any changes you've made to your Tab Groups for example. Otherwise to always enable Session Restore, select 'Show my windows and tabs from last time' in the 'Home Page' setting under the General section of the Firefox Options.


    browser.tabs.animate [Boolean] - Enabled by default, subtle tab animation features will be present, such as when you click the 'New Tab' (+) button. Set this to False if you wish to disable all such tab animation effects, which will make the interface feel snappier.


    browser.tabs.closeButtons [Integer] - This setting controls the appearance of the 'x' close buttons on tabs. A value of 0 only displays the close button on the active tab; 1 (the default) shows it on all open tabs; 2 results in no close buttons being shown at all; and 3 displays a single close button at the end of the tab bar.


    browser.tabs.closeWindowWithLastTab [Boolean] - By default you can't close the last open tab unless you close Firefox. If this setting is changed to False, closing the last tab is possible, and will leave Firefox open with a New Tab window.


    browser.tabs.drawInTitlebar [Boolean] - If set to True, which is the default, your tab bar will be shown where the Title Bar used to be. If set to False, a Title Bar will be shown in Firefox, and the tab bar will move it.


    browser.tabs.insertRelatedAfterCurrent [Boolean] - If set to True, which is the default, whenever you open a new tab by clicking a link in an existing tab, it will open next to the current tab. If set to False, the new tab will open at the end of the tab bar.


    browser.tabs.opentabfor.middleclick [Boolean] - If set to False, clicking the middle mouse button on a link will not open that link in a tab. This is counter to the default behavior of Firefox, and would only be recommended if you strongly object to middle click opening a tab for some reason.


    browser.tabs.tabClipWidth [Integer] - Determines the minimum width of a non-active tab in pixels before a red 'x' close button appears. The default is 140, and the lower the value, the more likely a close button will appear on a tab, but it may also clip some of the text in the tab title. If on the other hand you want to get rid of close buttons, consider using the browser.tabs.closeButtons preference further above.


    browser.taskbar.previews.max [Integer] - This setting determines the maximum number of thumbnail previews which can be displayed in the Windows Taskbar on Vista, 7 or 8 when the 'Show tab previews in the Windows taskbar' setting is enabled in the Firefox Options. The default is 20, and it can be raised or lowered, but it will also be affected by the amount of viewable space you have on your Desktop.


    browser.urlbar.clickSelectsAll [Boolean] - When set to True (the default), left-clicking once in the Address Bar automatically highlights all of its contents. If set to False, clicking in the Address Bar will only place a cursor where you click, without highlighting any text.


    browser.urlbar.maxRichResults [Integer] - This setting determines the maximum number of results shown when using the Awesome Bar functionality of the Address Bar. The default is 12, but if you find that excessive you can lower the value here. A value of 0 will completely disable the Address Bar's Awesome Bar-related functionality.


    browser.urlbar.trimURLs [Boolean] - If this setting is True (default), website addresses shown in the Address Bar will be abbreviated by removing the https:// portion. When set to False, the full website address will be shown in the Address Bar. Note that by default https:// (secure) website URLs will always be shown in full regardless of this setting.


    browser.visited_color [String] - This setting determines the color hyperlinks take on after you have clicked (visited) them. The default value is #551A8B which is purple. You can alter it by entering a new value in the correct HTML color format. Use this HTML Color Picker site to select/preview a new color value.


    browser.zoom.siteSpecific [Boolean] - In conjunction with Firefox's full page zooming capability, this setting determines whether your zoomed in/out view applies to the entire site (when set to True, the default), or if it only applies to the currently viewed page (when set to False).



    The next page continues the alphabetical listing of useful About:Config Preferences.