Chatzilla Full Reference

Version 1.0.0


Last translated by eDdYk0nG () on 2009-07-10

Last revised by FredFred () on 2009-07-10

Originally written by Tamer on 2008-09-14

Please direct any comments or feedback about this document (only! no help requests!) to docs@dal.net. If you need help on issues not covered in this document, please see the information at http://help.dal.net.

Introduction

Here you will find a guideline how to use Chatzilla.

Contents

1 · Installing ChatZilla

1.1 How do I install ChatZilla?

ChatZilla is currently distributed as part of the Mozilla Suite, the SeaMonkey Suite, and is available as an extension for Mozilla Firefox.

Tips: Get ChatZilla here, for Mozilla, SeaMonkey and Firefox.

* If you download the latest Mozilla release or the latest SeaMonkey release, you must select Full or Custom when installing to get ChatZilla.

* If you use Mozilla Firefox, or wish to add ChatZilla to your existing Mozilla or SeaMonkey install, you can install the latest version from the Mozilla Update site. Current and older versions may be found on the ChatZilla Development page, too.

Notes: On all platforms, you will need to restart your browser after installing. If you are using the Quick Launch feature of Mozilla or SeaMonkey, you will need to exit the quick launch icon on your taskbar as well, and on some systems, you may need to restart the operating system.

1.2 How do I un-install ChatZilla?

Mozilla Firefox can uninstall extensions such as ChatZilla as follows:

1.Open Tools > Extensions.

2.Find the ChatZilla extension, and select it.

3.Either click the Uninstall button, or right-click and select Uninstall.

4.Confirm that you want to uninstall ChatZilla, then you need to restart Mozilla Firefox to complete the uninstall.

Mozilla and SeaMonkey do not have an uninstall feature for XPIs, but removing ChatZilla is usually possible.

Warning: The following manual uninstall procedure is provided with no warranty whatsoever.

1. Shut down Mozilla or SeaMonkey.

2. Find (in the application install directory) and rename the files components/chatzilla-service.js and chrome/chatzilla.jar to something else.

3. Run regchrome.

4. If Mozilla starts up fine, everything worked, otherwise, unrename everything and give up, or delete the installation and start from scratch.

1.3 How do I update ChatZilla to a different version in SeaMonkey on Linux/BSD?

In SeaMonkey, ChatZilla will need to update some files which are in the application directory (usually this is /usr/local/seamonkey). This directory is normally only writable by root, which will cause problems if you run SeaMonkey normally. You are advised to temporarily make yourself the owner of this directory (for example using the chown tool) and then run SeaMonkey normally, install the update, restart SeaMonkey, and check everything works. After making sure everything is OK, make sure you set root to be the owner of the installation directory again.

1.4 How do I make irc urls work with my default IRC client instead of ChatZilla?

If you are using the Mozilla Suite or SeaMonkey, you will need to use the uninstall procedure outlined above. If you are using Mozilla Firefox, you can disable the ChatZilla extension using the following steps:

1. Open Tools > Extensions.

2. ChatZilla from the list of Extensions.

3. Right-click ChatZilla, and select Disable.

4. Restart Mozilla Firefox to actually disable ChatZilla.

2 · Getting Started

2.1 How do I start ChatZilla?

* In Mozilla Suite or SeaMonkey, Window > IRC Chat.

* In Mozilla Firefox, Tools > ChatZilla.

* In Mozilla Firefox, you can also place an ChatZilla button on your toolbar.

* You can also start the browser with the -chat command line option. This will launch ChatZilla instead of a browser front end.

* You can type an IRC URL in the URL bar. type= just irc: to launch ChatZilla and connect to your default channels.

Tips: You can bookmark this URL, and file it wherever it makes sense to you. .

* Of course, you can use any IRC URL to start ChatZilla and make it connect to the specified location, however, the default channels will not be joined for anything other than irc:.

* In some rare occasions, a bug in the Mozilla Firefox extension manager will disable the ChatZilla extension right after installing, even though the item does not show disabled in the list. If you can not start ChatZilla as described above (for example, you may get a message saying the IRC protocol is not registered), try disabling ChatZilla, restarting Firefox, re-enabled ChatZilla, and restarting Firefox again.

2.2 How do I connect to a network or server?

ChatZilla comes preset with a selection of popular IRC networks, which can be listed via the /networks command. The network names can be clicked to connect to them, or the /attach command can be used.

Tips: ChatZilla allows you to be connected to multiple servers at once, so, unlike some other clients, connecting to a new network or server will not disconnect you from your current network or server. You can manually do that with the /disconnect command.

Input

/networks

Output

Available networks are [dalnet, efnet, freenode, hybridnet, moznet, quakenet, serenia, slashnet, undernet, webbnet].

Input

/attach moznet

Output

Network view for moznet opened.

Attempting to connect to moznet. Use /cancel to abort.

Connecting to irc://moznet/ (irc://irc.mozilla.org/), attempt 1 of 5...

Messages about connecting, and the "message of the day" (MOTD).

End of /MOTD command.

There is no reason you have to use only the networks provided by ChatZilla - you can connect to any IRC server you like using the /server command. For example, other ways to connect to the Mozilla IRC Network are (the last one uses a secure connection):

Input

/server irc.mozilla.org

/server irc.mozilla.org 6667

/sslserver irc.mozilla.org 6697

The more general /attach command accepts an irc: URL as a parameter. You may omit the irc:// prefix, however. This can be used to connect to a network and channel with a single command, such as /attach moznet/chatzilla, or /attach moznet/killer,isnick.

2.3 How do I use a proxy with ChatZilla?

ChatZilla will work automatically with most configurations as it runs with your browser's networking configuration. There are four main configurations you can use:

* SOCKS v4/v5 proxy: simply configure your browser's SOCKS proxy setting. ChatZilla will use this proxy by default.

* HTTP proxy: make sure your browser has an HTTP proxy configured, and then set "http" as the Proxy type.

* Force no proxy: if you have a SOCKS proxy in the browser for something else and don't want ChatZilla to use it, set "none" as the Proxy type.

* No proxy at all: with no SOCKS proxy set in your browser, ChatZilla will by default use direct connections. This is the normal mode of operation as is set by leaving Proxy type empty.

The Proxy type setting is found in ChatZilla's Preferences window, on the General tab in the Connection group. It exists both for Global Settings and for each network. It is only available in ChatZilla 0.9.75 and later.

2.4 What do I do if I get an error connecting?

First, don't panic. It all depends on the error. The most common reasons are the wrong address for the server, or a firewall mis-configuration. The following list will hopefully cover the error you have, but if you are getting a different error try to connect to #chatzilla on irc.mozilla.org and we'll help you resolve the problem.

* Output

Unknown host "irc.example.com" connecting to irc://irc.example.com/ (irc.example.com:6667).

This error means that ChatZilla could not find the physical server for the name given. It is most likely that the server name specified is not correct, although it could be a problem with the DNS configuration for the server's host or a local DNS problem. Try going to the website for the server or network, if you can find one, and check that the name you used is correct.

* Output

Connection to irc://irc.example.com/ (irc.example.com:6667) timed out.

This error means that the server's address was found, but it did not respond when contacted. A possible reason for this is that your anti-virus software or firewall software is configured to block IRC. If you have no firewall, or disabling it does not help, the IRC server is probably down.

* Output

Connection to irc://irc.example.com/ (irc.example.com:6667) refused.

This error means that the server was found, but it did not wish to let you connect. This could be because the wrong port (6667 in this example) was used; verify that the server is not on a different port (especially if you are trying to connect using SSL) and try again. This error could also mean that the server is having a temporary technical problem.

* Output

Connection to irc://irc.example.com/ (irc.example.com:6667) closed.

This error means that the connection was closed before it could be properly connected. The most likely reason for this is that your anti-virus software or firewall software is configured to block IRC.

ZoneAlarm Internet Security is known to block IRC like this; you can fix this by going to IMSecurity > Settings > Advanced and un-ticking the "Block IRC" option.

* Output

Connection to irc://irc.example.com/ (irc.example.com:6667) reset.

This error means that ChatZilla was able to open the connection initially, but the connection was then closed unexpectedly. The most likely reason for this is that your anti-virus software or firewall software is configured to block IRC.

McAfee Anti-Virus is known to do this and you will need to unblock the IRC ports to use any IRC client; you can do this from the "Access Protection" area in the "VirusScan Console" by disabling the rules for ports 6666-6669. Consult your anti-virus program's documentation for instructions on how to do this for other anti-virus programs.

Although less common, any computer between you and the server can cause this error, so it could just be a reset or reboot of your DSL router, or a local network configuration change. In these cases, the error should only be temporary, and you will be able to try to connect again in a few seconds (ChatZilla should retry for you).

* Output

ERROR Closing Link: irc.example.com (Install IdentD)

This message, sometimes worded differently (but will always mentioning "ident" or "identd"), means that the server you tried to connect to requires a special identification service.

2.5 How do I enable 'ident'?

Some servers will require you to be running an "ident server" to connect to them, even though this service is only useful if you run a multi-user computer (where many people can connect and share a single computer).

In ChatZilla 0.9.71 and later, you can check the "Enable Identification Server during connection process" box in Preferences, or enter the command /network-pref identd.enabled true to enable ChatZilla's ident server for the current network.

Note: Ident servers listen on TCP port 113. This may mean you need to open/forward this port on any NAT devices or firewalls you use.

Note: On some operating systems, such as Linux and Mac OS X, ident servers must instead run as part of the system. You should consult your system's documentation for more information.

Tips: Some networks only have a few servers that require ident. Trying specific servers may let you connect without ident.

2.6 How do I join a channel?

Once you have connected to a server, you can join a channel by using the /join command. For example, if you have connected to MozNet, you can join the ChatZilla channel.

Input

/join #chatzilla

Output

Channel view for #chatzilla opened.

YOU (NickName) have joined #chatzilla

Topic for #chatzilla is "ChatZilla -- LATEST VERSION is 0.9.68.5.1"

Topic for #chatzilla was set by Somebody on 22 September 2005 16:37:05

Tips: Unsure what channels there are on a particular server? Just connect, and select IRC > Join Channel... and browse through the list of channels.

Tips: The command /j is an alias (shortcut) for /join.

If you omit a channel type= prefix (e.g. #, &, + or !) ChatZilla will prepend the network's default prefix. This is usually #, but can vary. If you'd like to check, run the /supports command and see what character is listed first for "Supported channel types:".

2.7 How can I list the available channels on a server?

Use IRC > Join channel... to open a dialog that will list all channels on the current network. You can join an existing channel or create a new channel from this dialog, filter channels by name, topic, and exclude channels with more, or less, than a certain number of users. On large networks, however, this dialog may have difficulty operating (20,000 channels is about its limit, due to limitations in JavaScript). Note: This dialog was added in ChatZilla 0.9.67 and is not available in earlier versions. The /list command can be used to fetch a list of all channels on the current network. On large networks, however, this may take a very long time. On some networks, you'll be kicked off with a message like "Excess Flood" for doing this. Adding to the confusion, some networks recognize extended /list options for filtering based on number of users in a channel, etc. (if you need such features, try the join dialog mentioned above). ChatZilla also offers an /rlist command, which can be used to filter the result list based on the channel name, regardless of the server software. type /help rlist for more information.

2.8 What do the symbols/blobs in the user list mean?

What do the symbols/blobs in the user list mean?

*No symbol/black: Normal - the user has no special status.

* +/grey: Voice - the user can talk in the channel when it is moderated. Often used to mark people as trusted without giving them power.

* %/blue: Halfop - the user has the power to moderate the channel, change the topic, etc., but cannot kick other halfops nor higher-ranking users, nor can he/she create new ops/halfops. Not all servers support halfops.

* @/green: Op - the user can grant/revoke op/halfop/voice status, and change other channel settings, depending on the server.

* &/orange and ~/purple: Channel Admin/Founder - ranks above op, usually assigned by network services. Their exact behaviour varies depending on server.

2.9 How do I disconnect from a server?

To disconnect from a single network without exiting ChatZilla, right-click a tab from the network and select the Disconnect From option, or switch to a view on the network and use the IRC > Disconnect From menu item. You can also type /disconnect on any view associated with the network.

Tips: To disconnect from all networks without exiting ChatZilla, type /disconnect-all.

2.10 How can I hide my IP address from other users?

In general you can't. The way IRC works, your IP address is distributed to every user you communicate with. Depending on where you hang out, and who your enemies are, this may or may not be a problem. In practice, it's not a problem for most normal users.

However, an increasing number of servers are supporting a user mode "x" which hides your hostname (and thus your IP) from other users (IRC Operators can still see your real host, however). You can start using this user mode by adding "x" to the Usermode box on the General tab in preferences, either in Global Settings, or for individual servers.

Note: Remember that not all servers support this. Ones that don't will simply ignore it, so don't worry about adding it if you're not sure.

2.11 How do I use DCC to transfer files with ChatZilla?

ChatZilla currently has a basic implementation of DCC Chat and DCC File. The following is a summary of the commands and how to use it, enter /help dcc into ChatZilla for more information.

Note: A couple of commonly requested DCC features are Resume and Reverse support. ChatZilla currently does not support either of these, but they are both planned for a version in the future.

/dcc-chat nickname

Sends a DCC Chat offer to nickname, which they can then accept or decline.

/dcc-send nickname

Prompts you to pick a file to send to nickname, after which it sends the offer. The other user can then accept or decline this offer.

/dcc-accept

Accepts the last DCC Chat or DCC File offer made to you. This will not work within 10 seconds of an offer arriving, during which time you may accept the offer using the slightly longer command of /dcc-accept nickname.

/dcc-decline

Declines (refuses) the last DCC Chat or DCC File offer made to you.

/dcc-accept-list, /dcc-accept-list-add, /dcc-accept-list-remove

Manages the DCC auto-accept list. DCC Chat or DCC File offers from users on this list will be automatically accepted.

Direct Client Connection commands

2.12 How do I select a character set? (and why can't other users read my text?)

ChatZilla allows you to select character encodings at multiple levels. The default character encoding used by ChatZilla is UTF-8, and it is recommended that you leave this setting wherever possible. This default avoids a number of unsolvable problems, such as how to know what encoding has been used for particular channel names without prior knowledge.

Tips: The most common character encoding is ISO-8859-15, since this is what mIRC normally uses (it can also do Shift-JIS for Japanese). If you are unsure, or other members of the channel are clueless, try using ISO-8859-15 first (type= /charset ISO-8859-15 on the channel view).

An unfortunate problem with the way IRC works is that international (and most non-US-ASCII) characters cannot be sent without encoding them. The problem is that there are many, many different character encodings available, and different systems and programs use different ones. To help alleviate this problem, ChatZilla supports many different character encodings, and lets you select the right one for each channel and server.

If text is showing up with a lot of question-marks (?) or completely unexpected characters (for example, Japanese characters in a Danish channel) then it is likely that ChatZilla is not using the same charset as the other client(s). The table below lists the charset commands available in ChatZilla. Each of these commands takes a case-insensitive character encoding name as a parameter. If a character encoding is not provided, these commands will display the current setting. If you pass a dash ("-") as the character encoding name, the setting will revert to the default character encoding.

/default-charset

Selects the default character encoding for all networks, channels, and users. This charset is used when no other more specific charset preference has been set.

/charset

Selects the character encoding for the current view, and works from all views. When changing the network charset all channels and query views will inherit the value unless it is set on the specific channel or query views.

Character encoding commands.

2.13 How do I enable logging?

ChatZilla logging can be enabled at a number of levels. The most straightforward way to turn on logging for a specific view is to type= /log on from the view in question.

* To log the current view, type= /log on, type /log off to stop logging.

* To log all channel views by default, type /pref channelLog true.

* To log all network views by default, type /pref networkLog true.

* To log all query views by default, type /pref userLog true.

Logging related preferences

Note that you may override any of the defaults by using the /log command on the view in question.

By default, ChatZilla stores logs in the logs/ subdirectory of your ChatZilla profile path. type /pref logFileName to see where this is. You may modify the logFileName pref, but it will not copy over your old logs.

3 · Basic Usage

3.1 Does ChatZilla have nickname completion?

Yes. type enough of a person's nickname to make it unique and press the tab key.

If the name is not unique, ChatZilla will append any characters that it has in common with other matching nicknames. If you press tab twice, quickly, then ChatZilla will display all matching nicknames.

From network and query views, you can tab complete on any nickname in any channel on the same network. From channel views, only users in the same channel will be included in the tab completion. In addition to nicknames, you can tab complete any channel you are on (or have been on) on the same network.

Tips: To complete the current channel name, type= only the character "#", press the tab key, and ChatZilla will expand it.

There is a default tab completion for channel tabs. If you press tab on an empty line, ChatZilla will match the last person to trigger your stalk function.

Assuming that rginda_home and rginda_work are members of the current channel:

1.type rg and press tab. ChatZilla responds by completing rginda_. ChatZilla stops completing here, because there are two nicknames that start with these characters.

2.Press tab twice, quickly. ChatZilla responds by displaying the message ``2 matches for “rginda_”: [rginda_home, rginda_work]''.

3.Add an h, and tab. If this is the first word in the textbox, ChatZilla responds by completing ``rginda_home, ''. If this is not the first word, ChatZilla will leave out the comma.

Nickname completion

3.2 Does ChatZilla have command completion?

Yes. It works just like nickname completion. If the cursor is in the first word of the text, and the first character is a forward slash ("/"), then ChatZilla will automatically match against commands, instead of users or channels.

Tips: You don't actually need to type the entire command name - ChatZilla will allow you to shorten the command just enough to make the name unique.

Warnings: Some servers and websites suggest you use /cs instead of /msg ChanServ. Please note that this does not work in ChatZilla versions before 0.9.79, because they support the /css command which ChatZilla matches (since /cs is not a standard IRC command). In ChatZilla 0.9.79, the /css command was removed, as it was just an alias for /motif.

3.3 Why do some messages appear in the network tab?

Those messages have been copied there because they matched your stalk list. The reasoning here is that, if you're away from the computer for a long time, important messages might have scrolled off the view by the time you get back. Copying the message to the network tab makes sure you don't miss anything important. It's also a quick way to catch up after being away for a while.

The View > Copy Important Messages menu item can be used to disable this feature.

3.4 Where are the timestamps?

Use View > Show Timestamps to toggle timestamps globally, or turn them on by setting the Timestamps options on the Appearance tab in preferences, either in Global Settings, or on any other view.

Timestamps also appear in the statusbar when you mouse over messages.

3.5 Why do some/all channels not show JOIN, PART, QUIT or nick change messages?

The most likely reason is that ChatZilla has automatically enabled "Conference Mode" on these channels, which occurs when the number of users exceeds a configurable limit (default is 150 in current versions).

To check or change the limit, open the ChatZilla preferences window, and check the Appearance tab - it is labeled "Conference Mode limit". You can set this limit globally (select Global Settings on the left), for a single network (select the network), or individual channels.

Conference Mode is automatically enabled and disabled as the number of users changes, but only when the count is at least 10 above or below the configured value (to prevent it changing too often on channels near the limit). You can use any limit you like, including the special value 0 for never hiding join, part, quit and nick change messages, and 1 for always hiding them.

3.6 What is a stalk list?

A stalk list is a list of words or nicknames that you want ChatZilla to consider important. Important messages are treated differently than normal messages. For example:

* The message will likely be styled differently in the message window.

* If you have "Copy Important Messages" enabled, the message will be copied to its associated network view.

* The channel's tab label will turn red, if it's not already the current tab.

* ChatZilla may beep, or play a .wav file. You can adjust this setting through the preferences window.

* The ChatZilla window may try to get your attention. On some platforms this is done by flashing an application icon, on others the window may come to the front. You can adjust this setting through the preferences window in Global Settings, on the Global tab, using the Aggressive notify option.

By default, your nickname is the only entry in your stalk list. You can add other words to your stalk list from the Lists tab in Global Settings, in preferences.

3.7 How can I join a channel that requires a key, at startup?

From the ChatZilla preferences dialog, select Global Settings, then the Startup tab, add a new channel to the autoconnect list, and specify the channel name as channelname?key=keyvalue. So, if you wanted to join #cia on the Mozilla network with the key tenent at startup, you would specify the item as irc://moznet/cia?key=tenent.

Note: You can find out more about irc: URLs, which includes how to specify a server password, and how to prompt for passwords/keys instead of storing them directly.

Warning: This information is stored as plain text in your preferences file. Anyone with access to your machine will be able to read it. Do not use this method to autojoin if this concerns.

3.8 How do I use color/bold/underline in my text?

First of all, you must enable the function - this is to help mark sure you really want colors and aren't just out to annoy people (overly colorful text is a big annoyance to many people). It's usually worth making sure the channel(s) you want to use colors with don't mind, as some channels will kick and possibly ban people who use colors.

Simply do /pref outgoing.colorCodes true to enable entering colors. This setting is saved, so you will only need to do it once.

To actually insert colors, bold or underline, you need to enter % into the input box, then you will get a little popup window reminding you what to do. Here is a summary:

Color Chart

* %U - toggle underline

Warning: %B - toggle bold

Warning: %R - swaps foreground and background colors

Warning: %O - reverts colors to defaults

Warning: %C - sets the text color, e.g. %C4 for red text

Warning: %% - putting two percent characters before U, B, R, O or C stops ChatZilla doing anything special with it, so you can still say "%C" by typing %%C.

3.9 How do I use smilies/emoticons/faces in my text?

Simple - just type out the smiley you want as you might in an e-mail, and ChatZilla will automatically display an image in its place, just like it does for other people's messages. But what smiles/emoticons are available?

:-) - happy

:-S - confused

>:-( - angry

;-) - winking

B-) - cool

>:-D - evil

:-D - very happy/laughing

:") - blushing

o_O - dizzy

X-D - laughing hard

:~( - crying

O_O - "eek", wide-eyed

:-O - surprised

:-| - flat, undecided

:-? - questioning

:-P - tongue out

:-( - sad

9_9 - rolling eyes

Most of the emoticons work without the nose (-), or with ^ or v replacing it. Apart from :-) and ;-) the : may be replaced with ; or = too. You can take your pick from these variations, and ChatZilla will still know which icon to use - if you want to see what someone else has used, hover your mouse over the icon.

3.10 How do I load ChatZilla in a tab?

Note: We do not support running ChatZilla in a tab.

To try anyway, enter chrome://chatzilla/content/ into the location bar.

Warning: There are some problems with running ChatZilla in a tab, and most are not things we can do anything about. Below is a list of what is known to break.

* Right-clicking the chat area shows the browser's context menu instead of ChatZilla's.

* Clicking an irc: URL in the chat area will open a separate ChatZilla window. This problem might be fixable, but it could well be harder to fix than the final point.

* Clicking web links in the chat area will usually replace ChatZilla with the webpage. If you try to open the link in a new tab or window (either from the context menu or using a modifier key), it should leave ChatZilla unaffected.

* Clicking an irc: URL from a webpage will also open a separate ChatZilla window, instead of loading it in the ChatZilla running in a tab. This is the only problem we believe we can fix.

* Bug 286651 is attempting to remove the special permission extensions get when loaded in a tab, which would basically be the end of this working at all.

3.11 Why are my tabs sometimes colored red, green or blue?

The different colors indicate different degrees of activity.

* Black: There is no new activity. A tab will go back to this state when you focus it.

* Blue: The channel changed in some way. This is usually caused by people joining or leaving, a mode change or a topic change.

* Green: A message appeared on the tab. The message can be a normal chat message, an action, or a notice. Messages sent just to you will color the tab red instead.

* Red: Someone used your name or something on your stalk list in a message on that tab, or someone sent a message to you specifically.

4 · Customizing ChatZilla

4.1 How do I set my nickname?

When you first connect to a server with ChatZilla, you are prompted to enter a nickname. If you would like to change it later, use the /nick command. ChatZilla automatically remembers your last nickname for each network you connect to.

Note: In ChatZilla 0.9.67 and later, when you connect to a network and someone else is using your nickname, ChatZilla automatically reclaims it when they leave or change nick, but only for the first 6 minutes.

4.2 How do I set my description?

Your description is a single line of text that other users will see when they request information about you. Many people use it for their full name or web site. Use the /desc command to change your description. The description is sent during the login process, so you must reconnect to the server for it to take effect.

4.3 How do I autoperform some commands when I connect to a network?

Each network has an "autoperform" preference which consists of a list of standard ChatZilla commands. You can modify this preference with the preferences window, and the /network-pref command, see the example below.

Warning: If you're using this to automatically auth yourself with a bot or service, remember that your password will be stored in plain text in your preferences file.

Autoperform commands are executed when ChatZilla successfully logs in to a network, regardless of how the connection was initiated. The commands are executed before attempting to join any "Open at Startup" channels, and before attempting to re-join any existing tabs associated with that network.

Note: This preference was added in ChatZilla 0.9.41.

To send a message to a user whenever you connect to EFNet, first select any tab associated with EFNet, then type:

/network-pref autoperform msg WiZ here I am again

You may separate multiple commands with the semicolon (';') character, as in:

/network-pref autoperform msg WiZ yo; msg mozbot trees

Setting up autoperform commands

4.4 How do I prevent ChatZilla from auto-reconnecting to a network?

By default, ChatZilla will reconnect to a network if you are forcibly disconnected. On networks with idle time limits, this can earn you a temporary ban.

If you would like to turn this off by default, type /pref reconnect false. If you would like to turn it off only for a particular network, type /network-pref reconnect false from any tab associated with the network in question.

Note that if you change the default to false, you can still override specific networks with the /network-pref command.

4.5 How do I make ChatZilla auto-rejoin a channel when I'm kicked?

By default, ChatZilla will not try to rejoin a channel if you are kicked from it. You can turn this on globally using /pref autoRejoin true, or /channel-pref autoRejoin true to turn it on only for the current channel (see tweaking the preferences for more details).

Warning: Be careful on which channels you enable this, as some bots and channel operators will ban people who auto-rejoin when kicked.

4.6 How do I set the font size?

Control - + Make text bigger by 2pt

Control - – Make text smaller by 2pt

Control - 0 Reset to browser-default

Summary of Shortcuts

If your fonts are way too large or way too small, it is likely a problem with your DPI setting. Check your display preferences. If you're set to use "System Setting", try one of the pre-defined DPI settings instead. In practice, it seems that "System Setting" is almost always wrong. Fixing this will likely help out with web pages that specify font sizes in points, too.

If it's not a DPI thing, you can use the options in the menu under View > Font Family and Size. The options include some useful shortcuts (see table to the right) as well as the option to enter a size and font name explicitly. Small, Medium and Large are based on the browser's base font size, and the three font options (Serif, Sans Serif and Monospace) use the appropriate browser-configured fonts as well.

For those less inclined to use menus, the commands /font-size and /font-family provide the same functionality. The former accepts the text values "default", "small", "medium", "large", "smaller" and "bigger" which have the obvious meanings from the menu. The latter command accepts the special names "serif", "sans-serif" and "monospace". Both accept other values, either the font size in points (pt), or the font family name.

All these options affect all views in ChatZilla. This doesn't mean you can't be awkward and have different sizes or fonts on different views - just use the commands described in the preferences entry, and the pref names "font.size" and "font.family". For example, if you wanted to make the current network use 12pt text instead of the default, you would do /network-pref font.size 12.

4.7 How do I change the color scheme of the message window?

From the View Color Scheme menu. ChatZilla comes with three color schemes, known as "motifs". Default Motif uses your default fore and background colors, and specifies no colors of its own. Dark Motif is a dark background on white text, with some appropriate colors for various message types. Light Motif is the opposite, using white as the background color, and black for message text.

The /motif command can be used to select a CSS file by means of an ordinary http: or file: URL. For example, the command /motif http://example.host.com/cool-color-scheme.css would be used to select the "cool-color-scheme.css" motif from "example.host.com".

You may also use /network-motif, /channel-motif, and /user-motif commands to set a motif for a particular tab, or group of tabs. See the multiple motifs question for more information.

4.8 How do I use aliases? (or make new commands)

ChatZilla has some extensive scripting support, however, not everyone wants or needs so much power. Aliases provide this "watered down" power, by letting you quickly and simply create a new command that performs a set of other commands (which may themselves be aliases). In its simplest form, an alias is simply renaming a command and fixing some parameters:

/alias moz attach moznet Creates a simple alias called "moz" to connect to MozNet. Running /moz will execute the alias.

You can run multiple commands by separating them with semi-colons (;):

/alias mychannels join #chatzilla; join #venkman; join #xul; join #js Creates a multi-command alias called "mychannels". Running /mychannels will join "#chatzilla", "#venkman", "#xul" and "#js" on the current network.

Often, you want to shorten a command - or run a collection of commands - using some variable input. Aliases can use as many parameters as you like, and may be referenced using $(param key) notation. There are a few different parameter keys available:

Syntax: $(N) - Gets the parameter at position N, with 1 being the first. The parameter is required to run the alias.

Syntax: $(N+) - Gets the parameter at position N, and all those following it. Only parameter N is required.

Syntax: $(M-N - Gets parameter M through N, inclusive. All parameters from M to N, inclusive, are required.

Syntax: $(all) - Gets all parameters. This is similar to $(1+), but does not require any parameters.

Syntax: $(recip)- Gets the name of the target of the alias. This is the name of the view running the alias, e.g. channel name.

Syntax: $(nick) - Gets the user's current nickname.

For this example, the command will use IRC Services "NickServ" to reclaim your registered nickname. When run, it ghosts the nickname (a feature of NickServ which kicks them off the server if you know their password - useful when you've just had to reconnect and your old self is still there), changes to your normal nickname, and identifies with NickServ. The first parameter is your normal nickname, and the second is the password for that nickname.

/alias reclaim msg nickserv ghost $(1) $(2); nick $(1); msg nickserv identify $(2) Creates a command alias called "reclaim" which requires two parameters.

At their most complicated, you can use JavaScript in aliases via the /eval command. These are easily harmful to ChatZilla if you get anything wrong (and sometimes even if you don't!), so we advise you join #chatzilla if you need any help with this.

4.9 How do I show faces in ChatZilla?

There is a motif available that displays pictures next to the nicknames of many of the moznet people. You can find information on how to use this motif at the moznet faces page on hacksrus.

4.10 How do I change the timestamp format?

The timestamp format is controlled by the timestampFormat preference, which you can set globally, per network, or even individually on channels and query views (see tweaking the preferences).

The format string is displayed literally, except for the following 6 substrings, which get replaced as follows:

* %y - 4 digit year

* %m - month number (1 - 12).

* %d - day of the month.

* %h - hour, in 24-hour format.

* %n - minutes.

* %s - seconds.

4.11 Can I use different color schemes for different channels?

Yes. The /network-motif, /channel-motif, and /user-motif commands can be used to choose a motif for a particular tab or group of tabs. For example, you might use a faces motif on the moznet network, but a "plain" motif for dalnet. If you've got some web space (no CGI required) you can publish a CSS file specially tailored to your channel. This could be as easy as picking a custom background image and a matching color scheme. (You will also need to host any images.) Users can try out your motif by typing one of the /*-motif commands listed above, followed by the URL to the CSS file on your web site. Users may also drag a link to a CSS file into the ChatZilla message area, to use that file as the default motif.

4.12 How do I make my own color scheme?

The ChatZilla output window is styled with standard CSS. Messages in the output window are nothing more than elements in an HTML table. Those elements have attributes on them which identify who sent the message and what type of message it is. You can then style specific messages using CSS attribute selectors. Read the comment at the top of output-base.css for more information. Once you've got a handle on that, check out the source for the Dark and Light motifs (pay particular attention to the way they import the base motif.) The Stylin' ChatZilla document is a bit dated, but might offer some insight as well.

4.13 How do I make a faces motif for my channel/network?

If you have a bit of cgi-enabled server space and some spare bandwidth, you might try using the scripts located in chatzilla/facesrv/ on hacksrus. In that tarball, you'll find three scripts:

* makefaces.pl creates three faces motifs (output-default-faces.css, output-dark-faces.css, and output-light-faces.css), based on images in a particular directory.

* addface.pl is a CGI that accepts an image file via the web, and scales it to an appropriate size, converts it to a png, and then runs makefaces.pl.

* faces.pl is a CGI that can be used to display all of the faces on a single web page.

4.14 Can I make my own HTML file for the output window?

Warning: There are currently permission problems relating to custom output windows, which involve granting special permissions to all local files and including some extra code in the output window itself. Unless you are really intimate with codebase principals and their use in Mozilla, it is advised you don't try to do this.

Yes. By replacing the HTML file ChatZilla displays messages in, you can make an unlimited number of customizations for the output window. Because the output window has access to all of Mozilla, including XPCOM, it can do anything ChatZilla can. This includes redisplaying information scraped from the web, state stored in a bot of some sort, or just about anything else. For security reasons these replacement ``output windows'' cannot be remotely located, and must instead be installed by users.

The "outputWindowURL" pref is used to select the output window file to use for a particular network, channel, or user. See the default output-window.html and output-window.js for more clues.

This hasn't gotten much use as of yet, but the basic idea is to make your own output-window.html, but use the stock output-window.js. JavaScript customizations should go in a new .js file, included in a (script) tag in your custom output-window.html.

4.15 How do I script ChatZilla?

With JavaScript! ChatZilla is written entirely in JavaScript, and has provisions for loading (and unloading) plugins written in same. Because ChatZilla itself is written in JavaScript, plugins are not much more than additional ChatZilla code, and can therefore do anything ChatZilla can do. There are a number of convenience functions for adding new commands, new menus, or just hooking existing events. While these techniques have yet to be well documented, there are a number of samples available. The sample plugin shows the basics of how to define new commands and place them in menus. The application framework that ChatZilla is built on was originally developed for Venkman. I gave a techtalk during that time that described how to use the framework to extend Venkman. The notes are online, and may prove useful. The source of ChatZilla itself provides a number of examples of how to use the framework:

* For a list of default menus in ChatZilla, see menus.js.

* For examples of the default commands, see commands.js.

* Default preferences are defined in prefs.js.

* Internationalizable command strings, such as help text, UI labels, and parameter lists are stored in chatzilla.properties.

Tips: If you find yourself stuck, drop in on #chatzilla - there are a number of people in there who have experimented with scripting, and may well be able to help directly, or give good pointers to learning yourself.

4.16 How do I install a third party script in ChatZilla?

1. Firstly, you must find out where ChatZilla looks for scripts. This can be done as follows:

Input

/pref profilePath

Output

Preference profilePath is "C:\Documents and Settings\James\Application Data\Mozilla\ChatZilla\Profiles\w58z18i7.default\chatzilla".

Note: If the above command outputs an empty value, you will need to do /pref profilePath - instead, to fix it.

2. Go into the directory displayed by ChatZilla, then into the scripts subdirectory. This is where ChatZilla looks for scripts to load when starting.

3. Create a new subdirectory for the script - name it something related to the script. ChatZilla doesn't care what you call it.

4. Save the script into this new subdirectory. If the script came with multiple files, put them all in here. Make sure that a file called init.js exists, or ChatZilla wont load the script!

5. Restart ChatZilla.

Tips: If you're having problems getting a script to load, it may be having errors during initialization. To check this, open the client view with the /client command, then tick IRC > Open This Tab At Startup, and restart ChatZilla. Any errors that occur loading scripts during startup will be displayed on this new view.

Note: ChatZilla will also load chatzilla/scripts/init.js at startup, if it exists. It is recommended that you use this for one-off, personal scripts, or for any script that might need to make sure it is the first one loaded.

4.17 How do I tweak the rest of the preferences?

There are two ways. The first, and easiest, is to use the prefs dialog, accessible from ChatZilla > Preferences. If you want more control, and access to "hidden" prefs, use the /pref command, or one of the variants. type /pref to list all of the global preferences. You may provide a pref name, or just the first few letters of a pref name, to see the current value of matching preferences. To change a preference, type /pref pref-name new-value. To edit a preference for a specific network, channel, or user, use /network-pref, /channel-pref, or /user-pref. There are network, channel, and user specific variants of the /motif command as well.

5 · Documentation and Resources

5.1 How do the faces motifs work?

The faces motifs are nothing more than css files. They work just like any other motif, except they insert images before certain nicknames. Those images are located on a web server, along with the CSS files. If your CSS-fu is strong, you may want to take a look at the source.

5.2 Where is the rest of the documentation?

*The ChatZilla Home Page is the hub of all things ChatZilla.

*The ChatZilla Development Page contains installable development versions of ChatZilla, and provides up-to-the-minute information about ChatZilla development.

*The Official ChatZilla FAQ is what you're reading right now. You can also get it in XML format.

*Moztips maintains an Unofficial ChatZilla FAQ. It's a bit dated, but still has some useful information.

5.3 Is there a newsgroup or mailing alias for ChatZilla?

Yes. The newsgroup is mozilla.dev.apps.chatzilla and can be found on the public news server news.mozilla.org. It is mirrored on the mailing alias dev-apps-chatzilla@lists.mozilla.org. To subscribe, send an email to mailto:dev-apps-chatzilla-request@lists.mozilla.org?subject=subscribe with the subject "subscribe". To unsubscribe, send a mail to the request address with the subject unsubscribe.

5.4 Is there an IRC channel for ChatZilla?

Of course there is! The channel is #chatzilla on irc.mozilla.org. If you are running Mozilla and already have ChatZilla installed, you can join the channel by clicking on the #chatzilla link above. If you are new to IRC, please read over irchelp.org. Please be patient if you join #chatzilla looking to ask a question. I'm pretty much always logged on to IRC, but that doesn't mean I'm actually looking at the window, or even sitting in front of the computer. If I see your question before you leave the channel, chances are I'll answer it. If you include the word "chatzilla" in your question, it'll ring a bell on my machine which may make me respond sooner. Please don't abuse that :) Often times there will be other ChatZilla developers and/or users on #chatzilla who may be able to answer your question just as well.

5.5 Where can I find more motifs?

The motifs directory on hacksrus.com has a number of alternate motifs, in addition to the stock motifs. You can use these motifs by dragging the .css file onto ChatZilla's message window, or by using the /motif command. If you have made your own motif, and would like me to serve it here, please say so.

5.6 How do I suggest a question for the FAQ

Please mention it on the mozilla.dev.apps.chatzilla newsgroup, or in the irc channel.

6 · Source Questions

6.1 Where is the ChatZilla source code located?

ChatZilla is written entirely in JavaScript and XUL and lives in ChatZilla.jar in the Mozilla Chrome directory. You can view the source on-line using LXR: mozilla/extensions/irc/. Most of the actual front-end code is in the xul/content/ subdirectory, and you'll find the supporting libraries in js/lib/ subdirectory. If you want to change things, you're much better off using a ChatZilla plugin, then you don't need to keep re-applying your changes each time there's a new version. See How do I script ChatZilla? for more information on this.

6.2 What do I do if I find a bug in ChatZilla?

1.Search for duplicates. You can scan the entire ChatZilla bug list or search for a particular bug on the list.

2.If you can't find a duplicate, then please file a bug.

7 · Final Words

Finally, i have done everything. Have this delayed for months because of work but i guess it's done now. Thank you so much to fredfred for guiding me all the time. :)