Next Previous Contents

1. IRC

1.1 What is XChat?

XChat is a graphical IRC client that runs on UNIX like systems. It uses the GTK+ toolkit for graphical abstraction. It if GPL'ed software (free software). It is known to run on these systems:

1.2 Introduction to IRC

IRC stands for "Internet Relay Chat". It was originally written by Jarkko Oikarinen ( in 1988. Since starting in Finland, it has been used in over 60 countries around the world. It was designed as a replacement for the "talk" program but has become much much more than that. IRC is a multi-user chat system, where people convene on "channels" (a virtual place, usually with a topic of conversation) to talk in groups, or privately. IRC is constantly evolving, so the way things to work one week may not be the way they work the next. Read the MOTD (message of the day) every time you use IRC to keep up on any new happenings or server updates.

IRC gained international fame during the 1991 Persian Gulf War, where updates from around the world came across the wire, and most irc users who were online at the time gathered on a single channel to hear these reports. IRC had similar uses during the coup against Boris Yeltsin in September 1993, where IRC users from Moscow were giving live reports about the unstable situation there.

The user runs a "client" program which connects to the IRC network via another program called a "server", which runs on another computer. Servers exist to pass messages from user to user over the IRC network.

XChat is a graphical client that runs using GTK( GTK Homepage), it is mainly designed to run under UNIX (By this I mean all the UNIX's, like Linux, *BSD etc), but also runs under Win32 systems without some features.

1.3 IRC Basics

As mentioned above the channel is the basic unit of collective IRC chatting. Everyone who is "in" a channel can see all messages written to the channel and can (usually) write to the channel themselves.

All IRC commands start with a "/", and most are one word. Typing /help will get you help information etc

Once on a server a /join #channel command will join you to the channel #channel in the current window, any further joins while still joined (e.g. before a /part) will open a new window. Once in a channel just type

Channel operators are kings/queens of their channel. This means they can kick you out of their channel for no reason. If you don't like this, you can start your own channel and become a channel operator there.

An IRC operator is someone who maintains the IRC network. They cannot fix channel problems. They cannot kick someone out of a channel for you. They cannot /kill (kick someone out of IRC temporarily) someone just because you gave the offender channel operator privileges and said offender kicked you off.

#hottub and #initgame are almost always teeming with people. #hottub is meant to simulate a hot tub, and #initgame is a non-stop game of "inits" (initials). Just join and find out!

To get a list of channels with their names and topics, do /list -min 20 (on ircII) which will show you channels with 20 or more members. You can also do this for smaller numbers.

Many IRC operators are in #Twilight_Zone ... so if you join that channel be prepared for a lot of senseless dribble, more like what you find on the other channels listed above (#hottub). What was once a place of people who could help you has turned into just another place for those who have nothing better to do with themselves than just be there. If you find other documents saying go there to ask questions, ignore them. They should be considered to be out of date.

There are not enough nicknames to have nickname ownership. If someone takes your nickname while you are not on IRC, you can ask for them to give it back, but you can not *demand* it, nor will IRC operators /kill for nickname ownership. If you goto #Twilight_zone, you will find a bunch of people who will refuse to do this for you, yet they will do it for themselves or their friends or use /kill for even less reasonable uses. There are, literally, millions of possible channel names, so if someone is on your usual channel, just go to another. You can /msg them and ask for them to leave, but you can't force them to leave.

Channel operators are the owner(s) of their respective channels. Keep this in mind when giving out channel operator powers (make sure to give them to enough people so that all of the channel operators don't unexpectedly leave and the channel is stuck without a channel operator).

On the other hand, do not give out channel operator to everyone. This causes the possibility of mass-kicking, where the channel would be stuck without any channel operators.

You have one option. You can ask everyone to leave and rejoin the channel. This is a good way to get channel operator back. It doesn't work on large channels or ones with bots, for obvious reasons.

On IRC, you cannot be banned from every single server. Server-banning exists only on a per-server basis (being banned on one server does not mean you are automatically banned from another). "Ghosts are not allowed on IRC" means that you are banned from using that server. The banning is in one of three forms:

The most general answer is "use another server", but if it bothers you, try writing to the irc administrator of that site -> /admin -- plead your case. It might even get somewhere!

The best, basic, IRC user's manual is the IRC Primer, available in plain text, Postscript, and LaTeX from ... Another good place to start might be downloading the IRC tutorials.

The IRC protocol is fully documented in RFC 1459

1.4 Etiquette

This subsection is by Lea Viljanen, Ari Husa and Helen Rose for irc2.9.5, thank you


The most widely understood and spoken language on IRC is English. However! As IRC is used in many different countries, English is by no means the only language. If you want to speak some other language than English (for example with your friends), go to a separate channel and set the topic to indicate that.

On the other hand, you should check the topic before you move to a channel to see if there are any restrictions about language. On a channel not restricted by a topic, please speak a language everybody can understand. If you want to do otherwise, change channels and set the topic accordingly.


It's not necessary to greet everybody on a channel personally. Usually one "Hello" or equivalent is enough. And don't expect everybody to greet you back. On a channel with 20 people that would mean one screenful of hellos. It's sensible not to greet, in order not to be rude to the rest of the channel. If you must say hello, do it with a private /msg. The same applies to goodbyes.


When you come to a new channel it's advised you to listen for a while to get an impression of what's discussed. Please feel free to join in, but do not try to force your topic into the discussion if that doesn't come naturally.

Next Previous Contents