ZIRCON Version 1.16

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.

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

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

This window provides a set of buttons and menus that let you control
your IRC session. The various fields are :

Configure : Selecting from this menu allows you to configure various
aspects of the Zircon system. IRC lets you configure your nickname,
IRC name and server lists. People lets you configure your Friends list
and your ignore list. Channels sets up characteristics of your
favourite channels and Info controls various miscellaneous features of
the system. Save Current will save your current stae in your rc file.

Zircon VX.X: This button tells you the version of Zircon you are
running and brings up the credits panel which also tells you the
version of tcl and tk that you are using.

Register: This button allows you to ask to join or leave the zircon
mailing list and whether or not to receive information messages (if
there are any) from the ZirconBot when you sign on.

Help: Clicking here brings up a dialog asking for a topic on which you
wish help. This will be sent to the help service nickname indicated in
the other field of the dialog. The default service is configurable
from your rc file and can be found on the Info configure window.

Busy: Clicking this will mark you as busy (or not busy) which will
currently cause unsolicited notices and messages to be sent to the
info window and for messages a reply sent to the originator telling
them you are busy.

Invisible, Wallop, SrvMsg: Checking these buttons will cause you to be
marked as Invisible, to receive wallops and to receive server
messages. You normally would not want to do this!

IRC Op: This button lights up when you are an IRC operator. When lit,
clicking it causes you to have operator status removed from you.

Nickname: The menu from this button has your favourite nicknames on
it. Select one and it will be sent to IRC. By default the first item
is chosen by Zircon. Typing in the entry box to the right of the
button will also change your nickname when you hit return.

IRCname: Ditto for IRC names, but these cannot be changed on the fly.
Changes will only take place on a server change.

Server: A list of your favourite servers. The first one is chosen by
default. Selecting from the menu or typing in the entry will close
your current session and connect to that server. Typing Escape instead
of Return in the entry box will prompt you for a port number of the
server - again you would not normally use this feature.

Away: This menu contains your favourite away messages. The item Back
marks you as no longer being away. Other prompts you for a message and
the other items are the messages you have saved in your rc file. When
you are away this button is lit.

BRB: Clicking this sends the message BRB to all the channels you are
currently on. The button label changes to back and clicking on it
again sends the message "back" to all the channels.

Friends: Clicking this brings up the Friends window. This has buttons
for all the users you chose to have in your userInfo variable
(configurable from the People panel). If the user is on IRC the button
wil be lit if you have configured the isonForeground, isonFont and
isonBackground X-resources. If the friendsOn variable is set then only
those friends that are on IRC will have buttons displayed.

Quit: Quits IRC. You will be prompted to confirm the quit and to enter
a new signoff message. You can set up a default message by setting the
variable signoff in your rc file or from the Info panel. You can
turn off the request for confirmation from the Info panel as well. If
you have altered your configuration and not saved it you will be asked
whether or not you wish to do so. NB the default action is to NOT
save the file.

Servers: This menu allows you to perform various IRC server operations.

Users : This allows you to perform various IRC user operations.

Channels : This allows you to perform various IRC Channel operations.
Also on this menu are the names of channels you asked to be put here.
Selecting one of those will join that channel.

Services: This menu provides access to various IRC service providers.
Currently nickserv and noteserv are there by default, and you can add
your own by setting the services variable in your rc file.

Channel: This entry is where you can type in the name of a channel you
wish to join. Type here, hit return and a window will pop up, assuming
you are allowed access to the channel that is!

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. 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.

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. You can send a single line
message to user from a channel window by typing a line of the format :

nick message text

and terminating it with Meta-Q. This will be sent to the nick without
opening a conversation window. You can also achieve this by typing a
/msg command and terminating it with Meta-Return.

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 .zirconrc 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 DOTzirconrc and create your own .zirconrc
based on it.

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.



