Released v1
This commit is contained in:
31
doc/Makefile.in
Normal file
31
doc/Makefile.in
Normal file
@@ -0,0 +1,31 @@
|
||||
include ../rules
|
||||
|
||||
TEXI2PDF = @TEXI2PDF@
|
||||
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
prefix = @prefix@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
PDFTARGETDIR = @pdfdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
|
||||
all: $(DOC_OBJECTS)
|
||||
|
||||
botcommander.pdf: botcommander.texinfo
|
||||
$(TEXI2PDF) botcommander.texinfo
|
||||
|
||||
clean:
|
||||
$(RM) $(DOC_OBJECTS)
|
||||
$(RM) botcommander.aux botcommander.cp botcommander.cps botcommander.fn \
|
||||
botcommander.ky botcommander.log botcommander.pg botcommander.toc \
|
||||
botcommander.tp botcommander.vr
|
||||
|
||||
distclean: clean
|
||||
$(RM) Makefile config.status config.cache config.log
|
||||
|
||||
install: all
|
||||
$(top_srcdir)/mkinstalldirs $(PDFTARGETDIR)
|
||||
$(INSTALL) -m 0644 botcommander.pdf $(PDFTARGETDIR)
|
||||
|
||||
.PHONY: all clean distclean install
|
||||
|
349
doc/botcommander.texinfo
Normal file
349
doc/botcommander.texinfo
Normal file
@@ -0,0 +1,349 @@
|
||||
\input texinfo
|
||||
@c vim:textwidth=80
|
||||
@c Header
|
||||
@setfilename botcommander.info
|
||||
@include version.texinfo
|
||||
@settitle BotCommander @value{VERSION}
|
||||
@documentdescription
|
||||
BotCommander manual for version @value{VERSION}
|
||||
@end documentdescription
|
||||
@setchapternewpage odd
|
||||
@firstparagraphindent insert
|
||||
|
||||
@c Summary and Copyright
|
||||
@copying
|
||||
This manual is for BotCommander
|
||||
(version @value{VERSION}, @value{UPDATED}),
|
||||
which is a specialized telnet client.
|
||||
|
||||
Copyright @copyright{} 2005, Gergely POLONKAI
|
||||
|
||||
@quotation
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.1 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,''
|
||||
and with the Back-Cover Texts as in (a) below. A copy of the
|
||||
license is included in the section entitled ``GNU Free Documentation
|
||||
License.''
|
||||
|
||||
(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
|
||||
this GNU Manual, like GNU software. Copies published by the Free
|
||||
Software Foundation raise funds for GNU development.''
|
||||
@end quotation
|
||||
@end copying
|
||||
|
||||
@dircategory Network Applications
|
||||
@direntry
|
||||
* BotCommander: (botcommander).
|
||||
@end direntry
|
||||
|
||||
@c Title and Copyright
|
||||
@titlepage
|
||||
@title BotCommander
|
||||
@subtitle for version @value{VERSION}, @value{UPDATED}
|
||||
@author Gergely POLONKAI (@email{polesz@@botcommander.hu})
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
@insertcopying
|
||||
@end titlepage
|
||||
|
||||
@contents
|
||||
|
||||
@c Top node and master menu
|
||||
@ifnottex
|
||||
@node Top, About, , (dir)
|
||||
@top BotCommander
|
||||
|
||||
@insertcopying
|
||||
@end ifnottex
|
||||
|
||||
@menu
|
||||
* About:: About the application
|
||||
* Overview:: Features of BotCommander
|
||||
* Installation:: How to install BotCommander
|
||||
* Invoking:: Command line arguments
|
||||
* Commands:: Internal commands
|
||||
* Configuration:: The setup window
|
||||
* Plans:: Plans in future versions
|
||||
* Index:: Index
|
||||
@end menu
|
||||
|
||||
@c Body
|
||||
|
||||
@node About, Overview, Top, Top
|
||||
@chapter About BotCommander
|
||||
|
||||
@cindex about
|
||||
|
||||
@cindex homepage
|
||||
|
||||
You can reach the project's homepage at @url{http://www.botcommander.hu/}.
|
||||
|
||||
@cindex description
|
||||
|
||||
BotCommander is a small tool, originally written for the Gnome2 interface, to
|
||||
remotely manage your @url{http://www.eggheads.org/, eggdrop} IRC bots.@*
|
||||
Actually, it's acting as a small, configurable telnet client, but it will know a
|
||||
bit more. For example, it has command-line history. While you cannot recall your
|
||||
previous command in a simple telnet client, you will be able to do it with this
|
||||
program. As it uses a text box for the command line, you can easily edit that
|
||||
command.
|
||||
|
||||
The program uses @url{http://www.gnome.org/projects/gconf/, GConf2}
|
||||
to store its configuration data. You can configure it to use a samba-like config
|
||||
file instead, so you won't depend that heavily on @url{http://www.gnome.org/,
|
||||
Gnome 2}, @xref{Installation}. In the near future I also plan
|
||||
@url{http://www.w3.org/XML/, XML} config backend support.
|
||||
|
||||
On 28 August, 2006 I decided to drop this plan, and also the samba-like config
|
||||
backend for a longer period. I think the application should first function, and
|
||||
only after that I can create such addons.
|
||||
|
||||
@cindex status
|
||||
|
||||
The code is in alpha status. You can see how will it look like, also can use
|
||||
for one connection, and decide if you will like it or not.
|
||||
|
||||
@cindex icon
|
||||
|
||||
BotCommander icon is from @url{http://www.eggheads.org/, Eggdrop}'s official
|
||||
homepage. I will draw a new one, but until then, this is perfect.
|
||||
|
||||
@node Overview, Installation, About, Top
|
||||
@chapter Features
|
||||
|
||||
BotCommander is a telnet client and much more. It can connect to one or more
|
||||
@url{http://www.eggheads.org/, eggdrop} IRC bots, and give commands to them. In
|
||||
the near future it will also possible to give the same command to each connected
|
||||
bots.
|
||||
|
||||
Unlike the normal telnet client, this program has command line editing and
|
||||
recalling possibilities. E.g if you have a long command line such
|
||||
|
||||
@code{
|
||||
.process very much ugly paramters username
|
||||
}
|
||||
@*what you have to run multiple times, and in which you only change the username,
|
||||
it is possible to recall the previous command, change the username, and send the
|
||||
changed command. Thus, you don't have to enter the whole line again and again.
|
||||
|
||||
It uses @url{http://www.gtk.org/, GTK2} and some @url{http://www.gnome.org/,
|
||||
GnomeUI} components, and stores its configuration data in
|
||||
@url{http://www.gnome.org/projects/gconf/, GConf2}.
|
||||
|
||||
As it uses tabs, you can connect to many bots in one application, and at last
|
||||
you won't have one icon for every bot in your task bar.
|
||||
|
||||
If you want (and you are at least have global +o in the bot), you can have a
|
||||
sidebar on your tabs, in which you can see a list of the channels and the users
|
||||
you have. For this, you will need to install the @file{botcommander.tcl} script
|
||||
(can be found in the @file{eggdrop/} directory) in your bot (@code{.source
|
||||
botcommander.tcl}). When the script loads, or when someone connects to the bot
|
||||
via DCC
|
||||
|
||||
@node Installation, Invoking, Overview, Top
|
||||
@chapter How to install?
|
||||
|
||||
@cindex installation
|
||||
|
||||
As BotCommander is currently in alpha phase, you cannot compile it with the
|
||||
usual
|
||||
|
||||
@example
|
||||
./configure
|
||||
make
|
||||
make install
|
||||
@end example
|
||||
|
||||
sequence. First, you should edit the config.h file, and change the location of
|
||||
the pixmaps dir. Then You should run @code{make check} to check if all the
|
||||
required packages are installed on your system. At the moment these are
|
||||
|
||||
@itemize
|
||||
@item
|
||||
pkg-config
|
||||
|
||||
@item
|
||||
gtk
|
||||
|
||||
@item
|
||||
vte
|
||||
|
||||
@item
|
||||
gconf2
|
||||
|
||||
@item
|
||||
gnomeui2
|
||||
@end itemize
|
||||
|
||||
If all is OK, simply run @code{make}. If nothing goes wrong, the binary will be
|
||||
src/botcommander.
|
||||
|
||||
If you want to install BotCommander, copy the binary to /usr/local/bin. You
|
||||
should change the @code{PIXMAPSDIR} variable in @file{config.h} to something
|
||||
like @code{/usr/local/share/botcommander}, and recompile the whole thing.
|
||||
|
||||
@node Invoking, Commands, Installation, Top
|
||||
@chapter Command line arguments
|
||||
|
||||
@cindex command line args
|
||||
|
||||
No command line arguments are defined yet. This means that BotCommander
|
||||
currently accepts the @url{http://www.gnome.org/, Gnome} and
|
||||
@url{http://www.gtk.org, GTK} standard command line parameters.
|
||||
|
||||
Yet I don't even have any plans for such parameters.
|
||||
|
||||
@node Commands, QUIT, Invoking, Top
|
||||
@chapter Internal commands
|
||||
|
||||
@cindex command
|
||||
|
||||
BotCommander is a bit like an IRC client. As is, there are many commands built
|
||||
in.
|
||||
|
||||
Most of the commands can be abbreviated. This means you can shorten a command
|
||||
while it is still obvious.
|
||||
|
||||
For example, you can write @code{CON botname} instead of
|
||||
@code{CONNECT botname}, as no other commands begin with ``CON''.
|
||||
|
||||
However, there are some ``dangerous'' commands which cannot be abbreviated. One
|
||||
such command is QUIT.
|
||||
|
||||
@cindex internal command list
|
||||
|
||||
@menu
|
||||
* QUIT:: Exits BotCommander
|
||||
* CLOSE:: Closes the active tab
|
||||
* CONNECT:: Connects to a bot or a host
|
||||
* ASSIGN:: Assigns a bot to the active tab
|
||||
* MODE:: Changes the mode in the current tab
|
||||
* HISTLIST:: Lists the previously issued commands and sent messages
|
||||
* BOTLIST:: Opens the bot list window
|
||||
* PREFERENCES:: Opens the setup dialog
|
||||
* DISCONNECT:: Disconnects the current tab
|
||||
@end menu
|
||||
|
||||
@node QUIT, CLOSE, Commands, Commands
|
||||
@section The QUIT command
|
||||
|
||||
@cindex command, QUIT
|
||||
|
||||
This command simply exists BotCommander.
|
||||
|
||||
If at least one tab is open with an opened connection, BotCommander will pop up
|
||||
a dialog if the user really wants to exit.
|
||||
|
||||
These commands cannot be abbreviated.
|
||||
|
||||
@node CLOSE, CONNECT, QUIT, Commands
|
||||
@section The CLOSE command
|
||||
|
||||
@cindex command, CLOSE
|
||||
|
||||
This will close the active tab. If a connection is opened in the tab,
|
||||
BotCommander will pop up a dialog if the user really wants to do that.
|
||||
|
||||
@node CONNECT, ASSIGN, CLOSE, Commands
|
||||
@section The CONNECT command
|
||||
|
||||
@cindex command, CONNECT
|
||||
|
||||
This will open a connection. You can use it in several ways.
|
||||
|
||||
If you have already assigned a bot to the tab with the ASSIGN (@xref{ASSIGN}.) command,
|
||||
you can use it without parameters, so it will connect to the assigned bot.
|
||||
|
||||
If you have a bot in your bot list, you can connect to it with @code{CONNECT
|
||||
botname}. It will also assign that bot to the tab.
|
||||
|
||||
You can use it in the form @code{CONNECT host port}.
|
||||
|
||||
@node ASSIGN, MODE, CONNECT, Commands
|
||||
@section The ASSIGN command
|
||||
|
||||
@cindex command, ASSIGN
|
||||
|
||||
Assigns a bot to the active tab. You can use it in the form @code{ASSING
|
||||
botname} or @code{ASSIGN host port}. After assigning a bot, you can use the
|
||||
@code{CONNECT} command without parameters to connect to the bot.
|
||||
|
||||
@node MODE, HISTLIST, ASSIGN, Commands
|
||||
@section The MODE command
|
||||
|
||||
@cindex command, MODE
|
||||
|
||||
Sets the mode in the current tab. It has only one parameter, the new mode
|
||||
character. It can be B for BotCommander command mode, E for Eggdrop command mode
|
||||
or M for Message mode.
|
||||
|
||||
You can see the current mode in the right side of the status bar.
|
||||
|
||||
@node HISTLIST, BOTLIST, MODE, Commands
|
||||
@section The HISTLIST command
|
||||
|
||||
@cindex command, HISTLIST
|
||||
|
||||
It's a very useless command. Prints out all the commands and messages you
|
||||
entered in the current tab.
|
||||
|
||||
@node BOTLIST, PREFERENCES, HISTLIST, Commands
|
||||
@section The BOTLIST command
|
||||
|
||||
@cindex command, BOTLIST
|
||||
|
||||
This command simply opens the bot list dialog window.
|
||||
|
||||
@node PREFERENCES, DISCONNECT, BOTLIST, Commands
|
||||
@section The PREFERENCES command
|
||||
|
||||
@cindex command, PREFERENCES
|
||||
|
||||
This command simply opens the setup dialog.
|
||||
|
||||
@node DISCONNECT, Configuration, PREFERENCES, Commands
|
||||
@section The DISCONNECT command
|
||||
|
||||
@cindex command, DISCONNECT
|
||||
|
||||
This command forces the disconnection of the current tab. This is useful if you
|
||||
try to connect a bot which doesn't respond, and you don't want to wait for the
|
||||
"connection timeout" message before connecting to somewhere else.
|
||||
|
||||
@node Configuration, Plans, DISCONNECT, Top
|
||||
@chapter The preferences window
|
||||
|
||||
@node Plans, Index, Configuration, Top
|
||||
@chapter Future plans
|
||||
|
||||
@cindex plans
|
||||
|
||||
@itemize
|
||||
@item
|
||||
ADDBOT botname host port [nick] will add a new bot to the bot list
|
||||
|
||||
@item
|
||||
DELBOT botname will remove a bot from the bot list
|
||||
|
||||
@item
|
||||
Scripting. BotCommander will be able to run small scripts, perhaps in TCL
|
||||
|
||||
@item
|
||||
Macros and command aliases, so you have to type only one command to achieve the
|
||||
same as you type in many
|
||||
|
||||
@item
|
||||
Windows port. This will be done after the whole application is functioning. So
|
||||
this will be in the very far future, though I already got requests for it
|
||||
@end itemize
|
||||
|
||||
@node Index, , Plans, Top
|
||||
@unnumbered Index
|
||||
|
||||
@printindex cp
|
||||
|
||||
@c End
|
||||
@bye
|
||||
|
542
doc/botcommander.xml
Normal file
542
doc/botcommander.xml
Normal file
@@ -0,0 +1,542 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<book>
|
||||
<title>BotCommander</title>
|
||||
|
||||
<bookinfo>
|
||||
<author>
|
||||
<personname>
|
||||
<firstname>Gergely</firstname>
|
||||
|
||||
<surname>POLONKAI</surname>
|
||||
</personname>
|
||||
|
||||
<email>polesz@botcommander.hu</email>
|
||||
</author>
|
||||
|
||||
<copyright>
|
||||
<year>2005-2007</year>
|
||||
|
||||
<holder>Gergely POLONKAI</holder>
|
||||
</copyright>
|
||||
</bookinfo>
|
||||
|
||||
<dedication>
|
||||
<beginpage />
|
||||
|
||||
<para>I dedicate this book to my girlfriend, as she was so patient while I
|
||||
wrote it.</para>
|
||||
</dedication>
|
||||
|
||||
<toc>
|
||||
<beginpage />
|
||||
|
||||
<title>Table of Contents</title>
|
||||
|
||||
<tocpart>
|
||||
<tocentry>Part I: About BotCommander and this book</tocentry>
|
||||
|
||||
<tocchap>
|
||||
<tocentry>Chapter 1: Who should read this book?</tocentry>
|
||||
</tocchap>
|
||||
|
||||
<tocchap>
|
||||
<tocentry>Chapter 2: About BotCommander</tocentry>
|
||||
</tocchap>
|
||||
</tocpart>
|
||||
</toc>
|
||||
|
||||
<preface>
|
||||
<beginpage />
|
||||
|
||||
<title>Preface</title>
|
||||
|
||||
<para>This document tries to explain the history and usage of the software
|
||||
BotCommander briefly.</para>
|
||||
</preface>
|
||||
|
||||
<part>
|
||||
<title>About BotCommander and this book</title>
|
||||
|
||||
<chapter>
|
||||
<title>Who should read this book?</title>
|
||||
|
||||
<para><itemizedlist>
|
||||
<listitem>
|
||||
<para>Everyone, who handles at least one eggdrop IRC bot</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Everyone, who wants to write addons (modules) for
|
||||
BotCommander</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Everyone, who wants to learn the script-writing methods for
|
||||
BotCommander</para>
|
||||
</listitem>
|
||||
</itemizedlist></para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>About BotCommander</title>
|
||||
|
||||
<para>BotCommander is a specialized telnet client, and a bit more. It is
|
||||
specialized in eggdrop IRC bot handling, enhanced with scripting
|
||||
possibility, and may also be enhanced with self-written modules (just
|
||||
like eggdrop itself).</para>
|
||||
|
||||
<para>The project has its own homepage at
|
||||
<uri>http://www.botcommander.hu/</uri></para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>BotCommander features</title>
|
||||
|
||||
<glosslist>
|
||||
<glossentry>
|
||||
<glossterm>Command line history</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>BotCommander has command line history. This means you can
|
||||
recall your previous commands with the Up/Down keys, edit them,
|
||||
and/or issue them again.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>Tabbed interface</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>BotCommander has a tabbed interface, which means you can
|
||||
have several connections in only one window - just like an IRC, or
|
||||
IM client.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>Channel and user list</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>If you have the correct permissions, you can have a list of
|
||||
the bot's users and channels; also you will be able to manage
|
||||
these: change user and channel flags and more. However, this
|
||||
feature requires a small TCL script to be loaded in the bot (that
|
||||
script is provided with BotCommander).</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glosslist>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Some technical background</title>
|
||||
|
||||
<para>BotCommander uses GConf2 to store its configuration, and all
|
||||
bot-related data. The graphical part (the widgets) are from GTK+
|
||||
(currently using 2.6 features), and some are from libgnomeui.</para>
|
||||
</chapter>
|
||||
</part>
|
||||
|
||||
<part>
|
||||
<title>Installation</title>
|
||||
|
||||
<preface>
|
||||
<title>About this part</title>
|
||||
|
||||
<para>In this chapter you will learn about the installation methods of
|
||||
BotCommander. You will be able to install BotCommander under several
|
||||
Linux distributions, such as Debian and Gentoo, and also will know how
|
||||
to install it from the sources.</para>
|
||||
</preface>
|
||||
|
||||
<chapter>
|
||||
<title>Install on Debian machines</title>
|
||||
|
||||
<para>For a few years, I was a hardcore Debian-user. Thus, it was almost
|
||||
my first task to create a Debian package out of BotCommander.</para>
|
||||
|
||||
<para>I also created a Debian repository, so it is an easy task to
|
||||
install BotCommander under a Debian system. Just add the following lines
|
||||
to your <filename>sources list</filename> file.</para>
|
||||
|
||||
<example>
|
||||
<title>The <filename>sources.list</filename> snippet required to
|
||||
install BotCommander .deb packages with apt.</title>
|
||||
|
||||
<para>deb http://www.botcommander.hu/debian testing main</para>
|
||||
|
||||
<para>deb-src http://www.botcommander.hu/debian testing main</para>
|
||||
</example>
|
||||
|
||||
<para>This snippet is only for debian etch (as of writing, at the end of
|
||||
2006).</para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Install on Gentoo machines</title>
|
||||
|
||||
<para>After my Debian years, my next Linux-breed was Gentoo. It's
|
||||
absolutely does what the user wants (sure, if the user is smart enough).
|
||||
After a few days of coding, a Gentoo ebuild was born. It is the part of
|
||||
the BotCommander package, can be downloaded from
|
||||
<uri>http://www.botcommander.hu/</uri>, and I'm also trying to add it to
|
||||
the official Gentoo portage.</para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Install from sources</title>
|
||||
|
||||
<para>If you are not the user of the above systems, then currently no
|
||||
package exists for your needs. I'm really sorry for that, but I always
|
||||
welcome if someone sends me a package for any OS-es.</para>
|
||||
|
||||
<para>So, you arrived here, you want to install BotCommander from
|
||||
sources. This is good, but has some prerequisites: you will need bunch
|
||||
of software you may not currently have installed. I'm trying to make
|
||||
this list as correct as possible, but it may happen that I forgot about
|
||||
something. I'm really sorry if so.</para>
|
||||
|
||||
<glosslist>
|
||||
<glossentry>
|
||||
<glossterm>autoconf v2.60</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is required only if you want to compile the SVN tree,
|
||||
as it doesn't contain a configure script.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>gcc</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>gcc is the GNU C Compiler. This is a necessary tool.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>gdk-pixbuf</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the GDK-pixbuf library, required by BotCommander to
|
||||
render some icons.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>glib</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the GLib library. BotCommander uses its
|
||||
memory-handling routines.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>GTK+ v2.6.2 or greater</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the GTK library. BotCommander uses its widgets
|
||||
heavily.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>libgnome2</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the Gnome library. BotCommander uses some widgets in
|
||||
it.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>libgnomeui2</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the Gnome-UI library. BotCommander uses the file
|
||||
open dialog from it.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>VTE</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This is the VTE (Virtual Terminal Emulation) library.
|
||||
BotCommander displays all the bot-messages in such a
|
||||
widget.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>GNU Gettext package</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>This package is required for BotCommander to speak many
|
||||
languages. I'm trying to make this one optional, so one will be
|
||||
able to compile BotCommander without multilingual support (may be
|
||||
good for english-speaking people, and for minimalist
|
||||
systems)</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glosslist>
|
||||
</chapter>
|
||||
</part>
|
||||
|
||||
<part>
|
||||
<title>Basic eggdrop usage</title>
|
||||
|
||||
<preface>
|
||||
<title>Terms and assumptions</title>
|
||||
|
||||
<para>Throughout this part we assume that you install your bot yourself,
|
||||
and thus you have an owner flag in it. Many functions are not
|
||||
accessible, if you don't possess that +n flag.</para>
|
||||
</preface>
|
||||
|
||||
<chapter>
|
||||
<title>Compiling and installing eggdrop</title>
|
||||
|
||||
<note>
|
||||
<para>This chapter assumes that you have TCL installed system-wide. If
|
||||
not, please consult the eggdrop manual on how to install it for one
|
||||
single user, and how to make eggdrop use that library. I also assume
|
||||
that you know how to use the basic Unix/Linux commands, such as tar,
|
||||
thus you can unpack the eggdrop archive.</para>
|
||||
</note>
|
||||
|
||||
<para>First things first, you much fetch eggdrop from somewhere. The
|
||||
best place for this is eggheads' homepage at
|
||||
<uri>http://www.eggheads.org/</uri>. Download the latest version (as of
|
||||
writing, it is 1.6.18), and unpack it. Then enter the unpacked
|
||||
distibution's directory, and issue the following commands:</para>
|
||||
|
||||
<example>
|
||||
<title>Commands to configure and compile eggdrop</title>
|
||||
|
||||
<para>./configure</para>
|
||||
|
||||
<para>make iconfig</para>
|
||||
|
||||
<para>make</para>
|
||||
</example>
|
||||
|
||||
<para>After issuing <command>make iconfig</command>, that script will
|
||||
ask you several questions if you want to install this-or-that module.
|
||||
Read the module descriptions, and choose whichever you need.</para>
|
||||
|
||||
<note>
|
||||
<para>I'm currently planning to write my
|
||||
<filename>botcommander.tcl</filename> script as an eggdrop module. If
|
||||
I'm ready with that, I will instruct you how to compile new modules
|
||||
for eggdrop.</para>
|
||||
</note>
|
||||
|
||||
<para>After <command>make</command> finishes without errors, you can
|
||||
issue the last, <command>make install</command> command. This will
|
||||
install eggdrop to the given directory (if none was given, the default
|
||||
is <filename>$HOME/eggdrop</filename>.</para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Configuring your bot</title>
|
||||
|
||||
<para>Configuring eggdrop is a long, yet not hard process, which
|
||||
requires almost no understanding of eggdrop, if you know english.</para>
|
||||
|
||||
<note>
|
||||
<para>The following is only a suggestion; contains my way on
|
||||
configuring an eggdrop bot.You may do it several other ways; it's up
|
||||
to you. However, if you read through this chapter, and follow my
|
||||
words, I will assume that the name you have chosen your bot is
|
||||
<acronym>BCbot</acronym>.</para>
|
||||
</note>
|
||||
|
||||
<para>First of all, enter the directory which contains your eggdrop
|
||||
installation. As said in the previous chapter, by default it is
|
||||
<filename>$HOME/eggdrop</filename>. After that, make a copy of
|
||||
eggdrop.conf with a filename as you will call your bot; then make it
|
||||
executable for at least yourself.</para>
|
||||
|
||||
<example>
|
||||
<title>Copy eggdrop.conf to your own file, and make it
|
||||
executable.</title>
|
||||
|
||||
<para>cp eggdrop.conf BCbot</para>
|
||||
|
||||
<para>chmow 755 BCbot</para>
|
||||
</example>
|
||||
|
||||
<para>Now begin to edit your newly created configuration. The most
|
||||
important thing (of course, if you follow my way) it the very first row,
|
||||
which now looks like this:</para>
|
||||
|
||||
<para><code>#! /path/to/executable/eggdrop</code></para>
|
||||
|
||||
<para>This tells the Unix/Linux shell to use
|
||||
<filename>/path/to/executable/eggdrop</filename> to interpret this file.
|
||||
Thus, the shell, instead of trying on interpreting the command in that
|
||||
file, will run the given command with this file as a parameter. Unless
|
||||
your eggdrop is at that location, you must change that line to something
|
||||
like this:</para>
|
||||
|
||||
<para><code>#! /home/yourusername/eggdrop/eggdrop</code></para>
|
||||
</chapter>
|
||||
</part>
|
||||
|
||||
<part>
|
||||
<title>Usage</title>
|
||||
|
||||
<chapter>
|
||||
<title>Command line parameters</title>
|
||||
|
||||
<para>BotCommander doesn't have any defined command line parameters.
|
||||
This means that it accepts only the standard Gnome and GTK+ parameters
|
||||
only. I don't even have any plans on defining such things (yet).</para>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Built-in commands</title>
|
||||
|
||||
<para>BotCommander has several built-in commands. These can be called
|
||||
from BotCommander or external scripts, thus extending BotCommander's
|
||||
functionality.</para>
|
||||
|
||||
<para>Most of these commands can be abbreviated. This means that you can
|
||||
cut off the end of the commands, until it is obvious to the application.
|
||||
For example, as of the time of writing, the CONNECT command can be
|
||||
abbreviated as CON.</para>
|
||||
|
||||
<para>There are some "dangerous" commands, such as QUIT, which cannot be
|
||||
abbreviated, so - in this case - you won't exit BotCommander if you
|
||||
accidently type in the Q command.</para>
|
||||
|
||||
<section>
|
||||
<title>QUIT</title>
|
||||
|
||||
<para>The QUIT command does what it should according to its name:
|
||||
exits BotCommander.</para>
|
||||
|
||||
<para>If at least one connected tab is open, a small dialog will pop
|
||||
up, asking if you are serious about quitting.</para>
|
||||
|
||||
<para>This command cannot be abbreviated.</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>CLOSE</title>
|
||||
|
||||
<para>This command closes the currently active tab. If there is an
|
||||
active connection in that tab, a dialog will pop up asking if you
|
||||
really want to do that.</para>
|
||||
|
||||
<para>This command cannot be abbreviated.</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>CONNECT</title>
|
||||
|
||||
<para>This will open a connection in the current tab. It has many
|
||||
different invokations, depending on the parameters given.</para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>CONNECT without parameters will work if you previously
|
||||
assigned a bot to the active tab with the ASSIGN command. If so,
|
||||
the connection will be open to the given bot.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>CONNECT botname will connect to the named bot in the bot
|
||||
list.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>CONNECT host port will connect to the specified host, on the
|
||||
specified port. This can be useful, if you want to connect to a
|
||||
bot only once, e.g to check some settings or such.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>CONNECT host port username does exactly as the above
|
||||
command, but it will automatically send the given username also.
|
||||
This will be useful as the initial connection to a bot, as I'm
|
||||
planning to implement a SAVEBOT command, which will do just what
|
||||
it name suggests: save the current bot to the bot list.</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>ASSIGN</title>
|
||||
|
||||
<para>The ASSIGN command does the same as CONNECT, with only one
|
||||
difference: it won't connect. It will assign all the connection
|
||||
parameters to the current tab, so when you are ready, you can use the
|
||||
CONNECT command without any parameters to do the actual
|
||||
connection.</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>MODE</title>
|
||||
|
||||
<para>The MODE command changes the current tab's mode. You can read
|
||||
more about modes in <xref linkend="chap_modes" /></para>
|
||||
</section>
|
||||
</chapter>
|
||||
|
||||
<chapter id="chap_modes">
|
||||
<title>Modes</title>
|
||||
|
||||
<para>BotCommander uses modes to distinguish between commands addressed
|
||||
to itself, and addressed to the connected bot.</para>
|
||||
|
||||
<para>There are three modes, identified by their english names' first
|
||||
character.</para>
|
||||
|
||||
<glosslist>
|
||||
<glossentry>
|
||||
<glossterm>B, or BotCommander command mode (/)</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>In this mode, entered text is validated against the commands
|
||||
built in to BotCommander, or commands provided by scripts and
|
||||
modules.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>E, or Eggdrop command mode (.)</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>In this mode, text is sent to the connected bot (if any), so
|
||||
eggdrop itself will validate it.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
|
||||
<glossentry>
|
||||
<glossterm>M, or Message mode (@)</glossterm>
|
||||
|
||||
<glossdef>
|
||||
<para>In this mode, entered text is sent to the connected bot. As
|
||||
you see, it is just the same as E mode, but there is a small
|
||||
difference. If the entered text begins with a dot (.), eggdrop
|
||||
would identify and parse it as a command. So in this case, the
|
||||
entered text is prefixed with a space.</para>
|
||||
</glossdef>
|
||||
</glossentry>
|
||||
</glosslist>
|
||||
|
||||
<para>You can change between these modes in the Mode menu, or with
|
||||
hotkeys (Ctrl-B, Ctrl-E and Ctrl-M respectively). However, if you want
|
||||
to use one specific mode for a long time, and issue one line in a
|
||||
different mode, you can prefix your text with the character in
|
||||
parentheses in the above list. E.g if you use Message mode for hours,
|
||||
and want to issue one BotCommander command, you can do it by entering
|
||||
/COMMAND. As this happens, BotCommander will parse and execute the given
|
||||
row as a BotCommander command, and return to message mode.</para>
|
||||
</chapter>
|
||||
</part>
|
||||
</book>
|
2
doc/version.texinfo
Normal file
2
doc/version.texinfo
Normal file
@@ -0,0 +1,2 @@
|
||||
@set VERSION 1.0
|
||||
@set UPDATED 15 November 2005
|
Reference in New Issue
Block a user