INTRO

clirc is an IRC client.  It is written in Python to maximise the
ability of people who know to customise it in any way they desire.
Therefore people who don't know may want to use another IRC client.

clirc needs Python 1.4 and a moderately new version of (n)curses.


INSTALLING

Although Python is an interpreted language and there is no need as
such to compile clirc, the cursesmodule coming with the regular Python
distribution is rather limited and I've included a newer one by
someone whose name is in the source.  This needs to be compiled, and
your Python needs to be built with dynamic linking, or you can't use
it.  (Actually you can, but go figure it out.)

[v0.0.4 Note: there is a bug in ncurses 3.4 which causes SIGWINCH to
hang clirc.  I uso version 4.1 myself, and it seems relatively well
behaved.]

There is no configure script because that would be overkill.  Edit the
variables at the beginning of the Makefile to the proper values, and
type

	make

to compile the new cursesmodule and

	make install

to install clirc.


DEFAULT BEHAVIOUR

Commands are ircII-style, as opposed to Irchat-style.  I might make
this configurable as well.

/reload		reloads the configuration file and the source
/join		joins a new channel ($1) and creates a window for it
/leave		leaves a channel and/or deletes a window
/quote		pass some literal data ($1-) to the server
/exit		sends a signoff message ($1-) to the current server
/quit		sends signoff messages ($1-) to all servers
/terminate	exits immediately
/msg		sends a message ($2-) to someone / some channel ($1)
/query		opens a window for conversation with a someone ($1)
/me		a ctcp action ($1-)
/ping		pings the current server
/whois		performs a whois query ($1)
/topic		changes topic on the current channel ($1-)

When a server is exitted voluntarily, all its windows are deleted.
When all the windows have been deleted, the client exits.

The editing keys are roughly similar as in Emacs by default.


CONFIGURING

This section needs a good explanation, but that will have to follow
when the clirc core is relatively finished.  The main idea is that you
can write code and declarations in your $HOME/.clircrc.py from where
they are read when the program is started, and each time you type
/reload (unless of course you configure /reload to do something else).

Note that /reload also reloads all other clirc modules written in
Python.

An example .clircrc.py file is included in the distribution.  It is my
own configuration file with perhaps some modifications for
illustrating various points.

[v0.0.4 Note: the internal workings are being completely reworked for
0.1.0, and it should be reasonably straightforward to configure that
version (unlike this one :-)]


RTFS

I am lazy and can't be bothered to write very much documentation when
I don't get anything for it.  If people ask good questions I might
include both the question and the answer here, but otherwise Read The
Fine Source available ;-)

-- 
Teemu Kalvas
<chery@s2.org>
1997-10-30 [1997-12-03]
