Skip to: Prerequisites | Applications | Installation and Configuration | UW-IMAP | Squirrelmail | stunnel | Mutt | Finished
The purpose of this document is to provide detailed, easy-to follow instructions for setting up a uniform, secure, and universally accessible e-mail system. To accomplish this, we'll use the IMAP protocol to maintain our e-mail folder structure on the server, and setup a secure webmail client to allow easy off-site access.
*optional - may be required to encrypt POP3 and IMAP connections
**optional - provides console e-mail access on the server
Where possible, I strongly recommend installing prepackaged binaries for your distribution.
$ make lnp SSLTYPE=unix SSLDIR=<openssl_basedir>
$ cp ipopd/ipop3d /usr/sbin/
$ cp imapd/imapd /usr/sbin/
$ openssl req -new -x509 -nodes -out imapd.pem -keyout imapd.pem -days 3650
$ openssl req -new -x509 -nodes -out ipop3d.pem -keyout ipop3d.pem -days 3650
Copy certificates to your ssl certs directory (eg., /usr/ssl/certs/)
$ pop3 110/tcp
$ imap 143/tcp
$ imaps 993/tcp
$ pop3s 995/tcp
service imap2
{
socket_type = stream
wait = no
user = root
server = /usr/sbin/imapd
log_on_success += DURATION HOST
log_on_failure += HOST
disable = yes #SET TO NO TO ENABLE UNENCRYPTED IMAP
}
service imaps
{
<same as above>
disable = no #SET TO YES TO DISABLE ENCRYPTED IMAP
}
service pop3
{
socket_type = stream
wait = no
user = root
server = /usr/sbin/ipop3d
log_on_success += USERID
log_on_failure += USERID
disable = yes #SET TO NO TO ENABLE UNENCRYPTED POP3
}
service pop3s
{
<same as above>
disable = no #SET TO YES TO DISABLE ENCRYPTED POP3
}
Restart xinetd.
imapd and pop3d should now be accepting secure connections. If either is not working correctly, see below about stunnel. Also try running imapd and pop3d without ssl. If that doesn't work either, then there's a problem with your UW-IMAP install.
chown -R <apache_UID>.<apache_GID> data
Be sure to check out the available Squirrelmail Plugins. Plugins can greatly enhance the functionality of Squirrelmail. If there's a particular feature that you wish Squirrelmail had, chances are a plugin has been written to do it.
Run ./configure to customize Squirrelmail to your needs. Be sure to set:
To login, browse to http://server/<squirrelmail>/, where <squirrelmail> is the name of the folder you extracted it to.
Due to the personal nature of e-mail, I'd also highly recommend that you restrict access to SSL connections only. To do this, add the following to your httpd.conf file and restart apache:
Directory /home/httpd/htdocs/squirrelmail>
SSLRequireSSL
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128
</Directory>
RewriteEngine on
RewriteRule ^/(.*):SSL$ https://%{SERVER_NAME}/$1 [R,L]
RewriteRule ^/(.*):NOSSL$ http://%{SERVER_NAME}/$1 [R,L]
Change the <Directory> entry to your Squirrelmail directory. Note that this requires at least 128 bit SSL connections. Some older browsers (read IE) may not support this, so depending on your needs you may need to lower it. After this has been added to your httpd.conf file, all unencrypted connections (or those not meeting the key length requirement) will be given a Forbidden error.
If you have problems getting either imaps or ipop3s to work correctly, you may need to wrap it with stunnel. I had to wrap ipop3s on my computer, although imaps worked fine as it was.
To install, extract archive and build with:
$ ./configure
$ make
$ make install
To wrap your daemon, edit your xinetd entry like the following:
service pop3s
{
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/stunnel
server_args = -p /usr/ssl/certs/ipop3d.pem -l /usr/sbin/ipop3d -- ipop3d
log_on_success += USERID
log_on_failure += USERID
disable = no
}
Configure imaps the same way.
If you'd like to be able to read your e-mail while logged in on the server console (whether locally, through SSH, etc.), you'll also need to install a console mail client. I use mutt, and it works fine in conjunction with Mozilla on my desktop and Squirrelmail through the web. Install like normal, but make one modification to your .muttrc file:
set record="~/mail/Sent"
Squirrelmail, Mozilla, etc. will store sent messages in Sent. This option will force mutt to do the same.
pine and other clients should also work fine, but may require some additional configuration.
If all went well, you should be done. Fire up your preferred mail client, add a new IMAP account, and point it to your server. It should automatically read in your existing folder structure any mail already there, etc. Squirrelmail and pine/mutt should automatically do the same first time you start it.
Enjoy!
Skip to: Prerequisites | Applications | Installation | Configuration | Usage
Anyone using a mouse with extra (such as thumb) buttons probably knows just how convenient those buttons can be. They also probably know how frustrating it can be when those buttons don't work. I have several such mice myself, with a thumb button that I could program under Windows to issue the "Back" command to web browsers and Windows Explorer, and this is one of the conveniences that I sorely missed when switching to Linux.
Well, four years later I've finally figured out how to get this working under Linux. This is definitely more complicated than it should have to be, but at least it works. This document is intended to provide detailed instructions for setting this up on your own.
Please note that while this is written specifically for the Logitech Mouseman series (since that is what I own), these same steps will apply for all such mice. See below for additional information.
IMWheel is the only thing you'll need to install. Grab the latest version from the link above, and extract the contents to your hard drive. Install it with the following commands:
$ ./configure
$ make
$ make install
The first thing to take care of is your X configuration. Edit your /etc/X11/XF86Config file and look for your mouse device section. It should look similar to the following:
<SNIP>
Section "InputDevice"
Identifier "mouse0"
Driver "mouse"
Option "Device" "/dev/mouse"
Option "Protocol" "ExplorerPS/2"
Option "Buttons" "6"
Option "ZAxisMapping "5 6"
...
EndSection
<SNIP>
It's okay if your Device and Identifier parameters are different - these options are very system dependent. You should, however, change your Protocol, Buttons, and ZAxisMapping parameters to what I have above. This tells X that you have a 6 button mouse, and to recognize wheel scrolling (forward and backward) as buttons 5 and 6.
Now we need to configure IMWheel. First of all, search to see if you already have an imwheelrc file. It's usually in /etc/X11/, but it may be different. If you find the file, copy it to imwheelrc.bak and then overwrite the original with the code below. If you don't find one, create an imwheelrc file in /usr/local/etc/ and add the following to it:
".*"
None, Up, Alt_L|Left
"(null)"
None, Up, Alt_L|Left
Note that this will basically map <Alt>-L to your thumb button, which is the key combination most browsers recognize as the "back" command. Modify this line if you want to change the functionality of the button.
Now that everything is configured, we need to make sure it's always enabled when you start X. If you type startx to launch X, create/modify your ~/.xinitrc to look similar to this:
xmodmap -e "pointer = 1 2 3 6 4 5"
imwheel -k -b "6"
exec startkde
If you use a display manager instead, you'll need to modify the session config file for whichever display manager you use. In my case:
xmodmap -e "pointer = 1 2 3 6 4 5"
imwheel -k -b "6"
/usr/kde/3/bin/startkde
Note that this is for KDM with KDE 3.0.5. The XDM and GDM config files are probably in different locations.
That should be it. Start (or restart) X and you should be able to use the wheel to scroll up and down, and use your thumb button to navigate back in browsers (like Mozilla) and file managers (like Konqueror) that support it.
As I mentioned above, this document is specifically written for the 4 button Logitech Mouseman and to make the thumb button issue the "back" command. This same process can be used to configure other mice as well (such as the 5 button IntelliMouse Explorer), or to set the functionality of the thumb button to something else. See http://forums.gentoo.org/viewtopic.php?t=21251 for a more thorough discussion. This is the main resource I used to configure it myself, so it's definitely worth a read.
I hope you've found this document helpful. Please e-mail me if you find any mistakes, or if you know of a way to make the process easier. Enjoy!
Skip to: Message Highlighting | Extensions | Preferences
Mozilla Thunderbird is a fantastic e-mail client and address book, brought to us by the good folks at the Mozilla Foundation. If you're reading this page, then you're probably already familiar with Thunderbird; so, I won't spend much time on an introduction. Just for reference, here are a few important links:
Thunderbird Home PageThis page is intended to provide information on a few Thunderbird tricks that I personally find invaluable. For additional tips and tricks, please visit the links above.
Note: Many of the tips on this page assume that you are familiar with editing Thunderbird configuration files. Please see this Thunderbird Help page if you need more information.
Message highlighting (overview) is a great feature of Squirrelmail that I sorely missed in Thunderbird. Thunderbird by default does not offer the same functionality found in Squirrelmail, nor has an extension been written to add this capability. Fortunately, however, a suitable workaround can be achieved with a little work by using Thunderbird's label and filter systems.
Right-click on any message in your Inbox - notice the Label option? Thunderbird offers labels for five different types of e-mail: Important, Work, Personal, To Do, and Later. Unfortunately, Thunderbird is limited to only five labels, but the name and color of each can be customized through the Display tab in the Options window. I like to use labels for different mailing lists, but there are many other possible uses.
When you apply a label to a message (or group of messages), the font of that message changes to the associated color in the thread pane. This may work fine for you, but I strongly prefer the Squirrelmail way of changing the background color of the message. This makes the label more noticeable, and much more readable. To accomplish this, suitable colors must first be chosen.
Several people have asked me why I don't setup filters to move incoming mail into separate folders. As a matter of fact I do use subfolders, as you can see in the screenshot below. However, I only like to do this for mail that that I read once a day, such as the Bugtraq mailing list.
I much prefer to keep all important mail saved in one folder, so that I can see it as it comes in. Message highlighting allows me to do exactly this, while still distinguishing between message types.
For good contrast (and, hence, easy-to-read messages), light background colors and dark foreground colors should be used. You can use any combination you'd like (Thunderbird includes a color picker in the Options window), but I recommend the following pairs:
| Light/Dark Red: | Light/Dark Yellow: | ||
|---|---|---|---|
| #FFCCCC | #DD0000 | #FFFFCC | #DDDD00 |
| Light/Dark Blue: | Light/Dark Purple: | ||
| #CCCCFF | #0000DD | #FFCCFF | #CC33CC |
| Light/Dark Green: | |||
| #99FF99 | #00CC00 | ||
Once you've selected your colors, go click Tools, Options (or Edit, Preferences in Linux), then Display. Enter your custom colors and label names in the Labels box. You'll notice that only one color can be entered for each label - this will be explained later; for now, just enter the lighter shade for each color. Click OK, then apply one of the labels to any message. The text should change to the appropriate color, but it will most likely be too light to read.
To fix that problem, we need to tell Thunderbird to change the background rather than the font color on labeled messages. We can do this by editing the userChrome.css file in your profile directory (see the Note at the beginning of this page for more information about editing this file). I've linked to my own userChrome.css below as an example, and included one stanza for discussion.
treechildren::-moz-tree-cell(lc-FFCCCC) { background-color: #FFCCCC !important; }
treechildren::-moz-tree-cell(lc-FFCCCC, selected) { background-color: #DD0000 !important; }
treechildren::-moz-tree-cell-text(lc-FFCCCC) { color: #000 !important; }
treechildren::-moz-tree-cell-text(lc-FFCCCC, selected) { color: #FFF !important; }
My full userChrome.css is also available.
If you choose the same colors I did, you can simply copy my userChrome.css into your profile/chrome directory. If not, you'll need to customize it to match your own colors. Each stanza defines the colors used by the label for the background and font color, both when the item is selected and not selected. It may look confusing, but it's actually quite straightforward:
#FFCCCC, then all four (lc-*) tags should be (lc-FFCCCC).Once everything is set, save the file, then launch Thunderbird (or restart if it's already open). If you haven't already done so, apply labels to a few random messages. You should now have the sweetest message highlighting this side of Squirrelmail!
Most mailing lists include a List-ID attribute in the message headers. To filter based on this attribute, first view the message headers (View, Headers, All), then find the value of List-ID. Determine a unique keyword for this list (eg, for Bugtraq I simply use "bugtraq").
Next, create a new filter. For the condition, select Customize, type in List-ID, then click Add and OK. Now, for the condition select List-ID => contains => keyword. Finish applying the filter as usual.
Now that your label system is setup, you need to make sure it's automatically applied to incoming mail. To do this, click Tools, Message Labels. Click New, then enter a filter name (my preference is to use the same name as the filter). Next, decide on and set the criteria for the label. For example, if you want to label mail from people in your Personal Address Book, you could set Sender => is in my address book => Personal Address Book. Finally, for the action check 'Label this message', then select the appropriate label. Click OK, then repeat the process for each additional label you want to apply.
Once you've adding new filters, return to the Message Filters window. If you'd like to apply any of the filters to your current mailbox, select the filter then click Run Now. When you're finished, close the Message Filters window. From now on, Thunderbird will apply these filters to all incoming messages. Success!
If you use Thunderbird on multiple computers (like I do), you'll undoubtedly want to use the same filters and labels with each instance. This can be done by copying two files, user.js and msgFilterRules.dat, to each Thunderbird installation. user.js is found in your profile folder, and is detailed below.
msgFilterRules.dat, unfortunately, is a bit more tricky. This file is found in your actual mailbox folder. Since I use IMAP on my legroom.net mail server, my personal filters file is in profile/ImapMail/. Your path will vary, but will be similar: ImapMail (for IMAP) or Mail (for POP3) followed by your mail server. Once you're happy with your filter and label settings, copy these two files to any other Thunderbird installation and you can quickly and easily enjoy the same setup.
mail.legroom.net/msgFilterRules.dat
Finally, I present a screenshot of message highlighting in Thunderbird, in all it's multicolored glory:
Here are a few Thunderbird Extensions that I find invaluable.
Addressbook Synchronizer can syncrhonize Thunderbird address books with FTP, WebDAV, or IMAP servers, allowing you to keep the address books across multiple Thunderbird instances in sync.
The Enigmail extension integrates the authentication and encryption features provided by GnuPG.
keyconfig allows you to change keyboard shortcuts. Configuration can be difficult, so be sure to check out the examples.
The Local Install extension allows you to install extensions from the local filesystem. It also adds many additional features and options to the Extensions and Theme managers.
The Mail Redirect extension adds the ability to redirect (aka, bounce) one or more mails to one or more recipients.
The Menu Editor extension allows you to customize the menus in Thunderbird.
This extension displays an icon in the system tray when new mail arrives. It supports the standard (FreeDesktop.org) system tray, as used by GNOME, KDE and IceWM.
The No New Window on Double Click extension prevents new windows from being launched when double-clicking an item in the Folder tree. The content is loaded in the current frame, and the folder is expanded/collapsed if appropriate.
This extension adds in icon to the toolbar that toggles between the All and Normal header views.
Thunderbird offers literally hundreds of possible options and settings, and as you can imagine taking the time to review all of these setting on each and every install can become quite tiresome. To solve this problem, Thunderbird allows users to set their personal preferences in the user.js file in their profile directory (for more info on user.js, see the links in the introduction).
user.js settings have been fairly well documented throughout the web, but here are the settings that I use in my own file.
# Mozilla User Preferences
// Add List-ID Header
user_pref("mailnews.customHeaders", "List-ID");
// Address Book preferences
user_pref("mail.addr_book.lastnamefirst", 1);
// Mail Interface preferences
user_pref("browser.preferences.instantApply", true); //make window non-modal
user_pref("mail.biff.show_tray_icon", false); //don't show new mail icon
user_pref("mailnews.attachments.display.largeView", false); //small attachments
user_pref("mailnews.show_send_progress", false); //don't display send window
user_pref("mail.warn_on_send_accel_key", false); //don't prompt on Ctrl-Enter
user_pref("security.warn_entering_secure", false); //don't prompt for SSL
// Mail Navigation preferences
// Set the "Advance to next unread message in [x] folder" behavior
// 0 - Always go to the next folder without prompting
// 1 - Ask before going (the default behaviour)
// 2 - Never go to the next folder with unread messages
user_pref("mailnews.nav_crosses_folders", 0);
// Mail Reply header
user_pref("mailnews.reply_header_authorwrote", "%s wrote");
user_pref("mailnews.reply_header_ondate", "On %s");
user_pref("mailnews.reply_header_separator", ", ");
user_pref("mailnews.reply_header_type", 2);
// Password protect the message list pane
//user_pref("mail.password_protect_local_cache", true);
// Default browser, for Linux
// user_pref("network.protocol-handler.app.http", "/usr/bin/firefox");
// user_pref("network.protocol-handler.app.https", "/usr/bin/firefox");
// user_pref("network.protocol-handler.app.ftp", "/usr/bin/firefox");
# Mozilla User Preferences
/* Do not edit this file.
*
* If you make changes to this file while the browser is running,
* the changes will be overwritten when the browser exits.
*
* To make a manual change to preferences, you can visit the URL about:config
* For more information, see http://www.mozilla.org/unix/customizing.html#prefs
*/
// Auto Update preferences
user_pref("app.update.enabled", true);
user_pref("app.update.interval", 172800);
user_pref("app.update.auto", false);
user_pref("app.update.mode", 0);
user_pref("browser.search.update", false);
user_pref("extensions.update.enabled", true);
user_pref("extensions.update.interval", 172800);
// Download preferences
user_pref("browser.download.dir", "C:\\1");
user_pref("browser.download.downloadDir", "C:\\1");
user_pref("browser.download.folderList", 2);
user_pref("browser.download.useDownloadDir", true);
user_pref("mail.compose.attach.dir", "C:\\1");
user_pref("messenger.save.dir", "C:\\1");
// Message Display preferences
user_pref("mail.default_html_action", 1); //send messages in plaintext
//user_pref("mailnews.display.html_as", 3); //display sanitized (simple) HTML
//user_pref("mailnews.display.disallow_mime_handlers", 1); //part of html_as pref
// Labels and Color preferences
user_pref("mailnews.tags.$label1.color", "#DD0000");
user_pref("mailnews.tags.$label1.tag", "LOULUG");
user_pref("mailnews.tags.$label2.color", "#0000DD");
user_pref("mailnews.tags.$label2.tag", "LUGOJ");
user_pref("mailnews.tags.$label3.color", "#00CC00");
user_pref("mailnews.tags.$label3.tag", "GOLUM");
user_pref("mailnews.tags.$label4.color", "#DDDD00");
user_pref("mailnews.tags.$label4.tag", "Personal");
user_pref("mailnews.tags.$label5.color", "#CC33CC");
user_pref("mailnews.tags.$label5.tag", "Work");
user_pref("mailnews.tags.version", 2);
// Layout preferences
user_pref("mailnews.start_page.enabled", false);
user_pref("mailnews.wraplength", 72);
//user_pref("mail.show_headers", 2); //display all headers
// Miscellaneous preferences
user_pref("mail.biff.show_alert", false); //don't show new mail pop-up notice
user_pref("mail.collect_addressbook", "moz-abmdbdirectory://history.mab");
//user_pref("mail.compose.autosave", true);
user_pref("mail.mdn.report.enabled", false); //disable return receipts
user_pref("mail.phishing.detection.enabled", false);
//user_pref("mail.spellcheck.inline", true);
//user_pref("mail.spellcheckbeforesend", false);
// Addressbooks Synchronizer preferences
user_pref("extensions.addressbookssync.hidepopups", true);
user_pref("extensions.addressbookssync.protocol", "https");
user_pref("extensions.addressbookssync.syncpolicy", "file");
user_pref("extensions.addressbookssync.syncremote", true);
user_pref("extensions.addressbookssync.synctype", "imap");
user_pref("extensions.addressbookssync.usepost", true);
// Enigmail preferences
user_pref("extensions.enigmail.advancedUser", true);
user_pref("extensions.enigmail.autoKeyRetrieve", "www.keyserver.net");
user_pref("extensions.enigmail.configuredVersion", "0.95.0");
user_pref("extensions.enigmail.encryptAttachments", 2);
user_pref("extensions.enigmail.encryptAttachmentsSkipDlg", 1);
user_pref("extensions.enigmail.encryptToSelf", true);
user_pref("extensions.enigmail.keyserver", "www.keyserver.net, pgp.mit.edu, subkeys.pgp.net, random.sks.keyserver.penguin.de, ldap://certserver.pgp.com");
user_pref("extensions.enigmail.maxIdleMinutes", 180);
user_pref("extensions.enigmail.recipientsSelectionOption", 0);
user_pref("extensions.enigmail.saveEncrypted", 1);
user_pref("extensions.enigmail.useDefaultComment", true);
user_pref("extensions.enigmail.usePGPMimeOption", 2);
user_pref("extensions.enigmail.wrapHtmlBeforeSend", false);
// Keyconfig preferences
user_pref("keyconfig.main.key_getAllNewMessages", "control shift][N][");
user_pref("keyconfig.main.key_installToolsExtensions", "!][][");
user_pref("keyconfig.main.key_installToolsThemes", "!][][");
user_pref("keyconfig.main.key_selectThread", "control shift][T][");
user_pref("keyconfig.main.xxx_key__Accounts", "control shift][A][][MsgAccountManager(null);");
user_pref("keyconfig.main.xxx_key__Add-ons", "control shift][E][][openAddonsMgr();");
user_pref("keyconfig.main.xxx_key__Back", "alt][][VK_LEFT][goDoCommand('cmd_goBack')][chrome://messenger/content/messenger.xul");
user_pref("keyconfig.main.xxx_key__Forward", "alt][][VK_RIGHT][goDoCommand('cmd_goForward')][chrome://messenger/content/messenger.xul");
user_pref("keyconfig.main.xxx_key__Options", "control shift][O][][openOptionsDialog('');");
user_pref("keyconfig.version", 1);
// Local Install preferences
user_pref("local_install.ToolsExtension", true);
user_pref("local_install.ToolsOptions", true);
user_pref("local_install.contextMenuHideBrowse", true);
user_pref("local_install.contextMenuHideDown", true);
user_pref("local_install.contextMenuHideGUID", true);
user_pref("local_install.contextMenuHideTop", true);
user_pref("local_install.contextMenuHideUp", true);
user_pref("local_install.enableInstall", true);
user_pref("local_install.extensionSortList", true);
user_pref("local_install.hideExtensionMenu", true);
user_pref("local_install.hideFileRestart", true);
user_pref("local_install.hideGetMoreLink", true);
user_pref("local_install.hideHelpGetExtensions", true);
user_pref("local_install.hideHelpGetThemes", true);
user_pref("local_install.hidePasteBuildID", true);
user_pref("local_install.hideRepairExtensions", true);
user_pref("local_install.hideThemeMenu", true);
user_pref("local_install.hideToolsBuildID", true);
user_pref("local_install.hideToolsExtensionOptionsMenu", true);
user_pref("local_install.hideToolsMyConfig", true);
user_pref("local_install.hideToolsOpenProfile", true);
user_pref("local_install.hideToolsOptionsMenu", true);
user_pref("local_install.hideToolsThemeSwitcherMenu", true);
user_pref("local_install.promptOnThemeChange", false);
user_pref("local_install.prompt_disableInstallDelay", false);
user_pref("local_install.themeSortList", true);
// Mail Redirect configuration
user_pref("extensions.mailredirect.copyToSentMail", true);
// View Headers preferences
user_pref("viewheaders.auto-add", false);
Skip to: Extensions | Themes | Preferences
Mozilla Firefox is a fast, easy, and powerful web browser, brought to us by the good folks at the Mozilla Foundation. If you're reading this page, then you're probably already familiar with Firefox; so, I won't spend much time on an introduction. Just for reference, here are a few important links:
This page is intended to provide information on a few Firefox tricks that I personally find invaluable. For additional tips and tricks, please visit the links above.
Note: Many of the tips on this page assume that you are familiar with editing Firefox configuration files. Please see this Firefox Help page if you need more information.
Here are a few Firefox Extensions that I consider essential.
The Adblock Plus extension can strip nearly every kind of ad out of web pages, including Flash and Java applets, as well as help prevent pop-ups.
The Bookmark Sync and Sort extension imports/exports XBEL-formatted bookmarks and can synchronize a bookmarks file across multiple installations by uploading to an FTP or WebDAV server, as well as sort all local bookmarks.
The Copy Plain Text extension allows you to Copy text without formatting. This can be useful when pasting into other applications (such as OpenOffice or Word) that support formatted text.
The Download Statusbar extension allows you to keep track of ongoing and completed downloads in a hide-away statusbar.
DownThemAll makes it easy to download all links or images on a page in one shot.
EZNav allows you to middle-click on the navigation buttons for different effects. Forward and Backward increments or decrements numbered URLs, and reload navigates up in the URL hierarchy.
Favicon Picker 2 adds a new option in the Bookmark Manager to allow you to manually select (or clear) the Favicon associated with each bookmark.
FireBug is an integrated JavaScript, CSS, HTML, and Ajax debugger for Firefox, including an error console, command line, and inspectors
ForecastFox displays current and forecasted weather in your status bar.
The Greasemonkey extension allows users to add custom scripts to change the behavior of any web page. Many pre-written scripts can be found at Userscripts.org.
The following list is my personal favorites. The gray linked scripts are best left disabled until needed.
keyconfig allows you to change keyboard shortcuts. Configuration can be difficult, so be sure to check out the examples.
Link Alert will add a small icon beneath the mouse cursor to indicate the type link; eg, .pdf file, new window, e-mail link, etc.
The Local Install extension allows you to install extensions from the local filesystem. It also adds many additional features and options to the Extensions and Theme managers.
The Menu Editor extension allows you to customize the menus in Firefox.
NextPlease is a highly configurable extension that allows you to jump to next and previous links on multi-page articles, search results, or forum posts using keyboard shortcuts or toolbar buttons.
NoScript is a very powerful Firefox extension that allows users to restrict javascript and other executable content to only trusted domains.
The OpenBook extension allows for customization of the Add Bookmark dialog.
Page Saver allows you to save any website to a PNG image. Rather than taking a snapshot of the visible window, it draws the entire page and exports it to an image.
The Proxybutton extension provides a single toolbar button to quickly toggle your proxy on and off.
RefControl allows you to specify the referer string sent to any given website.
The Web Developer extension for adds a menu and a toolbar to the browser with various web developer tools.
These are my favorite Firefox themes.
Qute was the original default theme for Firefox, and is still by far the best! If you're looking to try new themes, this should be the first.
Firefox offers literally hundreds of possible options and settings, and as you can imagine taking the time to review all of these setting on each and every install can become quite tiresome. To solve this problem, Firefox allows users to set their personal preferences in the user.js file in their profile directory (for more info on user.js, see the links in the introduction).
user.js settings have been fairly well documented throughout the web, but here are the settings that I use in my own file.
# Mozilla User Preferences
// Accessability preferences
user_pref("ui.key.contentAccess", 4); // force Alt to open accesskey shortcuts
// Bookmark preferences
user_pref("browser.chrome.favicons", true);
user_pref("browser.chrome.site_icons", true);
// Cache and Memory preferences
user_pref("browser.cache.disk_cache_ssl", false);
user_pref("browser.cache.disk.capacity", 20480);
//user_pref("browser.cache.disk.parent_directory", "C:\\WINNT\Temp");
// Javascript and Pop-up preferences
user_pref("dom.allow_scripts_to_close_windows", false);
user_pref("dom.disable_open_click_delay", 2000);
user_pref("dom.disable_window_open_feature.close", true);
user_pref("dom.disable_window_open_feature.directories", false);
user_pref("dom.disable_window_open_feature.location", true);
user_pref("dom.disable_window_open_feature.menubar", true);
user_pref("dom.disable_window_open_feature.minimizable", true);
user_pref("dom.disable_window_open_feature.resizable", true);
user_pref("dom.disable_window_open_feature.scrollbar", true);
user_pref("dom.disable_window_open_feature.titlebar", true);
user_pref("dom.disable_window_open_feature.toolbar", true);
user_pref("dom.popup_maximum", 5);
// Performance preferences
user_pref("network.http.keep-alive", true);
user_pref("network.http.max-connections", 36);
user_pref("network.http.max-connections-per-server", 10);
user_pref("network.http.max-persistent-connections-per-server", 5);
user_pref("network.http.max-persistent-connections-per-proxy", 10);
user_pref("network.http.pipelining", true);
user_pref("network.http.proxy.keep-alive", true);
user_pref("network.http.proxy.pipelining", true);
user_pref("network.prefetch-next", false); //disable prefetch hinting
// Plugin preferences
//user_pref("plugin.expose_full_path", true);
user_pref("plugin.default_plugin_disabled", false); //disable plugin prompts
user_pref("privacy.popups.disable_from_plugins", 2); //block all except whites
// Protocol preferences (Linux)
//user_pref("network.protocol-handler.app.mailto", "/usr/bin/thunderbird");
//user_pref("network.protocol-handler.app.aim", "/usr/bin/gaim-remote uri");
// Security preferences
user_pref("network.security.ports.banned.override", "6000");
user_pref("security.dialog_enable_delay", 1000);
user_pref("security.warn_entering_secure", false);
user_pref("security.warn_leaving_secure", false);
user_pref("security.warn_submit_insecure", false);
// Spellchecker preferences
user_pref("extensions.spellcheck.inline.max-misspellings", 1000);
user_pref("layout.spellcheckDefault", 2);
// URL Bar and Window preferences
user_pref("browser.urlbar.autoFill", true);
user_pref("browser.urlbar.clickSelectsAll", false);
user_pref("browser.xul.error_pages.enabled", true);
user_pref("clipboard.autocopy", false);
user_pref("editor.singleLine.pasteNewlines", 3); //accept multiline pasted URLs
user_pref("middlemouse.contentLoadURL", false); //don't load URL on middle-click
// Window and Tab Management preferences
user_pref("browser.chrome.toolbar_tips", true);
user_pref("browser.display.show_image_placeholders", true);
user_pref("privacy.popups.showBrowserMessage", false); //disable popup bar
user_pref("browser.preferences.instantApply", true);
//user_pref("browser.tabs.closeButtons", 0); //only show on active tab
user_pref("browser.tabs.closeButtons", 3); //only show at end of tab bar
user_pref("browser.tabs.loadOnNewTab", 0); //display blank page
user_pref("browser.tabs.tabMinWidth", 70);
user_pref("browser.windows.loadOnNewWindow", 0); //display blank page
// Hardcoded Extension Preferences
// Link Alert (will be overwritten if placed in prefs.js)
// Link Alert preferences
pref("linkalert.display.border", true);
pref("linkalert.display.border.color", "#999999");
pref("linkalert.display.border.width", 1);
pref("linkalert.icons.extensions",".doc,:%LASKIN%/%LASIZE%/doc-icon.png;.exe,.msi,:%LASKIN%/%LASIZE%/app-icon.png;.js,.jse,:%LASKIN%/%LASIZE%/jse-icon.png;.flac,.mp3,.ogg,.wma,.wav,:%LASKIN%/%LASIZE%/aud-icon.png;.avi,.mov,.mpg,.wmv,:%LASKIN%/%LASIZE%/vid-icon.png;.pdf,:%LASKIN%/%LASIZE%/pdf-icon.png;.txt,:%LASKIN%/%LASIZE%/txt-icon.png;.xls,:%LASKIN%/%LASIZE%/xls-icon.png;.xpi,:%LASKIN%/%LASIZE%/xpi-icon.png;.zip,.rar,.bz2,.gz,.7z,.tar,.tbz2,.tgz,:%LASKIN%/%LASIZE%/zip-icon.png;.torrent:%LASKIN%/%LASIZE%/torrent-icon.png;.reg:%LASKIN%/%LASIZE%/reg-icon.png");
pref("linkalert.icons.protocols","aim,:%LASKIN%/%LASIZE%/aim-icon.png;ftp,:%LASKIN%/%LASIZE%/ftp-icon.png;javascript,:%LASKIN%/%LASIZE%/jsp-icon.png;mailto,:%LASKIN%/%LASIZE%/mail-icon.png;");
user_pref("linkalert.special.showNewWindow", false);
// Old
/*
// Cache and Memory preferences
user_pref("browser.cache.memory.capacity", -1);
user_pref("config.trim_on_minimize", false);
// Performance preferences
//user_pref("content.maxtextrun", 16385);
//user_pref("content.notify.interval", 10000);
// URL Bar and Window preferences
user_pref("browser.search.selectedEngine", "Google");
*/
# Mozilla User Preferences
/* Do not edit this file.
*
* If you make changes to this file while the application is running,
* the changes will be overwritten when the application exits.
*
* To make a manual change to preferences, you can visit the URL about:config
* For more information, see http://www.mozilla.org/unix/customizing.html#prefs
*/
// Auto Update preferences
user_pref("app.update.enabled", true);
user_pref("app.update.interval", 86400); //check daily
user_pref("app.update.auto", false); //prompt before updating
user_pref("extensions.update.enabled", true);
user_pref("extensions.update.interval", 86400); //check daily
user_pref("browser.search.update", true);
user_pref("browser.search.updateinterval", 24); //check daily
// Download preferences - preset for Download Statusbar
user_pref("browser.download.dir", "C:\\1");
user_pref("browser.download.downloadDir", "C:\\1");
user_pref("browser.download.folderList", 2); //save to last selected folder
user_pref("browser.download.lastDir", "C:\\1");
user_pref("browser.download.lastDir", "C:\\1");
user_pref("browser.download.manager.closeWhenDone", true);
user_pref("browser.download.manager.retention", 1); //remove on browser exit
user_pref("browser.download.manager.showAlertOnComplete", false);
user_pref("browser.download.manager.showWhenStarting", false);
// Javascript and Pop-up preferences
user_pref("dom.disable_window_move_resize", true);
user_pref("dom.event.contextmenu.enabled", false);
// Privacy preferences
user_pref("network.cookie.cookieBehavior", 1); //only from originating server
user_pref("network.cookie.lifetimePolicy", 1); //prompt to accept
user_pref("network.cookie.prefsMigrated", true);
user_pref("privacy.item.formdata", false); //do not clear saved form data
// Proxy preferences
user_pref("network.proxy.http", "localhost");
user_pref("network.proxy.http_port", 3128);
user_pref("network.proxy.share_proxy_settings", true);
user_pref("network.proxy.ssl", "localhost");
user_pref("network.proxy.ssl_port", 3128);
// Type-Ahead Find preferences
user_pref("accessibility.typeaheadfind", true);
user_pref("accessibility.typeaheadfind.autostart", true);
user_pref("accessibility.typeaheadfind.linksonly", true);
user_pref("accessibility.typeaheadfind.startlinksonly", false);
// URL Bar and Window preferences
user_pref("browser.startup.homepage", "http://www.legroom.net/metasearch");
user_pref("browser.startup.page", 0);
// Window and Tab Management preferences
user_pref("browser.link.open_newwindow", 1); //open in current window
user_pref("browser.link.open_newwindow.restriction", 2); //open legit windows
user_pref("browser.tabs.autoHide", false); //always show tab bar
user_pref("browser.tabs.loadBookmarksInBackground", true);
user_pref("browser.tabs.warnOnOpen", false);
user_pref("extensions.lastSelectedSkin", "Qute");
user_pref("general.autoScroll", false);
user_pref("general.skins.selectedSkin", "Qute");
user_pref("general.smoothScroll", false);
// Bookmarks Synchronizer preferences
user_pref("bmsync.addtag", "");
user_pref("bmsync.folderId", "rdf:#$x1W0U1");
user_pref("bmsync.host", "www.legroom.net");
user_pref("bmsync.merge", true);
user_pref("bmsync.path", "/modules/bookmarks/bookmarks.xml");
user_pref("bmsync.protocol", "https");
user_pref("bmsync.username", "bookmarks");
// CopyPlainText preferences
user_pref("copyplaintext.formatting.extra.newline", true);
user_pref("copyplaintext.formatting.extra.space", false);
user_pref("copyplaintext.formatting.trim", true);
// Download Statusbar preferences
user_pref("downbar.function.clearOnClose", true);
user_pref("downbar.function.firstRun", false);
user_pref("downbar.function.launchOnClose", true);
user_pref("downbar.function.miniMode", true);
user_pref("downbar.function.version", "0.9.4.7");
user_pref("downbar.style.db_progressbar", "background-color:#708FB5;background-image:url(chrome://downbar/skin/whiteToTransGrad.png);border-right:0px solid transparent;");
user_pref("downbar.style.speedColorsEnabled", true);
// DownThemAll preferences
user_pref("extensions.dta.alertbox", 2);
user_pref("extensions.dta.context.closedta", false);
user_pref("extensions.dta.context.closetab", false);
user_pref("extensions.dta.context.compactmenu", false);
user_pref("extensions.dta.context.downloadWin", false);
user_pref("extensions.dta.context.infophrases", false);
user_pref("extensions.dta.context.menu", "0,0,0");
user_pref("extensions.dta.context.reduce", true);
user_pref("extensions.dta.context.seltab", 0);
user_pref("extensions.dta.context.timeout", 60);
user_pref("extensions.dta.context.timeoutsel", 2);
user_pref("extensions.dta.context.tdta", false);
user_pref("extensions.dta.prealloc", false);
user_pref("extensions.dta.tool.compactmenu", true);
user_pref("extensions.dta.tool.menu", "1,1,1");
user_pref("extensions.dta.version", "0.9.9.10");
// FireBug preferences
user_pref("extensions.firebug.showChromeErrors", false);
user_pref("extensions.firebug.showCSSErrors", false);
user_pref("extensions.firebug.showJSWarnings", true);
user_pref("extensions.firebug.showMessages", true);
user_pref("extensions.firebug.showXMLHttpRequests", true);
// Forecastfox preferences
user_pref("forecastfox.cc.panel.display", 0);
user_pref("forecastfox.cc.slider.count", 3);
user_pref("forecastfox.cc.slider.enabled", false);
user_pref("forecastfox.dayf.panel.days", 2);
user_pref("forecastfox.dayt.panel.switch", 0);
user_pref("forecastfox.general.cache", "currentcache-default.xml");
user_pref("forecastfox.general.freq", 29);
user_pref("forecastfox.general.last", "1161143420556");
user_pref("forecastfox.general.locid", "38111");
user_pref("forecastfox.general.position", 2);
user_pref("forecastfox.links.dialog", "tab");
user_pref("forecastfox.pinged", "0.9.5.2");
user_pref("forecastfox.radar.panel.enabled", false);
user_pref("forecastfox.radar.tooltip.enabled", false);
user_pref("forecastfox.swa.slider.freq", 16);
user_pref("forecastfox.swa.tooltip.display", 2);
user_pref("forecastfox.units.current", "0");
// Greasemonkey preferences
user_pref("greasemonkey.editor", "C:\\Program Files\\Vim\\vi.exe");
user_pref("greasemonkey.enabled", true);
user_pref("greasemonkey.version", "0.7.20070607.0");
// Keyconfig preferences
// items to fix:
// ctrl-shift-f doesn't focus
user_pref("keyconfig.main.firefoxkey-toggle-adblock", "!][][");
user_pref("keyconfig.main.firefoxkey-launch-adblock-preferences", "!][][");
user_pref("keyconfig.main.firefoxkey-toggle-adblock-flashblock", "!][][");
//user_pref("keyconfig.main.key-view-abp-sidebar", "!][][");
user_pref("keyconfig.main.key_AboutConfig", "!][][");
user_pref("keyconfig.main.key_AboutPlugins", "!][][");
user_pref("keyconfig.main.key_inspectBack", "!][][");
user_pref("keyconfig.main.key_inspectElement", "!][][");
user_pref("keyconfig.main.key_inspectForward", "!][][");
user_pref("keyconfig.main.key_inspectPage", "!][][");
user_pref("keyconfig.main.key_installToolsExtensions", "!][][");
user_pref("keyconfig.main.key_installToolsThemes", "!][][");
//user_pref("keyconfig.main.key_installToolsOptions", "!][][");
user_pref("keyconfig.main.key_reenterCommand", "!][][");
user_pref("keyconfig.main.key_restart", "control shift][Q][");
user_pref("keyconfig.main.key_switchTextDirection", "!][][");
user_pref("keyconfig.main.key_togDownbar", "!][][");
user_pref("keyconfig.main.key_togMEoptions", "!][][");
user_pref("keyconfig.main.key_toggleInspecting", "!][][");
user_pref("keyconfig.main.webdeveloper-disable-styles-key", "!][][");
user_pref("keyconfig.main.webdeveloper-edit-css-key", "!][][");
user_pref("keyconfig.main.webdeveloper-java-console-key", "!][][");
user_pref("keyconfig.main.webdeveloper-toolbar-key", "!][][");
user_pref("keyconfig.main.webdeveloper-validate-local-html-key", "!][][");
user_pref("keyconfig.main.webdeveloper-view-css-key", "!][][");
user_pref("keyconfig.main.webdeveloper-view-source-key", "!][][");
user_pref("keyconfig.main.xxx_key19_cmd_handleBackspace", "!][][");
user_pref("keyconfig.main.xxx_key__Add-ons", "control shift][e][][BrowserOpenAddonsMgr();");
user_pref("keyconfig.main.xxx_key__Focus Content", "control shift][F][][_content.focus();");
user_pref("keyconfig.main.xxx_key__Manage Bookmarks", "control shift][B][][toOpenWindowByType('bookmarks:manager', 'chrome://browser/content/bookmarks/bookmarksManager.xul');");
user_pref("keyconfig.main.xxx_key__Manage User Scripts", "control shift][U][][window.openDialog('chrome://greasemonkey/content/manage.xul', 'manager', 'resizable,centerscreen,modal');");
user_pref("keyconfig.main.xxx_key__Move Tab to the Left", "shift][][VK_LEFT][if(gBrowser.mCurrentTab.previousSibling) gBrowser.moveTabTo(gBrowser.mCurrentTab,gBrowser.mCurrentTab._tPos-1);");
user_pref("keyconfig.main.xxx_key__Move Tab to the Right", "shift][][VK_RIGHT][if(gBrowser.mCurrentTab.nextSibling) gBrowser.moveTabTo(gBrowser.mCurrentTab,gBrowser.mCurrentTab._tPos+1);");
user_pref("keyconfig.main.xxx_key__Options", "control shift][O][][toOpenWindowByType('Browser:Options', 'chrome://browser/content/preferences/preferences.xul');");
user_pref("keyconfig.main.xxx_key__Page Info", "control shift][I][][window.openDialog('chrome://browser/content/pageInfo.xul');");
user_pref("keyconfig.main.xxx_key__ProxyButton Switch", "control shift][P][][proxybutton_switchProxy();][");
user_pref("keyconfig.main.xxx_key__Send Mail", "control][M][][loadURI(href=\"mailto:\");");
//user_pref("keyconfig.main.xxx_key__Undo Close Tab", "control shift][u][][SessionManager.undoCloseTab();;][");
user_pref("keyconfig.version", 1);
user_pref("keyconfig.warnOnDuplicate", false);
// Local Install preferences
user_pref("local_install.ToolsExtension", true);
user_pref("local_install.ToolsOptions", true);
user_pref("local_install.ToolsThemes", true);
user_pref("local_install.addonsEnabled", true);
user_pref("local_install.disableInstallDelay", false);
user_pref("local_install.enableInstall", true);
user_pref("local_install.hideArchiveJAR", true);
user_pref("local_install.hideArchiveXPI", true);
user_pref("local_install.hideExtensionMenu", true);
user_pref("local_install.hideGetMoreLink", true);
user_pref("local_install.hideHelpAbout", true);
user_pref("local_install.hideHelpGetExtensions", true);
user_pref("local_install.hideHelpGetThemes", true);
user_pref("local_install.hideManagerMenuBar", true);
user_pref("local_install.hideMenuIcons", true);
user_pref("local_install.hidePasteBuildID", true);
user_pref("local_install.hideRepairExtensions", true);
user_pref("local_install.hideThemeMenu", true);
user_pref("local_install.hideToolsBuildID", true);
user_pref("local_install.hideToolsExtensionOptionsMenu", true);
user_pref("local_install.hideToolsMyConfig", true);
user_pref("local_install.hideToolsOpenProfile", true);
user_pref("local_install.hideToolsOptionsMenu", true);
user_pref("local_install.hideToolsThemeSwitcherMenu", true);
user_pref("local_install.promptOnThemeChange", false);
user_pref("local_install.prompt_disableInstallDelay", false);
user_pref("local_install.selected_settings_sub_tab1", 1);
user_pref("local_install.selected_settings_sub_tab2", 1);
user_pref("local_install.selected_settings_sub_tab3", 2);
user_pref("local_install.selected_settings_sub_tab5", 1);
user_pref("local_install.selected_settings_tab", 1);
user_pref("local_install.showEMMenuButton", false);
user_pref("local_install.showMyConfigMenuButton", false);
user_pref("local_install.showRestartMenuButton", false);
user_pref("local_install.showTMMenuButton", false);
user_pref("local_install.useCustomThrobberClick", false);
// Miscellaneous Extension preferences
user_pref("extensions.videodownloader.boolpref", false);
// NextPlease preferences
user_pref("nextplease.allowcontextmenu", false);
user_pref("nextplease.firstkeymodifier", "CTRL");
user_pref("nextplease.keymodifier", "CTRL");
user_pref("nextplease.lastkeymodifier", "CTRL");
user_pref("nextplease.prevkeymodifier", "CTRL");
// NoScript preferences
user_pref("capability.policy.maonoscript.Clipboard.cutcopy", "allAccess");
user_pref("capability.policy.maonoscript.Clipboard.paste", "allAccess");
user_pref("capability.policy.maonoscript.javascript.enabled", "allAccess");
user_pref("capability.policy.maonoscript.sites", "10pix.com 169.198.40.42 amazon.com archive.org asus.com ati.com autoitscript.com autozone.com autozoneinc.com avantgo.com bellsouth.com bestbuy.com bluecoat.com buy.com c1pher.com checkpoint.com cirquedusoleil.com cisco.com creative.com dell.com deviantart.com digg.com dreamhost.com dvdpricesearch.com dyndns.org eff.org fileden.com filerom.com firsttennessee.com freefilehost.co.uk gentoo.org gigabyte.com.tw google.com hp.com hydrogenaudio.org ibm.com imagehosting.gr imagemonk.com imagez.org intel.com ipaper.com jotti.org kubuntu.org legroom.net linksys.com logitech.com maxuploader.com megaupload.com microsoft.com mlgw.com mozdev.org mozilla.com mozilla.org mozillazine.org msfn.org myspace.com newegg.com ninjawords.com nvidia.com nzone.com opensourcecms.com oreilly.com oreillynet.com palm.com passport.net php.net quirksmode.org rapidshare.com rapidshare.de sans.org share-it.to slashdot.org sourceforge.net subnetmask.info sun.com symantec.com twit.tv ubuntu.com usatoday.com userscripts.org virustotal.com vmware.com vorbis.com webex.com wikipedia.org wired.com yahoo.com yimg.com about:config about:credits about:neterror about:plugins chrome: http://169.198.40.42:8082 http://169.198.40.42:8987 http://condor.autozone.com:18080 http://evo01.autozone.com:8080 http://firedome.autozone.com:8090 http://isetta.autozone.com:8090 http://rio.autozone.com:18080 http://sable.autozone.com:8080 http://safari.autozone.com:6000 http://skylark.autozone.com:18080 http://teamtrack.autozone.com:9090 resource:");
user_pref("noscript.allowBookmarks", false);
user_pref("noscript.allowClipboard", true);
user_pref("noscript.ctxMenu", false);
user_pref("noscript.filterXGet", false);
user_pref("noscript.filterXPost", false);
user_pref("noscript.firstRunRedirection", false);
user_pref("noscript.fixLinks", false);
user_pref("noscript.forbidJava", false);
user_pref("noscript.forbidMetaRefresh", true);
user_pref("noscript.notify", false);
user_pref("noscript.notify.hide", true);
user_pref("noscript.version", "1.1.4.8.070602");
// Page Saver preferences
user_pref("pagesaver.entirepage", true);
user_pref("pagesaver.hidecontextmenuitems", true);
user_pref("pagesaver.imagesize", "100%");
user_pref("pagesaver.key", "S");
user_pref("pagesaver.key.friendly", "Ctrl+Shift+S");
user_pref("pagesaver.key.modifiers", "control,shift");
user_pref("pagesaver.lastVersion", "1.5");
user_pref("pagesaver.playsoundoncapture", true);
user_pref("pagesaver.toolbariteminstalled", true);
// OpenBook preferences
user_pref("openbook.autoDo", 1);
user_pref("openbook.autoSelect", 1);
user_pref("openbook.showBookmarksToolbar", true);
user_pref("openbook.showMenulist", true);
user_pref("openbook.showURL", true);
// RefControl preferences
user_pref("refcontrol.contextMenu", false);
user_pref("refcontrol.statusbar", 0);
// Webdeveloper preferences
user_pref("webdeveloper.context.hide", true);
user_pref("webdeveloper.display.element.information.key", "");
user_pref("webdeveloper.edit.css.key", "");
user_pref("webdeveloper.edit.java.console.key", "");
user_pref("webdeveloper.open.java.console.key", "");
user_pref("webdeveloper.populate.form.fields.email", "anon@ymous.com");
user_pref("webdeveloper.resize.1.description", "640x480");
user_pref("webdeveloper.resize.1.height", 480);
user_pref("webdeveloper.resize.1.width", 640);
user_pref("webdeveloper.resize.2.description", "800x600");
user_pref("webdeveloper.resize.2.height", 600);
user_pref("webdeveloper.resize.2.width", 800);
user_pref("webdeveloper.resize.3.description", "1024x768");
user_pref("webdeveloper.resize.3.height", 768);
user_pref("webdeveloper.resize.3.width", 1024);
user_pref("webdeveloper.resize.4.description", "1152x864");
user_pref("webdeveloper.resize.4.height", 864);
user_pref("webdeveloper.resize.4.width", 1152);
user_pref("webdeveloper.resize.5.description", "1280x1024");
user_pref("webdeveloper.resize.5.height", 1024);
user_pref("webdeveloper.resize.5.width", 1280);
user_pref("webdeveloper.resize.count", 5);
user_pref("webdeveloper.toolbar.key", "");
user_pref("webdeveloper.validate.local.html.key", "");
user_pref("webdeveloper.version", "1.1.4");
user_pref("webdeveloper.view.css.key", "");
user_pref("webdeveloper.view.source.with.1.description", "Vim");
user_pref("webdeveloper.view.source.with.1.key", "v");
user_pref("webdeveloper.view.source.with.1.path", "C:\\Program Files\\Vim\\vi.exe");
user_pref("webdeveloper.view.source.with.count", 1);
// Adblock preferences
user_pref("adblock.patterns", ".etology.com .m3.net /(absolute|ad|aff(/|iliate.*)|assets/|iframe|live-?|net|partypoker.*|professor|sales|serve|user|video|view|werbe)_?banner/ /(adwork\\.net|(bannex|mbn)\\.com)\\.ua/ /(amazon\\.\\w+.*|barnesandnoble\\.com/p.*)(&search=|amb%5F(gw|skin)|amzban|banner|cm\\?t|marketing(/2|.+html)|promo|stripe?s?\\W|tcg.*\\.[gj])/ /(be|context|impresiones)web\\.com/ /(bf|flyc|unic)ast\\.com/ /(bravenetmedia|openad)network\\.com/ /(casaleme|rightme|travi|vibrantme)dia/ /(dtm|reactiv|regiede)pub\\.com/ /(jupiter|mercury)\\.bravenet/ /.(ad|ncs)reporting\\.com/ //(adt|dclk)\\./ //banners/\\w*\\.\\w{3}\\?/ //ccas(\\.clearchannel|_media/)/ /[/&](affiliates?|revenue)((.*\\d+x)?\\d+|\\.pl|\\.swf|fuel|pilot|/(banner|script)s?/)/ /[/.]overture(/|.*?.*=|\\w*\\.js|\\.com)/ /[/^a-z\\d=+](get|web)?_?spons?(or(ed|s))?_?(links?)?(pots?)?(\\W|_|$)(?!.*sigalert)/ /[^\\w=+]promo(\\w*\\.js|banner|box)(?!(\\.js)?\\?)(\\W|_|$)/ /[^a-z\\d=+]\\d*((cible|com|context|double|euro(s4)?|fast|fine|pay-by-|precision|smart|specific|value)_?clicks?|clicks?(2net|adhere|ban\\.php|bank\\.net|booth(lnk?)\\.com|over|sor\\.com|tag|thrutraffic|trade|xchange))(\\W|$)(?!but)/ /[^a-z]banners?[/._-]?(.*(\\d+x\\d+\\.swf|\\.f?pl|_hits\\.asp\\?|redir|siteid=)|\\.(cgi|js|php)|ad|affiliate|central|click|connect|count|current|exchange|file|grocery|id|man(age(ment|r)|ia)|newsletter|/_?promo|/rotat|/?script|serve|skyscraper|space\\.|swap|tausch|trust)/ /\\.(adquest|site-id|geldrace)\\.nl/ /\\.emediate.\\w{2,3}/ /\\W(absolutebm|aff_manager|annon(s(er)?|coer)|anzeigenklick|bannerit|centrport|clickad|clk_thru|contextuallinks?|falkag|klipmart|mainos(include)?|mediaturf|nyadmcncserve|offerfusion|partnermanager|paypopup|redirect.*banner|sitecatalyst|tacoda|tns-gallup|weborama|werbung|(hit|spin|google/)box(?!\\.org))[\\W_]/ /\\W(adcase|adi\\.meinberlin|(affiliate|popdown|view4)cash|allsponsor|belboon|deluxelink|gonamic|ivwbox|klicksponsor|ligatus|mediavantage|mirando|pay4klick|popexchange|ptadsrv|superclix|tfag|webmaster24|zanox-affiliate)\\.de/ /\\Wimg(is|ehost)\\.com/ /\\Woverlay.js/ /\\d+x\\d+.*scraper/ /affiliate(future|sensor)\\.com/ /banman(\\.asp|pro)/ /bs\\d{3,}\\.gmx/ /direct(ivepub|orym|track)\\.com/ /imdb.com.*\\.swf/ /instant(attention|buzz)\\.com/ /intelli(-direct\\.com|srv\\.(js|net)|txt)/ /inter(click|polls)\\.com/ /link(buddies|connector\\.com|exchange|share|synergy)/ /market(ing(/images/\\d|/?promo)|banker\\.com)/ /media((next|plazza)\\.com|onenetwork\\.net)/ /oasis(i.{0,3}\\.php|\\.zmh)/ /partner(\\.eniro\\.|2profit\\.com)/ /popu(larix\\.com|nder\\W|pad\\W|pkp)/ /qks(rv|z)\\.net/ /search(cactus|feed)\\.com/ /shopping.msn.com/.*ptnrId=/ /sonnerie.*get.top/ /traffic(mp|system)\\.com/ /yimg\\.com(.*/adv/|/a/)(?!vision)/ 0instant.com 1100i.com 125x125.com 265.com 2o7.net action.ientry.net adsence.sogou.com adserveredirect afcyhf.com affistats.com aftrack.asp aj.600z.com allyes.com anrdoezrs.net artbanners/task,clk atdmt.com atwola.com audiencematch.net avolutia.com awaps.net awltovhc.com awrz.net baventures.com bbmedia.cz belnk.com bidvertiser.com biz2008.com blogclick.jp bluestreak.com bncnt.com bns1.net bridgetrack.com bs.yandex.ru budsinc.com cashregie.com cc-dt.com checkm8.com chitika.net cjt1.net cognigen.net commission-junction.com connextra.com cpaffiliates.net cpxinteractive.com custom-click.com cxtlive.com dbbsrv.com dgm2.com did-it.com directtrack.com dope.dk ekmas.com el-mundo.net/banners entitycity.com eshopoffer.aspx espotting.com excite.com/gca_iframe eyewonder.com factortg.com filetarget.com filitrac.com findology.com floppybank.com forrestersurveys.com ftjcfx.com funpic.de/layer geocities.com/js_source/ gestionpub.com getban.php getfound.com gms1.net hb.lycos.com idregie.com ifactz.com impact.as imrworldwide.com indiads.com industrybrains.com inetinteractive.com insightfirst.com java.yahoo.com/a jdoqocy.com kanoodle.com kelkoo.fr keymedia.hu keyrun.com kontera.com kqzyfj.com lapi.ebay. lduhtrp.net leadhound.com localxml.com log.go.com lycos.com/catman/ maxserving.com mediaprecision.net mercuras.com metaffiliation.com midaddle.com mms3.com myreferer.com mytemplatestorage.com myway.com/getSponsLinks narrowad.com netavenir.com netshelter.net northmay.com nvidium.com nytimes.com/marketing oclus.com omguk.com pro-market.net promobenef.com promotionad publicidad.js questionmarket.com rad.msn.com realmedia.com redcolobus.com redsheriff.com reklamer.com.ua/ban/ revsci.net ru4.com serving-sys.com shareasale.com showyoursite.com si-net.se smarttargetting.co spotsystems.info sublimemedia.net subscriptionrocket.com suitesmart.com surehits.com targetpoint.com tipsurf.com tkqlhce.com toplaboom.com tqlkg.com tradedoubler.com urltrak.com utarget.co.uk webex.ru xban.walla.co.il yceml.net yieldx.com zedo.com zoomdirect.com.au img.rip-productions.org/skins/milla/riplog2.jpg images.rapidforum.com/rapidshare/* sexuploader.com/*.swf images.anandtech.com/banners/* images.slashdot.org/body-bg.png commercialappeal.com/holideals/* http://www.gigabyte.com.tw/FileList/Banner/*.swf channelintelligence.com/ */onlineopinionF3c/* google-analytics.com/ */phpAdsNew/* nedstatbasic.net/ webstats4u.com/ extreme-dm.com/ statcounter.com/ tradepub.com/ sandbox.sourcelabs.com/ sitemeter.com/ neoffic.com/ adod.info/ inxhost.com/ assoc-amazon.com/ mediaplex.com/ aolcdn.com/ tribalfusion.com/ googlesyndication.com/* burstnet.com/ grepblogs.net/ adbureau.net/ idmnet.pl/ 4u.pl/ gemius.pl/ addfreestats.com/ .ihost.com/ cybermonitor.com/ tv-radio.com/ webtrendslive.com/ yieldmanager.com/ ads.betanews.com/ stats.wired.com/ adbrite.com/ web.commercialappeal.com/ads/ advertserve.com/ pa.penny-arcade.com/ internettrafficreport.com/ topica.com/ allposters.com/ zeads.com/ adtology*.com/ advertising.com/ 128.241.244.123 myip.ipaper.com/miniapps/ http://www.imagebeaver.com/images/*.gif http://maxuploader.com/images/name.jpg pointroll.com/ adserver.securityfocus.com/ ostbum.html adbrite.html clickhype.com/ adzones.com/ mate1.com/ amateurmatch.com/ awempire.com/ juggcrew.com/ adinterax.com/ http://content.imagesocket.com/images/Poison_SF4d2.jpg sponsorads.de/");
// Old
/*
// Download preferences
user_pref("plugin.disable_full_page_plugin_for_types", "video/x-ms-asf-plugin,application/x-mplayer2,video/x-ms-wm,audio/x-ms-wma,audio/x-ms-wax,video/x-ms-wmv,video/x-ms-wvx");
// Javascript and Pop-up preferences
user_pref("dom.disable_open_during_load", true);
user_pref("dom.disable_window_flip", true);
user_pref("dom.disable_window_open_feature.status", true);
// Window and Tab Management preferences
//user_pref("browser.preferences.privacy.selectedTabIndex", 4);
// Adblock Plus preferences
user_pref("extensions.adblockplus.checkedadblockinstalled", true);
user_pref("extensions.adblockplus.checkedadblockprefs", true);
user_pref("extensions.adblockplus.checkedadblocksync", true);
user_pref("extensions.adblockplus.checkedtoolbar", true);
user_pref("extensions.adblockplus.detachsidebar", true);
user_pref("extensions.adblockplus.showinstatusbar", true);
user_pref("extensions.adblockplus.showintoolbar", false);
user_pref("extensions.adblockplus.showsubscriptions", false);
// Chickenfoot preferences
user_pref("chickenfoot.installed", true);
// ColorZilla preferences
user_pref("colorzilla.autocopy-enabled", "true");
user_pref("colorzilla.lowercase-hexa", "true");
user_pref("colorzilla.show-page-context-menu", "false");
// LiveLines preferences
user_pref("livelines.FindRSS", true);
user_pref("livelines.OpenBookmarkWindow", true);
user_pref("livelines.addtoExtension", true);
user_pref("livelines.copytoClipboard", true);
// Miscellaneous Extension preferences
user_pref("cutemenus.enabled", true);
user_pref("cutemenus.skin", false);
user_pref("extensions.retrofind.useDefaultInterface", false);
// Sage preferences
user_pref("sage.allow_encoded_content", true);
user_pref("sage.auto_feed_title", true);
user_pref("sage.feed_discovery_mode", "exhaustive");
user_pref("sage.feed_item_order", "chrono");
user_pref("sage.folder_id", "rdf:#$sjiFt3");
user_pref("sage.last_version", "1.3.8");
user_pref("sage.render_feeds", true);
// Session Manager preferences
user_pref("extensions.sessionmanager.backup_session", 0);
user_pref("extensions.sessionmanager.max_closed_undo", 4);
user_pref("extensions.sessionmanager.max_tabs_undo", 8);
user_pref("extensions.sessionmanager.session_list_order", -2);
user_pref("extensions.sessionmanager.submenus", true);
// Tabscroller preferences
user_pref("tabscroller.dependsOnWheelDir", false);
user_pref("tabscroller.enableWindowMode", false);
user_pref("tabscroller.historyFirst", false);
user_pref("tabscroller.instantScroll", false);
user_pref("tabscroller.justTabScroll", true);
user_pref("tabscroller.leftButton", false);
user_pref("tabscroller.maxRows", 20);
*/