ChatZilla is currently distributed as part of the Mozilla Suite, the SeaMonkey Suite, and is available as an extension for Mozilla Firefox.
Mozilla Firefox can uninstall extensions such as ChatZilla as follows:
Mozilla and SeaMonkey do not have an uninstall feature for XPIs, but removing ChatZilla is usually possible.
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.
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:
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.
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.
ChatZilla will work automatically with most configurations as it runs with your browser's networking configuration. There are four main configurations you can use:
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.
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.
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.
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.
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.
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.
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).
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.
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.
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
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:".
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.
What do the symbols/blobs in the user list mean?
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.
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.
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.
/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
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.
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.
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.
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.
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.
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:
Nickname 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.
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.
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.
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.
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:
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.
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.
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
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.
To try anyway, enter chrome://chatzilla/content/ into the location bar.
The different colors indicate different degrees of activity.
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.
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.
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.
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.
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
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.
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).
Control - + Make text bigger by 2pt
Control - – Make text smaller by 2pt
Control - 0 Reset to browser-default
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.
From the
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.
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:
/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.
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.
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:
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.
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.
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:
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.
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:
Input
/pref profilePath
Output
Preference profilePath is "C:\Documents and Settings\James\Application Data\Mozilla\ChatZilla\Profiles\w58z18i7.default\chatzilla".
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.
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.
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.
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
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.
Please mention it on the mozilla.dev.apps.chatzilla newsgroup, or in the irc channel.
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.
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. :)