Thursday, September 21, 2006

Mozilla/Firefox Hacks for Power Users (Hack 200C+0002)

Here is some preferences I have set, and you may like to set them, if you are a power user, bidi user, or your locale is not en-US, but have to use this locale.

Newbie HOWTO: use "about:config" to set this key/values.

Power User:
  • layout.word_select.stop_at_punctuation
  • layout.word_select.eat_space_to_next_word
Set them to TRUE if you want Ctrl+Left/Right-Arrows stop at the start/end of alpha-numeric words (like what you get on Gtk+/Gnome). Default values make it to jump to the next/previous Space/Tab character! The second one also affects word boundary on selecting with mouse double-click.

  • browser.triple_click_selects_paragraph
(Mozilla >= 1.9, Firefox >= 3.0a1)
This option allows you to select whether triple click should select the whole paragraph, or just the line you are clicking. If it's FALSE, you can select the whole paragraph with quadruple-click (Wait, it doesn't work on Gtk+/Gnome, as Gtk+ doesn't support quadruple-click. If you like it, here are the Mozilla bug: #348751.)

  • network.http.max-persistent-connctions-per-proxy
  • network.http.max-persistent-connctions-per-server
If you use Tor, or any other proxy in your LAN, just set the first one to a big number (I use 50). Also I set the second one to 8, as Flickr and many other photo-sharing sites use just one domain for almost all images on the their pages, so I cannot get even two pages simultaneously. (maps.google.com is smart enough)

  • network.protocol-handler.external.ed2k
  • network.protocol-handler.app.ed2k
Here are how you can define a protocol and set the external application. In this example, I set ED2K protocol. Create the first key as Boolean, and set the value to TRUE. Then create the second key as String, and set the path to your ed2k link-handler ("/usr/bin/ed2k" for me) as its value. That's it.
Homework: Create a protocol-handler and write a script to handle Yahoo! Messenger links, and make GAIM do the requested action (add buddy, send message, etc). Of course you should mail them to me to get your point. :D)

  • mousewheel.horizscroll.*.action
Try possible values for this key (0..4 IIRC) to get more functions under your fingers (horizontal scroll of your professional mouse, or the touch-pad of your laptop).


Localization:
  • printer.printer_PostScript/*.print_paper_name
If you live in a country (or organization) which the default paper size is A4, not Letter, just set the value of this key to "A4".

  • browser.fixup.alternate.suffix
And if your want to set the default ".com" value to something else (i.e. ".co.uk" or ".ir"), just set it in this key.


Bi-Directional:
  • bidi.browser.ui
And this is the best part for Arabic, Iranian (Persian), and Israeli (Hebrew) users. Setting this key to TRUE will do some magic for you. You can switch the text direction and alignment of input fields with just one keystroke: Ctrk+Shift+X! Also you can switch the page direction from the View menu. Help yourself!

  • mousewheel.horizscroll.*.numlines
If you use Mozilla/Firefox in a right-to-left locale, just set the value of these keys to "1" instead of default "-1". Here are the Mozilla bug: #350594.


Ok, that's all. Let me know if you have problem with this hacks, or other L10n (localization), Bidi (bi-directional), or RTL (right-to-left) problems with Mozilla/Firefox.

Friday, September 01, 2006

Metro Lines I Have Used

In order of time:




Here are Behdad's and Luis's. Should it be more than ten to blog it? I'm not sure... but, how you will update it?