Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Mozilla, Firefox and Thunderbird tips and tricks
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3, 4, 5  Next  
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Wed Mar 02, 2005 3:32 am    Post subject: Mozilla, Firefox and Thunderbird tips and tricks Reply with quote

Hi.
Im hoping this thread will become a nice big repository of useful little hacks and so on that people have found for getting the most out of the mozilla project's various apps.
Sorta things that Id like to see here are lesser-known extensions for the apps, or extensions you think are really useful/cool, font help (this seems to be a recurring issue), tweaks of the preference settings through
Code:
about:config
or elsewhere, people's individual userContent.css and userChrome.css settings, if youve got something particularly nice in them etc....
Try to keep it clear of "Help me, firefox doesnt work" posts, if you have an issue, start a new thread. Its fine to ask about more info on any of the tips that are posted and that sort of thing.
This will also, if it takes off, serve as a basis for either a HOWTO in the documentation section of the forums, or a big wiki article.


Last edited by transient on Fri Mar 04, 2005 4:15 am; edited 1 time in total
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Wed Mar 02, 2005 3:52 am    Post subject: Reply with quote

And so, to get things started, heres some basic info on what exactly the userContent.css and userChrome.css files do.
Within each application's directory (By default, ~/.mozilla/appname), you will find a directory for each profile youve created. Go into the dir for the profile you use, which will be somerandomstring.default by default, and you will find a directory called "chrome".
Within here, you can create two files called userContent.css and userChrome.css. These files allow you to customize the appearance of not only websites, but the actual mozilla UI (User Interface). With them, you can set fonts for your tabs, allow particular menu options to appear when you rightclick on a webpage, force websites to not be able to use the horribly annoying
Code:
<blink>
and
Code:
<marquee>
tags, and even block particular types of elements from loading at all.

To know how these files work, its neccesary to learn a bit about how mozilla actually creates it's UI and webpage displays.
Mozilla (And its derivates, firefox and thunderbird) uses a language called XUL to define how everything within the mozilla window is layed out. XUL allows for creating scrollbars, menus, popups, buttons and so on. The window youre staring at when you read this has been created out of nothing more than a few text files.
XUL however, only specifes what a particular thing does, not how it looks. XUL might say that a scrollbar will move a page down when you click on it and move your mouse down, but it doesnt describe how that scrollbar should look.
This is done through CSS (Cascading Style Sheets), a web technology used in webpages to provide style and appearance information.
CSS can specify almost everything about the appearance of a particular element. From the colour, to the font size, visibility, margins, positioning on the screen, right down to how text is aligned within an element and whether or not the first letter of a line is made
Bigger.

Using CSS and the two files I mentioned above, you can control the appearance of webpages and the browser yourself, even over what your theme or the webpage's author wants.

Heres some simple examples to show you how the files work. Im not going to go over how CSS works here in any great depth as its a big subject. Needless to say, theres many tutorials on the web about it.

userContent.css is used to control the appearance of webpages, while userChrome.css is used to control the appearance of the actual browser.

Within userContent.css, add the following:
Code:
a[href^="mailto:"] {
color: blue !important;
text-decoration: non !important;
}
a[href^="mailto:"]:before {
content: "\2709 " !important;
}

This will have the effect of making all "mailto:" URLs (IE all email links) have a blue colour, and never be underlined.
It will also draw a small envelope character in front of them, to make it more clear what they are.

Say you wanted to make all Javascript URLs green, for whatever reason, you can do this:
Code:
a[href^="javascript:"] {
color: green !important;
text-decoration: line-through !important;
}


That will also draw a line through javascript links.


Within userChrome.css, you can use CSS rules to control the appearance of the browser itself. For example, if you wanted to change the background image used on the throbber (That little spinning thing in the topright of the browser), you can do the following:
Code:
#throbber-box {
background-image: url("/path/to/your/image") !important;
}


Thatll do for now. If you want to look into userChrome.css more deeply, the DOM inspector is your best friend. Just tell it to open the chrome URL, chrome://browser/content/browser.xul and you can check the IDs and classes for each element.
Back to top
View user's profile Send private message
Deathwing00
Bodhisattva
Bodhisattva


Joined: 13 Jun 2003
Posts: 4087
Location: Dresden, Germany

PostPosted: Wed Mar 02, 2005 1:34 pm    Post subject: Reply with quote

Moved from Desktop Environments.
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Thu Mar 03, 2005 2:44 pm    Post subject: Reply with quote

And for some more examples of the user*.css files, heres my complete ones for firefox and thunderbird:
commented so people know what each rule actually does

Firefox userContent.css
Code:

/* Change javascript URLs to be green in colour, for easier identification */
a[href^="javascript:"] {
        color: green !important;
}
/* All mailto URLs are blue, and have a little envelope in front of them */
a[href^="mailto:"] {
        color: blue !important;
        text-decoration: none !important;
}
a[href^="mailto:"]:before {
        content: "\2709 " !important;
}
/* Disable blinking and moving text, cuz its just annoying */
blink {
        text-decoration: none ! important;
}
marquee {
        -moz-binding: none ! important;
}
/* This one will display the accesskey after any element its set for. You can change it to only apply to links by changing
the * to a 'a' */
*[accesskey]:after {
        content: " {" attr(accesskey) "}";
}
/* This will change the cursor to a crosshair when it moves over a link that opens in a new window */
:link[target="_blank"], :visited[target="_blank"],
:link[target="_new"],   :visited[target="_new"] {
        cursor:  crosshair !important;
}
/* These are settings that make it more obvious which element has the focus */
a:focus {
        -moz-outline: 2px dotted ! important;
}
button:-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
        border: 2px dotted transparent;
}
button:focus::-moz-focus-inner,
input[type="reset"]:focus::-moz-focus-inner,
input[type="button"]:focus::-moz-focus-inner,
input[type="submit"]:focus::-moz-focus-inner {
        border-color: ButtonText;
}
/* This will give form buttons nice rounded corners. It can look kinda ugly though, so tweak the background colours
accordingly */
input[type="button"], input[type="submit"] {
        -moz-border-radius: 18px !important;
        background: #eee !important;
}

Firefox userChrome.css:
Code:

/* This line must be present here! */
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/* This gives the URL bar a monospace font, which I like */
#urlbar {
        font-family: monospace !important;
}
/* This hides the "Help" and "Go" menus from appearing, to save space */
menu[label="Go"], menu[label="Help"] {
        display: none !important;
}
/* This causes all non-read tabs to have italicised text and be coloured blue */
#content tab:not([selected]) {
        font-style: italic !important;
        color: blue !important;
}
/* This increases the size of the searchbar (The bar next to the URL bar, that you can search in Google and so on */
#search-container, #searchbar {
        -moz-box-flex: 200 !important;
}
/* These settings remove some of the space around the menu items in mozilla, making it take less space */
.toolbarbutton-1, .toolbarbutton-menubutton-button {
        padding: 2px 3px !important;
}
.toolbarbutton-1[checked="true"], .toolbarbutton-1[open="true"],
.toolbarbutton-menubutton-button[checked="true"],
.toolbarbutton-menubutton-button[open="true"] {
        padding: 4px 1px 1px 4px !important;
}

Thunderbird userContent.css:
Code:

/* This just has the effect of colouring each quote in an email. It colours each one differently, so you can easily
tell them apart */
blockquote[type=cite] {
        color: navy !important;
        background-color: RGB(245,245,245) !important;
}
blockquote[type=cite] blockquote {
        color: maroon !important;
        background-color: RGB(235,235,235) !important;
}
blockquote[type=cite] blockquote blockquote {
        color: green !important;
        background-color: RGB(225,225,225) !important;
}
blockquote[type=cite] blockquote blockquote blockquote {
        color: purple !important;
        background-color: RGB(215,215,215) !important;
}
blockquote[type=cite] blockquote blockquote blockquote blockquote {
        color: teal !important;
        background-color: RGB(205,205,205) !important;
}


Last edited by transient on Fri Mar 04, 2005 2:22 am; edited 2 times in total
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Fri Mar 04, 2005 1:17 am    Post subject: Reply with quote

The Adblock extension

The adblock is one of the most useful and powerful extensions for Firefox around. It allows you to block not only advertisments, but also any element on a webpage you care to. Iframes, frames, images, javascript, java applets, you name it. It also collapses the removed element, so you dont even notice anythings missing.
If you install it, download this file. It contains a large amount of regular expressions that block all known ads so far, which saves a lotta time :P
Once youve saved the file, open up the adblock preferences, Tools->Adblock->Preferences->Adblock Options and click Import filters. Then just point it to the downloaded file, and say goodbye to everything from doubleclick.net, etc... :)
Back to top
View user's profile Send private message
Fly3D
n00b
n00b


Joined: 27 May 2004
Posts: 24
Location: Canada

PostPosted: Fri Mar 04, 2005 3:30 am    Post subject: Reply with quote

Speed that sucker up! Like it isn't already fast enough. :lol:

1.Type "about:config" into the address bar. Scroll down and look for the following:

Code:
network.http.pipelining
network.http.proxy.pipelining
network.http.pipelining.maxrequests


Normally the browser will make one request to a web page at a time. When you enable pipelining it will make several at once.

2. Change the entries as follows:

Set "network.http.pipelining" to "true"

Set "network.http.proxy.pipelining" to "true"

Set "network.http.pipelining.maxrequests" to the number of requests you want the browser to make at once. 5 or 6 is perfectly adequate and shouldn't cause unecesary strain on the webserver. (please play nice!) :)

3. Right-click anywhere and select New --> Integer. Name it "nglayout.initialpaint.delay" and set its value to "0". This value is the amount of time the browser waits to start rendering the page.

If you're using a broadband connection you'll load pages much faster.

Enjoy...
_________________
#include <stdio.h>

main()
{
printf("Where are we going? ... And why am I in this handbasket?\n");
}
Back to top
View user's profile Send private message
gnac
Guru
Guru


Joined: 30 Jun 2003
Posts: 302
Location: Columbia River Gorge

PostPosted: Fri Mar 04, 2005 3:48 am    Post subject: Setting Thunderbird to open links in Firefox Reply with quote

I found this on a number of other threads (some of which you [transient] participated in) and thought it made sense to repeat it here since this thread's goal is to be a common repository of tips and tricks. I apologize to the original posters for not quoting them here.

Tip:
If you want thunderbird to open links in email in firefox add the following lines to the ~/.thunderbird/default.???/user.js file. if the user.js file doesn't exist, create it.
You should probably do this when thunderbird isn't open because I think it will overwrite your settings when you close it. You should also be able to use any other browser at your discretion. I recommend Internet Explorer :twisted:


Code:
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");


Also if you want to be able to have mailto links open thunderbird add this:

Code:
user_pref("network.protocol-handler.app.mailto", "/usr/bin/thunderbird");

_________________
"I thought she'd steal my heart, instead she stole my kidney,
and now its for sale, on the black market in Sydney" - Better Abraham
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Fri Mar 04, 2005 4:01 am    Post subject: Reply with quote

Awesome, thanks for that :)
Lets get some more people posting too :P

Next up, with a little bit of elaboration on gnac's post,
Registering other protocols in Firefox and Mozilla. Thunderbird too.

Theres a large number of other protocols that get used in webpages on occasions. You have the irc:// protocol, mms://, telnet:// and more.
There is an extension that allows for easy registering of telnet, ftp, and downloading to external applications, but it doesnt handle arbitrary protocols. This plugin is called Mozex and its located on www.mozdev.org if youre interesed in looking at it.
There are two ways to let mozilla handle a particular protocol. You can either register the protocol handler with mozilla itself, so that mozilla can display and get information itself. Many plugins do this, the realplayer plugin for example. This however, requires you to create a mozilla component, which is beyond the capabilities of most people.
The second way is to tell mozilla to open an external application to handle anything from that protocol.
Say you clicked on a link in a webpage that says irc://irc.freenode.org/gentoo (The #gentoo channel on Freenode :P), and you wanted it to open in xchat.

To do this, open up your user.js file. It is located in your profile directory, which for Firefox, is located in
Code:
~/.mozilla/firefox/xxxxxxxx.default/user.js
For Mozilla, its in a similar place.
To this file, add the following lines:
Code:

user_pref("network.protocol-handler.external.irc", true);
user_pref("network.protocol-handler.app.irc", "/usr/bin/xchat-2");

What these two lines do is to tell mozilla that you want any URLs of type irc:// to be handled externally, and to use the /usr/bin/xchat-2 application to do that handling.
The first preference, network.protocol-handler.external.xxx is a boolean value that says whether or not mozilla should handle a particular protocol itself. Replace "xxx" with the protocol you want to handle. For irc://, you would set "xxx" to "irc". For mms:// you would set "xxx" to "mms".

The second preference specifies the full path to the application (or anything for that matter. It can be a shellscript if you want) that you want to handle that protocol.
It takes the form network.protocol-handler.app.xxx, where "xxx" is whatever protocol you added in the first preference.

Complex note follows....
Mozilla will invoke whatever is specified here, passing it the full URL as a commandline argument. So in the case of xchat, mozilla will execute the following command:
Code:
/usr/bin/xchat-2 irc://irc.freenode.org/gentoo
Now, if the application you specified doesnt know how to handle a URL as an argument, you will need to write a shellscript to take that argument, and split it up into something the application can handle.

Now, you can open all irc:// links in xchat, from firefox :)

Heres one to test it out :P
Join #gentoo through a URL
Back to top
View user's profile Send private message
bravecobra
Tux's lil' helper
Tux's lil' helper


Joined: 26 Dec 2002
Posts: 130
Location: Planet Earth (sometimes)

PostPosted: Fri Mar 04, 2005 5:58 am    Post subject: Reply with quote

Nice one transient, what command to use when xchat-2 is already open and connected? Now it starts up a new instance.
_________________
Brave Cobra
http://www.bravecobra.com
Back to top
View user's profile Send private message
truekaiser
l33t
l33t


Joined: 05 Mar 2004
Posts: 801

PostPosted: Fri Mar 04, 2005 6:27 am    Post subject: Reply with quote

Fly3D wrote:
Speed that sucker up! Like it isn't already fast enough. :lol:

1.Type "about:config" into the address bar. Scroll down and look for the following:

Code:
network.http.pipelining
network.http.proxy.pipelining
network.http.pipelining.maxrequests


Normally the browser will make one request to a web page at a time. When you enable pipelining it will make several at once.

2. Change the entries as follows:

Set "network.http.pipelining" to "true"

Set "network.http.proxy.pipelining" to "true"

Set "network.http.pipelining.maxrequests" to the number of requests you want the browser to make at once. 5 or 6 is perfectly adequate and shouldn't cause unecesary strain on the webserver. (please play nice!) :)

3. Right-click anywhere and select New --> Integer. Name it "nglayout.initialpaint.delay" and set its value to "0". This value is the amount of time the browser waits to start rendering the page.

If you're using a broadband connection you'll load pages much faster.

Enjoy...

Warning!

you will mini-dos what ever server you connect to. you can and will be black listed by web servers that monitor # of connections per uniqe ip.
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Fri Mar 04, 2005 6:30 am    Post subject: Reply with quote

bravecobra wrote:
Nice one transient, what command to use when xchat-2 is already open and connected? Now it starts up a new instance.

You cant using xchat unfortunately. To do what youre asking is something that the actual application must support itself. If you can find an IRC client that allows you to interact with an already-running session, you could make the irc:// URLs open in that session.
Kinda like the
Code:
firefox -remote
commands.

Last edited by transient on Fri Mar 04, 2005 6:46 am; edited 1 time in total
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Fri Mar 04, 2005 6:34 am    Post subject: Reply with quote

truekaiser wrote:
Fly3D wrote:
Speed that sucker up! Like it isn't already fast enough. :lol:

1.Type "about:config" into the address bar. Scroll down and look for the following:

Code:
network.http.pipelining
network.http.proxy.pipelining
network.http.pipelining.maxrequests


Normally the browser will make one request to a web page at a time. When you enable pipelining it will make several at once.

2. Change the entries as follows:

Set "network.http.pipelining" to "true"

Set "network.http.proxy.pipelining" to "true"

Set "network.http.pipelining.maxrequests" to the number of requests you want the browser to make at once. 5 or 6 is perfectly adequate and shouldn't cause unecesary strain on the webserver. (please play nice!) :)

3. Right-click anywhere and select New --> Integer. Name it "nglayout.initialpaint.delay" and set its value to "0". This value is the amount of time the browser waits to start rendering the page.

If you're using a broadband connection you'll load pages much faster.

Enjoy...

Warning!

you will mini-dos what ever server you connect to. you can and will be black listed by web servers that monitor # of connections per uniqe ip.

Not with pipelining.
What youre thinking of is persistent connections, which is where the browser makes multiple connections to a server, in order to download in parallel.
What pipelining is, is something slightly different. Nontechnically, its when you squeeze more HTTP requests into one packet. Instead of sending one GET /somefile.html per packet, the browser will send more, up to the max specified.
Note though that this requires support from all proxies you go through, and the endserver itself. Not many servers actually support pipelining yet unfortunately :(
Back to top
View user's profile Send private message
spife
Tux's lil' helper
Tux's lil' helper


Joined: 28 Nov 2004
Posts: 78

PostPosted: Fri Mar 04, 2005 9:05 am    Post subject: Reply with quote

Well, I use all these Firefox extenions:

Basics - Puts a New Tab button on the left side of the tab bar, like in the Mozilla Suite.
Bookmark Backup - Bakcs up your bookmarks and many other things (you have to set it to back them up) whenver Firefox closes. Useful for when Firefox gets mad at you and eats something.
ChromEdit - Allows you to edit userChrome.css and userContent.css just by going to Tools -> Edit User Files.
ColorZilla - It sits in the bottom-left corner of the status bar, and can allow you to zoom everything on a page, including images and whatnot (though I doubt Flash and Java applets), and has a color picker so you can see, well, the color of a pixel on the page, and can do a couple other things, I think.
DictionarySearch - Allows you to, uh, search dictionaries for a highlighted word via the context menu.
Focus Last Selected Tab - With this, when you close a tab, Firefox automatically focuses on the one you were last using.
Googlebar - An improved version of the Google Toolbar. :D
Habari Xenu - A "news aggregator". I like it a lot better than just using Live Bookmarks. I've tried a couple other, not-Firefox-extension aggregators, but I like Habari Xenu the best.
I must not fear! - There for you in the Tools menu, whenever you need it. :)
miniT - Does a bunch of nifty things, which are listed on the linked page. Also improves undoclosetab.
Plain Text Links - Allows you to highlight an URL on a page that is not in an <a> tag and open it in either the current or a new tab via the right-click menu.
Popup Count - When a popup is blocked, it shows the total number of popups blocked since as long as you installed it along with the number of popups blocked on that page in the status bar. (It can be configured to either always show or only show when a popup is blocked, and you can set it to display just the number of popups from that page, just the all-time total count, or both, with either one of them in parenthesis.)
Open link in... - Err, go read about it on the page I linked. :P
OpenBook - Allows you to customize the Add Bookmark dialog. I've noticed it breaks Live Bookmarks, though, but I prefer using Hibari Xenu for RSS feeds, anyway.
SessionSaver - Automatically restores your last tab session, even after Firefox crashes.
Tabbrowser Preferences - "This extension provides a comprehensive UI for changing a number of the hidden tabbed browsing preferences in Firefox. It also provides the ability to control how internal and external links are opened in the browser and how the browser will react when links are sent to it." It can also add a New Tab button to the left side of the tab bar, so you don't need Basics if you have this. (I used to use Tabbrowser Extensions, but it really slowed down Firefox, and caused it to crash some, I think. I was amazed at the speed increase when I started using Tabbrowser Preferences and some other extensions. I miss the nice way TBE could re-open closed tabs, though.)
undoclosetab - Allows you to re-open the tab you most recently closed. Also, undoclosetab is apparently improved if you install miniT.
View Cookies - Shows the cookies a page has set in the Page Info thing.
Web Developer - A toolbar that does lots of cool stuff.

Whew, I'm surprised Firefox still runs quickly for me. :lol:

Also, in Thunderbird, I use AboutConfig, which allows you to access something like about:config by going to Tools -> about:config. :)

(Sorry if any of these were already mentioned....)

Also also, Mozilla Custom Keywords are useful.
_________________
Hug spife


Last edited by spife on Wed Mar 09, 2005 3:03 am; edited 1 time in total
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Fri Mar 04, 2005 9:15 am    Post subject: Reply with quote

Indeed, the keywords are very useful. Not just to save typing, but because you can substitute strings into them.
I use a couple for bug searching here and on the mozilla bugsite, namely each with the keyword
Code:
http://bugs.gentoo.org/show_bug.cgi?id=%s
for gentoo bugs, and
Code:
https://bugzilla.mozilla.org/show_bug.cgi?id=%s
for mozilla bugs.
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Sat Mar 05, 2005 11:41 am    Post subject: Reply with quote

Just a quick tip for now.

Many sites are starting to use plugins to launch popup windows. Through either Flash scripting, or through Java applets.
By default, mozilla and firefox will allow these popups, which can be rather annoying on some of the lame scriptkiddy sites whose sole aim is to crash your browser.

So... if you set the preference
Code:
privacy.popups.disable_from_plugins
to 2, all popups launched from a plugin will be disabled.
Setting it to 1 will cause Firefox to treat the popups just like any other type, ie theyre limited to whatever
Code:
dom.popup_maximum
is set to.
And setting it to 3 is the same as not having it set at all, IE, all popups are allowed from plugins no matter what your browser popup settings are.

Add this preference to your user.js file (Directions for making and finding this file are found here).
The format is simple, its
Code:

user_pref("preference.name.here", "preference.value.here");

In this case, replace the preference.name.here with "privacy.popups.disable_from_plugins", and replace the preference.value.here with a plain 2. Dont put "" characters around the number.
Back to top
View user's profile Send private message
metalifloyd
n00b
n00b


Joined: 13 Dec 2004
Posts: 46
Location: Atlanta, GA

PostPosted: Sat Mar 05, 2005 4:21 pm    Post subject: Reply with quote

Thank you all for these great tips. FireFox has never run better for me :D
I might starting using FireFox all the time now. (Opera still wins for their excellent mouse gestures)
Back to top
View user's profile Send private message
growse
Apprentice
Apprentice


Joined: 24 Jan 2003
Posts: 154
Location: Sunny UK

PostPosted: Sat Mar 05, 2005 5:55 pm    Post subject: Reply with quote

Pipelining (and maybe persistant connections I think) are part of the HTTP standard afaik and therefore are required to be supported by HTTP complient servers.

DISCLAIMER!

As far as I know...
_________________
Getting there....
Back to top
View user's profile Send private message
truekaiser
l33t
l33t


Joined: 05 Mar 2004
Posts: 801

PostPosted: Sat Mar 05, 2005 9:05 pm    Post subject: Reply with quote

transient wrote:
truekaiser wrote:
Fly3D wrote:
Speed that sucker up! Like it isn't already fast enough. :lol:

1.Type "about:config" into the address bar. Scroll down and look for the following:

Code:
network.http.pipelining
network.http.proxy.pipelining
network.http.pipelining.maxrequests


Normally the browser will make one request to a web page at a time. When you enable pipelining it will make several at once.

2. Change the entries as follows:

Set "network.http.pipelining" to "true"

Set "network.http.proxy.pipelining" to "true"

Set "network.http.pipelining.maxrequests" to the number of requests you want the browser to make at once. 5 or 6 is perfectly adequate and shouldn't cause unecesary strain on the webserver. (please play nice!) :)

3. Right-click anywhere and select New --> Integer. Name it "nglayout.initialpaint.delay" and set its value to "0". This value is the amount of time the browser waits to start rendering the page.

If you're using a broadband connection you'll load pages much faster.

Enjoy...

Warning!

you will mini-dos what ever server you connect to. you can and will be black listed by web servers that monitor # of connections per uniqe ip.

Not with pipelining.
What youre thinking of is persistent connections, which is where the browser makes multiple connections to a server, in order to download in parallel.
What pipelining is, is something slightly different. Nontechnically, its when you squeeze more HTTP requests into one packet. Instead of sending one GET /somefile.html per packet, the browser will send more, up to the max specified.
Note though that this requires support from all proxies you go through, and the endserver itself. Not many servers actually support pipelining yet unfortunately :(


no you will get baned, and you give the exact reason why. unless the site is pure text you will have to download at the very least images.(which are the major bandwidth killers) which makes these settings do
Quote:
persistent connections, which is where the browser makes multiple connections to a server, in order to download in parallel.
just so you can load a page a tenth of a second faster. anyway all i am doing is providing a warning so other people don't go and blame you because they get baned from their favorite sites after using that tip.
Back to top
View user's profile Send private message
Fly3D
n00b
n00b


Joined: 27 May 2004
Posts: 24
Location: Canada

PostPosted: Sat Mar 05, 2005 9:52 pm    Post subject: Reply with quote

NO! The browser typically makes multiple http requests anyway. All pipelining does is pack them together into the same packet rather than waiting for each to be responded to before sending the next. This cuts down on the number of overall packets being sent. This is actually a good thing in the grand scheme of things. It cuts down on traffic! Worst thing that'll possible happen is the odd screwed up page because the browser didn't wait for a valid response to each http request seperately. Pipelining is now part of the http/1.1 spec and for a reason.

In addition, pipelining IS a form of persistent connection. It's extended from the 'keep-alive' persistence in http/1.0 This is NOT the same as a parallel connection. All persistent connections do is stay open if possible rather than opening new TCP connections for each request. This cut's down on both bandwidth and cpu time for both client and server.

More info:

http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.1

http://www.w3.org/Protocols/HTTP/Performance/Pipeline.html

Whole RFC 2616 on http/1.1 is here:

http://www.w3.org/Protocols/rfc2616/rfc2616.html

IIRC Firefox also will also disable it in some cases where it is not supported, for instance when connecting to an IIS server.

As noted in my original post, it can be pushed too far which can actually result in slowdowns. Keep your max requests fairly low.

Read the FAQ http://www.mozilla.org/projects/netlib/http/pipelining-faq.html

FWIW, Opera has pipelining enabled by default. Anyone who has used it will generally agree that it's pretty quick and I've yet to hear of an Opera user being "banned" from a website.
_________________
#include <stdio.h>

main()
{
printf("Where are we going? ... And why am I in this handbasket?\n");
}
Back to top
View user's profile Send private message
truekaiser
l33t
l33t


Joined: 05 Mar 2004
Posts: 801

PostPosted: Sun Mar 06, 2005 12:11 am    Post subject: Reply with quote

Quote:
FWIW, Opera has pipelining enabled by default. Anyone who has used it will generally agree that it's pretty quick and I've yet to hear of an Opera user being "banned" from a website.


thats probibly because they keep it at a sane level(less then 5) you on the other hand only say to be reasonable on the number. to many people the means put it as high as needed to get the speed you want. you do not need to change this setting in firefox, it's fast enough without incessesing this and puting undo strain on servers.
Back to top
View user's profile Send private message
Fly3D
n00b
n00b


Joined: 27 May 2004
Posts: 24
Location: Canada

PostPosted: Sun Mar 06, 2005 12:58 am    Post subject: Reply with quote

From my first post:
Quote:
5 or 6 is perfectly adequate


I have mine set at 2 FWIW. I understand 8 is still considered reasonable. Beyond that things slow down and the incidence of error goes up. There are people who set it at 30 or 100 or something stupid like that. They suffer.

Quote:
...puting undo strain on servers.


I'm guessing you didn't take a look at any of the links I provided. It provides explaination of all the hows and whys but here's the short version. Pipelining has been implemented in the latest version of the http protocol spec as a result of extensive testing which shows that it greatly reduces overall network traffic, decreases cpu overhead on both server and client and increases overall network performance. The protocol spec has been designed to encourage it's use (on both client and server) for these reasons. It's not just some dirty hack...:roll:

I'm done arguing...read the documentation.
_________________
#include <stdio.h>

main()
{
printf("Where are we going? ... And why am I in this handbasket?\n");
}
Back to top
View user's profile Send private message
truekaiser
l33t
l33t


Joined: 05 Mar 2004
Posts: 801

PostPosted: Sun Mar 06, 2005 1:44 am    Post subject: Reply with quote

Fly3D wrote:
From my first post:
Quote:
5 or 6 is perfectly adequate


I have mine set at 2 FWIW. I understand 8 is still considered reasonable. Beyond that things slow down and the incidence of error goes up. There are people who set it at 30 or 100 or something stupid like that. They suffer.

Quote:
...puting undo strain on servers.


I'm guessing you didn't take a look at any of the links I provided. It provides explaination of all the hows and whys but here's the short version. Pipelining has been implemented in the latest version of the http protocol spec as a result of extensive testing which shows that it greatly reduces overall network traffic, decreases cpu overhead on both server and client and increases overall network performance. The protocol spec has been designed to encourage it's use (on both client and server) for these reasons. It's not just some dirty hack...:roll:

I'm done arguing...read the documentation.


i said to keep it on the default setings. when i said undo stress i ment from the people you pointed out that put it at 30+, not from the default settings.
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Sun Mar 06, 2005 2:06 am    Post subject: Reply with quote

Lets not start an argument here...
Its meant to be a tips thread, not a "Im right, youre wrong" thread.
Back to top
View user's profile Send private message
transient
l33t
l33t


Joined: 13 Jan 2005
Posts: 759

PostPosted: Sun Mar 06, 2005 2:08 am    Post subject: Reply with quote

metalifloyd wrote:
Thank you all for these great tips. FireFox has never run better for me :D
I might starting using FireFox all the time now. (Opera still wins for their excellent mouse gestures)

Try these extensions:
All in one gestures and Easy gestures
Back to top
View user's profile Send private message
COiN3D
Guru
Guru


Joined: 02 Aug 2004
Posts: 543
Location: Munich, Germany

PostPosted: Sun Mar 06, 2005 11:07 am    Post subject: Reply with quote

I've another trick for you guys:

How to fake your browser identification

Type "about:config" in your GoTo-line. Do a right click with your mouse, and select "New" -> "String"

Give the new string this name:
Code:
general.useragent.override


Then, type in as what firefox should be identified, for example:
Code:
Mozilla/5.0 compatible; MSIE5.5; Windows 98;


After a restart you should be identified as a IE 5.5 and Win98 as operating system ;)

You can check this here: http://cms.mh-webservices.de/mh.cms/p35/

And there's an another way to make your firefox more safety:

Normally, browsers transfer the internet-adress from which site you come from. If you don't want firefox to send the referer, follow the next step:

First, fire up about:config again. Then look for "network.http.sendRefererHeader", and set it to 0. The default-value is 2. Now webmasters don't know from which site you come from ;)

By the way, referers are not always bad. I know a program for Windows which uses these referers to get access to some pr0n sites. :D It says IE it should say "I'm coming from www.xxx.com, please let me in." And for some sites this works. Unfortunately, there's no version out which works with firefox :(
_________________
e17 documentation | Be free and use Jabber as your IM! | Combine IRC and IM
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Goto page 1, 2, 3, 4, 5  Next
Page 1 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum