ZIRCON Version 1.18

This is a getting started document which will eventually turn into the
full Zircon documentation.....

Running zircon
--------------

Zircon responds to various command line options and checks for various
environment variables. It also reads a preferences file which by
default lives in the file ~/.zircon/preferences (where ~ is your home
directory). Future versions of zircon will use the .zircon directory
for storing other configuration files etc. Environment variables have
take precedence over values set in the configuration file, and values
set on the command line take precedence over environment
variables. Before doing any of these, zircon will attempt to read the
system preferences file if it exists.

The command line options are :

	-j	: do *not* join channels that have auto-join set on them.
	-o	: do not process on conditions
	-z	: do not read *any* preferences files.
	-r	: the name of a preferences file to read. The system
		  file will *not* be read in this case.
	-i	: set your ircname
	-N	: set the nickname to use
	-S	: set the host name of the server to use
	-d	: set the name of the directory where the preferences
		  file lives.
	-C	: Dont connect to any netspaces. useful for configuration.
	-D	: enable debugging

The environment variables used are:

	IRCNICK	: to set your nick
	IRCNAME	: to set your irc name
	IRCSERVER : to set the server to use
	(N.B. you can override the names of these variables by setting
	  zircon(envnick), zircon(envname) and zircon(envserver) in
	  your preferences file. This lets you have one set for other
	  clients and one for zircon)

	USER	: to find out your user name
	HOSTIPADDR : the IP address of your host (useful if you are on
		     a slip or PPP connection.
	ZIRCONPREFDIR : to set the name of the directory where the
			preferences file lives.
	
The Windows
-----------

1) Zircon Information Window

Each netspace has its own info sub-window.

This is where all messages that do not have another place to go to get
sent. Such things as Message of the Day and various errors routinely
appear here. You can divert other messages to this window by setting
various configuration options if you do not want to see them as pop up
windows. The entry at the bottom of the window allows you type irc II
style commands should you actually wish to do this - only a subset of
the commands are supported as several of them make no sense in the
ircon environment.


2) Zircon Control Window

Each netspace has its own control panel.

The top menu bar allows you to load/unload netspaces using the
Netspace menu.

The Zircon menu lets you do configuration and quit from
zircon. Quitting here will close all connections that are open and
stop the program. Meta-Q will also quit.

There is a small amount of Help information on the help menu but not
enough yet.

In the control panel you can set select servers and port numbers, open
and close connections. Mark yourself away in various ways. Interact
with Users who are not on channels, get server information. The entry at
the bottom is where you put a channel name that you want to join -
type in the name and hit return. The actions on the Channel menu also
work on the channel named here.

3) Channel windows

To send to the channel just type and finish with Return. If you
terminate the line with Shift-Return it will be sent as an action to
the channel. You can swap the meaning of these by selecting the
Actions item on the Mode menu for that channel. This makes Return send
everything as an action. Control-return sends the text as a NOTICE to
the channel. Meta-Return will interpret lines beginning with a /
charactera as an irc II style command. Type escape and a palette of
all the characters available to you will appear. Click on the
character you want for it to be inserted. The palette also supports
formatting options and colour if you have enabled it (not recommended
- mIRC colour is broken). You can also get the palette by pressing
button-3 on your mouse. (Sorry all you 2 button mouse users!)

Other bindings :

Meta-b turns on (and off) bold
Meta-v turns on (and off) inverse
Meta-u turns on (and off) underlining.
Meta-o turns off any and all of the above.
Meta-s sends the value of the variable smiley - currently :-)
Shift-Meta-s sends the value of the variable scowl - currently :-(
Control-Meta-s sends the value of the variable wink - currently ;-)

You can add your own bindings for keys as well.

The Mode menu allows you to set various modes on the channel. Some of
them are Zircon features others are IRC modes. Jump says whether or
not to jump forward if you scrolled back and new input arrives. Quiet
turns off the bell and Draw turns off the sketch pad.

The Channel Menu allows you to carry out channel operations on the
current channel. This includes the use of the Sketch Pad facility
which allows you to send simple drawings to other Zircon users. Please
do not use this in channels where there are other users who do not
have Zircon. The Draw feature can be turned off on a per channel basis
and also by the setting of the trust(draw) variable which contains a
list of nick patterns for people from whom you will accept drawings.

The Action menu allows you to have some ready made actions.

The Names menu has a mneu of all the users on the channel with
pull-right menus with other features on them.

Clear clears the channel text area. Shift-Clear clears the window and
the channel history buffer. The simple Clear currently does not work
because of a feature of tcl/tk.

To leave a channel just click on the Leave button. Shift-Leave will
cause you to quit Zircon and Control-Leave will let you leave the
channel but will bring up a monitor window that shows the visible
users on the channel.

To send a private message to a user on a channel, press on the button
with their name on it to the right of the channel window and a menu
will appear.  Select Msg from this menu and a new window will be
created. This is a conversation window and is used exactly like a
channel window, except that communication is only with the named user.
Clicking on Leave will dismiss the window. You can also get a conversation
window by Shift-double clicking on any line of text sent by the user to
the channel. If a users name appears in a window, select the name and
type Meta-M to send a message to that user.

To send a message to a user *not* on a channel with you use the Users
menu on the control panel or use the Meta-M shortcut above.

To the left of the text area is a panel with buttons for all the users
that are currently on the channel. Each button has a menu of
operations that you can perform for that user. Your button is always
at the top of the list. When a netsplit is detected the button for the
affected user will be greyed out and restored when the split heals.
This menu can be turned on and off from the Names menu.

The Topic is displayed at the top of the window. It can be set either
by typing in the field and hitting return or else by chosing a topic
from the menu that hangs of the Topic button. If you are not allowed
to set the topic the Topic button will be greyed out and you will not
be able to type in the entry. You can enter a topic using the New item
on the menu.

4) Notice and Message Windows

When a user sends a message to you a new window will pop up and you
can type to it just like a channel and the conversation will proceed.
When a notice comes in the same thing happens but your replies will be
sent back as messages. Notice windows are really only useful when
comunicating with service providers rather than users.

-------------------------------------------------------------------

You should create yourself a .zircon/preferences file using the
Configure option on the control panel.

You will at times see various dialog boxes that contain information or
ask for input or confirmation of something. Some of these can be
disabled - look at the file Preferences and create your own
.zircon/preferences based on it.

I recommend that you use netspaces, even if you are only using one
network.
Create a .zircon/netspaces directory and create a file with the name
of the network you want to use. this file contains preferences for the
is network - in particular the servers for it. With netspaces you
should not include servers in the .zircon/preferences file.

To load the netspace add the line 

Netspace <netName>

to the end of your .zircon/preferences file.

Look at the file zircon.ad for some information on the X resources that
it is useful to set. To set colours and fonts for individual users
and channels you can do things like :

zircon*#zircon#lindsayForeground: yellow
zircon*lindsayBackground: yellow
zircon*lindsayFont: yellow

You can also set things for messages, notices and chats from users :

zircon*message*zirconbot*foreground: black
zircon*chat*zirconbot*foreground: black
zircon*notice*zirconbot*foreground: black

where the user and channel names must be in lower case.
