
---------------------------------------------------------------------
Short introduction to tkirc (Version 1.128)            atte, 08-07-97
---------------------------------------------------------------------
                                         Version of this README: 1.44
                                        -----------------------------

Summary
-------

	0. Introduction
	1. Before installing
	2. How to install
	3. Command options
	4. Hided features
	5. Additional commands
	6. Credits
	7. How to reach the author
	8. tkirc's homepage



0. Introduction
---------------

tkirc is a frontend for unix's ircII (shell-client for the Internet
Relay Chat) based on Tcl/Tk.

Copyright (C) 1996-97  Andreas Gelhausen <atte@gecko.North.DE>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA  02111-1307, USA


This file ('README') is NOT a sufficient documentation for tkirc. I
know that! It only describes the things you should know to get tkirc
started. Perhaps one day there will be a real documentation for it, 
but you should not wait for it! *grin*

If you know how to use ircII, you should not have any problems to use
tkirc after installation.

Just start it and try...   =8^)

	           Have fun,
		 	       Andreas



1. Before installing
--------------------

You need the following things to start tkirc:

- a version of ircII that supports the options '-d' and '-q'
  (At the moment I use version 2.8.2 of ircII.)

- Tcl 7.5 and Tk 4.1 or higher versions

Hint: If possible, choose a Tcl/Tk version greater or equal 8.0a2.
      You will notice the higher speed! 

If you don't want to install these things, try another IRC client
or use ircII without this GUI.



2. How to install
-----------------

- Install the packages of Tcl and Tk, if you have not already done.

- Make sure that the Tcl/Tk program 'wish' and ircII (unix's IRC client)
  is in your path. ircII can usually be found as 'irc'.

Now you should already be able to start 'tkirc' to get a first impression.
It's possible to select nickname and server via shell parameter.

Usage:
  ~> tkirc [<nickname> [<server>]]

Go on, if you think you like the program. =:^)

- Copy the script 'tkirc' to your preferred directory. 
  (Examples: '/usr/local/X11/bin/', '$HOME/', ...)

- Copy file 'tkircrc-example' as '.tkircrc' in your home directory
  and edit it. There should be enough comments and examples in for all
  variables.

- Now you only have to start 'tkirc' and to enjoy (maybe the second time).
  *grin*



3. Command options
------------------

You can start tkirc with following options:

  ~> tkirc [-t <filename>] [-x <ircpath>] [-q] [<nickname> [<server>]]


-t <filename>
  This option allows you to load a different file to be used as the
  .tkircrc file for tkirc. The default is $HOME/.tkircrc.

-x <path>
  You can declare another path for the ircII command. It's also possible
  to start ircII from another host via the remote shell command 'rsh'.
  See also: /EXCHANGE

-q
  Start up tkirc quickly -- don't load file '$HOME/.tkircrc'.

<nickname>
  Set the nickname (overrides the environment variables 'IRCNICK', 'USER',
  'LOGNAME' and tkirc's variable 'preferred_nicknames').

<server>
  Set the list of servers. See also ircII's manual for OPTIONS 
  (server list)!



4. Hided features
-----------------

The features you find in this section will not be listed through
'/HELP' and can not be found within tkirc's menus.

- nickname completion

  If you have joined a channel, you can press TAB and tkirc will
  complete the nicknames of other users. If the nickname is 
  is the first word in your command line, the value of variable
  'nick_completion_suffix' will be added.

- more than one channel per window

  You are able to join more than one channel in one window. The
  channelname above the userlist will be changed into a menubutton.
  All channels you have joined in that window will be displayed
  in window's title.

- nickname history

  When you receive a private message or a private notice, the
  nickname of the sender will be added to the nickname-history.
  Press ALT-TAB and you will find a '/msg <nickname>' within
  your command line. Press ALT-TAB again and you will see that
  tkirc cycles the nicknames. Maximum length of nickname-history
  is set to 5 to prevent long sequences of ALT-TABs. =:^)

- user definable colors and text styles

  You are able to choose your own colors and text styles for 
  different kinds of messages, if you don't like the default values.
  See also variable 'user_styles' in file 'tkircrc-example'.

- function to detect netsplits and netjoins

  If the value of variable 'react_to_netsplits' is set to '1',
  tkirc will show you one message for netsplit or netjoin instead of
  long sequences of netsplit-signoffs or join-messages.

- highlighted URls

  URLs (addresses for the World Wide Web) will be highlighted (like
  buttons for example) and you can perform actions on them.
  See variables 'on_urlclick' and 'url_style'!

- highlighted message IDs

  Message IDs (of news articles for example) will also be highlighted
  and you can also perform actions on them.
  See variables 'on_msgclick' and 'msgid_style'!

- function to detect and prevent channel takeovers

  If value of variable 'react_to_takeover' is set to '1', tkirc
  will give you an audible and visible alarm. In the case that you 
  have channel operator privileges at the moment of takeover, a 
  request window will be opened and you can react with one ban 
  and multiple kicks. Nothing will automatically happen. You have
  the choice to do something against the takeover. See also variables
  'react_to_takeover', 'takeover_users', 'takeover_period',
  'takeover_kick_reasons' and 'takeover_star_patterns' in file
  'tkircrc-example'!

- ctcp-flood protection

  tkirc also include a protection against ctcp-flooding. This feature
  is based on some settings of ircII.
  See also variables 'react_to_ctcp_flood', 'host_flood_ignore_period'
  and 'global_flood_ignore_period'!

- file request for your commands

  If you include ':file' to your command (you typed within one of
  tkirc's command lines), this ':file' will be replaced by the name
  of the file you selected through the request window.
  Example: Try '/dcc send <nick> :file'!

- command history

  On CURSOR-UP and CURSOR-DOWN the command history will be cycled.

- progammable commands through Tcl/Tk

  Beside ircII's aliases you are able to creat your own Tcl/Tk
  commands and add your own menu to tkirc's graphical user interface.

- many other user definable features

  This section is not a complete list of tkirc's features. You have 
  to read the file tkircrc-example to see many more!

- ircII's commands

  Besides tkirc's additional commands (listed in next section) you 
  are able to use many of ircII's features and commands. =:^)



5. Additional commands
----------------------

 It's possible to use nearly all commands of ircII. Try command '/help'
 and you will see a list of tkirc's and a list of ircII's commands.
 This section lists the additional commands of tkirc and shows their
 usage.


 o BANNICK

    Usage: /BANNICK <nick>
      This command opens a new window you can select a banpattern with to ban
      user <nick> from the actual channel.

 o BANCOMMENT

    Usage: /BANCOMMENT <channel> (<number>|<pattern>) <comment>
      This command allows you to set a comment to a ban of channel <channel>.
      <number> or <pattern> selects the certain ban of <channel>'s banlist.

 o BANINFOS

    Usage: /BANINFOS <channel>
      This displays more informations of <channel>'s bans than:
       MODE <channel> b

 o CHAT

    Usage: /CHAT <nick1>[,<nick2>[...]]
      A new window will be opened for a private conversation with all users
      specified through <nick1>[,<nick2>[...]].

 o CLOSE

    Usage: /CLOSE
      The window you typed this command in will be closed.

 o CLOSECRAPLOG

    Usage: /CLOSECRAPLOG
      The craplog will be closed.

 o CLOSELOG

    Usage: /CLOSELOG (<channel>|<nick>)
      The logfile you opened for conversation with <channel> or <nick> will be
      closed.

 o CLOSELOGALL

    Usage: /CLOSELOGALL
      The logfile for all kinds of irc-traffic will be closed.

 o CLOSEMSGLOG

    Usage: /CLOSEMSGLOG
      The logfile for whole traffic of private messages and notices will be
      closed.

 o CRAPLOG

    Usage: /CRAPLOG <filename> [-d]
       This command allows you to open file <filename> to log all kinds of
       crap in. Select option '-d' for additional time stamps.

 o DCHAT

    Usage: /DCHAT <nick>
      A new window will be opened for a direct client to client (DCC)
      conversation with user <nick>.

 o EXCHANGE

    Usage: /EXCHANGE <ircpath> [<nick> [<server>]]
      This command allows you to exchange the ircII command, tkirc is just
      running with. If you are able to use the remote shell command 'rsh',
      you can start your ircII on another host. For example:
       /exchange "rsh <host> -l <your_login> <irpath_on_that_host>" <nickname>

      This command is also available as shell option '-x'.
      Try to start from shell:
	~> tkirc -x "rsh <host> -l <your_login> <irpath_on_that_host>"

 o LOADBANINFOS

    Usage: /LOADBANINFOS <channel> <filename>
      This tries to update baninfos of channel <channel> with the includes of
      file <filename>.

 o LOG

    Usage: /LOG (<channel>|<nick>) <filename> [-d]
      The logfile <filename> will be opened for the traffic of channel
      <channel> or for a private chat with user <nick>. Select option '-d'
      for additional time stamps.

 o LOGALL

    Usage: /LOGALL <filename> [-d]
      The file <filename> will be opened to log the whole irc-traffic in.
      Select option '-d' for additional time stamps.

 o LOGS

    Usage: /LOGS
      A list of all opened logfiles will be displayed.

 o MSGIDS

    Usage: /MSGIDS
      A window will be opened that shows you a list of all message IDs 
      detected in your tkirc session.

 o MSGLOG

    Usage: /MSGLOG <filename> [-d]
       This command allows you to open file <filename> to log all private
       messages and notices in. Select option '-d' for additional time stamps.

 o NEWWIN

    Usage: /NEWWIN
      This command opens a new traffic window.

 o NOTIFIES

    Usage: /NOTIFIES
      This command opens a window to display all notified nicknames.

 o SAVEBANINFOS

    Usage: /SAVEBANINFOS <channel> <filename>
      Tries to save baninfos of channel <channel> into file <filename>. You
      can load these baninfos, when you rejoin channel <channel>.

 o SAVEBUFFER

    Usage: /SAVEBUFFER <tofile>
      The buffer of the current window will be saved into file <tofile>.

 o SEARCH

    Usage: /SEARCH <text>
      This command highlights all occurrences of '<text>' in the text field
      and jumps to it/the next.

 o SPLITS

    Usage: /SPLITS
      Shows you a list of all detected netsplits.

 o URLS

    Usage: /URLS <channel1>[,<channel2>[,...]]"
      A window will be opened that shows you a list of all URLs detected in
      your tkirc session.

 o WJOIN

    Usage: /WJOIN <channel1>[,<channel2>[,...]]
      This command opens a new window for each channel and joins all of
      them.



6. Credits
----------

Many people used tkirc and reported bugs and feature requests to me in
the past and still do. I wish to thank each of them, but I think the 
following list won't be complete. Sorry for my bad memory!

Here they are (in no certain order):  =;^)

	Nickname        Realname
	-----------------------------------------
	giz		Klaus Weber
	cosinus		Christian Stelter
	Nobody		Ingo Wilken
	ill		Markus Illenseer
	Gio		Georg Mage
	Bach		Thomas Witt
	DrMabuse        Matthias Lhr
	Optimizer	Aaron Digulla
	Mick		Michael Hohmann
	Joulupukk	Matthias Faust
	...



7. How to reach the author
--------------------------

If you have questions, bug reports, feature requests, and so on,
you can reach me via snail mail...

		       Andreas Gelhausen
		       Graf-Spee-Str. 23 b
		       26123 Oldenburg
		         - Germany -

via email...
		      <atte@gecko.North.DE>

and on IRC...
		            'atte'



8. tkirc's homepage
-------------------

Now tkirc has its own homepage. If you want to see and maybe download
the latest public version of tkirc, have a look at...

                 http://home.pages.de/~tkirc/

It's also possible to click on the URL you find in window for
'About'. =;^)


---------------------------------------------------------------------
End of transmission                                    atte, 08-07-97
---------------------------------------------------------------------
