Initial import of the ircii-pana-1.1-final source tree.

git-svn-id: svn://svn.code.sf.net/p/bitchx/code/tags/ircii-pana-1.1-final@1 13b04d17-f746-0410-82c6-800466cd88b0
This commit is contained in:
Kevin Easton
2008-02-25 09:25:32 +00:00
commit 28febcfea9
1429 changed files with 250653 additions and 0 deletions

247
doc/BitchX.1 Normal file
View File

@@ -0,0 +1,247 @@
.TH BitchX 1 "March 22, 2001" "" ""
.SH NAME
BitchX \- The Ultimate IRC Client
.SH SYPNOSIS
.B BitchX
[-aAbBcdfFHilLnNpPqrvxZ]
.SH DESCRIPTION
.B BitchX
is a VERY heavily modified ircII client. It includes many things such as
built in CDCC (XDCC) offering, built in flood protection, etc. It is easier
to script things in
.B BitchX
because unlike plain, vanilla ircII, half the script does not have to be
devoted to changing the appearance of ircII. It also includes many other
new features, such as port scanning, advanced TCL, a CD player, a mail
client, screening process, etc.
.B BitchX - Based on
.B EPIC
Software Labs
.B epic ircII (1998).
Version (BitchX-1.0c18) -- Date (20010108).
.SH OPTIONS
.TP
.I -a
Adds default servers and command line servers to server list.
.TP
.I -A
Do not display the startup ansi.
.TP
.I -b
Load .bitchxrc or .ircrc after connecting to a server.
.TP
.I -B
Force
.B BitchX
to fork and return you to a shell. pid check on.
.TP
.I -c <channel>
Joins <channel> on startup.
.TP
.I -d
Runs
.B BitchX
in "dumb" terminal mode.
.TP
.I -f
Your terminal uses flow controls (^S/^Q), so
.B BitchX
shouldn't.
.TP
.I -F
Your terminal doesn't use flow control (default).
.TP
.I -H <hostname>
Uses the virtual hostname if possible.
.TP
.I -i
Ignores your autojoin entries.
.TP
.I -l <file>
Loads <file> in place of your .ircrc.
.TP
.I -L <file>
Loads <file> in place of your .ircrc and expands $expandos
.TP
.I -n <nickname>
Nickname to use
.TP
.I -N
Do not auto-connect to the next server.
.TP
.I -p <port>
Default server connection port (usually 6667).
.TP
.I -P
Toggle check pid.nickname for running program.
.TP
.I -q
Does not load .ircrc or .bitchxrc.
.TP
.I -r <file>
Load <file> as list of servers.
.TP
.I -v
Tells you about the clients version.
.TP
.I -x
Run
.B BitchX
in "debug" mode.
.TP
.I -Z
Use NAT address when doing dcc.
.SH ENVIRONMENT
.TP
.BR BitchX
uses many environment variables to configure the client. These can be set
by editing your ~/.profile or ~/.bash_login (if you're using a /bin/bash
shell) and adding ``export VARNAME="var value"''. Or, if you are using the
tcsh shell you can set these by editing ~/.tcshrc and adding
``setenv VARNAME "var value"''. Below is a list of variables.
.PP
.TP
.BR IRCNICK
sets the default IRC nickname. eg, export IRCNICK="mynick"
.TP
.BR USER
sets the default username to use. If not set, it uses a default value of
"unknown" - This will only work under NON-UNIX operating systems.
.TP
.BR IRCUSER
same as
.BR USER
.TP
.BR IRCHOST
sets the virtual hostname to use.
.TP
.BR IRC_HOST
same as
.BR IRCHOST
.TP
.BR IRCNAME
sets the name that appears in the "realname" field on your /whois. The
default value is "* I'm to lame to read BitchX.doc *".
.TP
.BR IRCSERVER
sets the default IRC server to use.
.TP
.BR IRCPORT
sets the default IRC port to use. Usually 6667.
.TP
.BR IRCPATH
sets the path from which files are loaded. Default is ~/.BitchX/
.TP
.BR IRCUMODE
sets your default usermode. Default is "+iw"
.TP
.BR IRCRC
sets the filename to be used in place of ~/.bitchxrc or ~/.ircrc
.TP
.BR IRCLIB
sets the
.B BitchX
library path (Used for some small example scripts).
.TP
.BR IRC_SERVERS_FILE
sets the name of the IRC server list that is loaded before any other lists.
.TP
.BR IRCFINGER
sets your CTCP FINGER information.
.PP
.SH FILES
.TP
.I ~/.bitchxrc
Loaded by
.B BitchX
when it is started.
.TP
.I ~/.ircrc
If
.BR ~/.bitchxrc
is not there, this file is loaded on startup instead.
.TP
.I ~/.ircservers
Contains a list of IRC servers to cycle through.
.TP
.I /usr/local/lib/bx/
System-wide configuration dir.
.TP
.I ~/.BitchX/BitchX.sav
Personal configuration file.
.TP
.I ~/.BitchX/BitchX.ircnames
Default random real name. NOTE: Must be copied from /usr/local/lib/bx/
.TP
.I ~/.BitchX/BitchX.formats
Personal
.B BitchX
display formats.
.TP
.I ~/.BitchX/BitchX.reasons
Default random kick messages. NOTE: Must be copied from /usr/local/lib/bx/
.TP
.I ~/.BitchX/BitchX.quit
Default random quit messages. NOTE: Must be copied from /usr/local/lib/bx/
.TP
.I /usr/local/lib/bx/BitchX.help
.B BitchX
help file.
.TP
.I ~/.BitchX/screens
Screen storage for a detached
.BR BitchX
session.
.PP
.SH OBTAINING
You can always download the newest version of
.B BitchX
by joining #BitchX on EFNet and typing "/offers" in the channel window. To
check what the latest version is type "!explain latest" and the bot will
tell you. You can also ftp to
.B ftp.BitchX.com
to get the latest client, scripts, tcl objects, documentation, and many other
useful items. You can also point your browser to
.B http://www.BitchX.com
for some more things.
.PP
.SH BUGS
Please report all bugs to an op on #BitchX on EFNet, e-mail panasync or send
an e-mail to the mailing list.
.SH MAILING LIST
There is a BitchX mailing list, to subscribe simply send an e-mail to:
.B majordomo@lists.BitchX.com
with only the words "subscribe BitchX" in the body. You will receive
another mail to confirm this and once you have replied you can post to the
list by sending e-mail to
.B bitchx@lists.BitchX.com.
This is a helpful place for bug reports
.SH MAN PAGE ORIGINAL AUTHOR
Wichert Akkerman
.B <wakkerma@debian.org>
.SH MAINTAINER
Robert Durdle - Dragoon@EFNet
.B <robert@durdle.com>
dialtone
.B <dialtone@chemlab.org>
.SH BitchX Author
Colten Edwards
.B <edwards@bitchx.dimension6.com>
.PP
panasync
.SH Responsible for ports to other OS's
Brian Smith
.B <dbsoft@technologist.com>
.PP
nuke

27
doc/BitchX.bat.in Normal file
View File

@@ -0,0 +1,27 @@
@ECHO OFF
REM @configure_input@
REM This is your realname.
SET IRCNAME=BitchX for Windows User
REM This is a list of servers to connect to, separated by a ":". If the first
REM one can't be connected to, then the next one is used, and so on.
SET IRCSERVER=irc.primenet.com:irc.cs.cmu.edu:irc.mindspring.com
REM This is your username or ident.
SET IRCUSER=WinBitchX
REM This is your nickname.
SET IRCNICK=WinBitchX
REM This is your usermode.
SET IRCUMODE="+iw"
REM REM This is the vhost you want to use, if applicable.
REM SET IRCHOST="WinBitchX.com"
REM This is the name/path of the BitchX executable to run.
REM -c #BitchX (joins #BitchX on startup)
REM -l bx-rc (load bx-rc on startup)
@_VERSION_@@EXEEXT@ -c #BitchX -l bx-rc

42
doc/BitchX.devel Normal file
View File

@@ -0,0 +1,42 @@
.sssSS$$s.s$$$$$$ $$sss.. s$$$^`$ss. $$$$$s s$$$$ .s$$$$$s s$s
.$$$$$' `$$$ $$$$$$ $$$$$$$$$s $$' `$$$$s $$$' `$$$ $$$$$$$' s$$'
s$$$$' `$s $$$$ $$' $$$ $$$ $ d$$$$s $$ $$$ `$$$$' s$$'
$$$$$sss..ssS$'s$$$'s$' .$$' `$$ $ d$$$$$'s$$sssss$$$ $$$s`$$ s$'
$$$$$$$^^^^$$s $$$$ $$$ s s$ s$$$ $$$ $$$$s`$$s' by
$$$$' `$$s $$ $$$s $$$$$ ..sSb $$ $$$ s$`$s panasync
$$$' $$$s $ .$$$$ `$$$$ d$$$$$$ $$$ $$$ .$' `$s.
$$$s. .s$$$$ $$ .$$$$$ `$$$$s. $$$$$$ $$$s $$$ s$ `$$$$s
`$$$$Xavier$$$$$'s$$s $$$$$$s `S$$sss$$$$$'s$$$$$ s$$$ s$$s `$$$'
Last Updated: Tue Apr 8 16:00:01 EDT 2003
BitchX is looking for coders to help maintain the client, add new features,
and fix any existing bugs. If you would be interested in helping, join #BitchX
on EFnet and let us know!
The BitchX Development Mailing List is available at bitchx-devel-request@lists.bitchx.org
Note, this is a closed mailing list and you will not be able to subscribe or post unless
you are approved for submissions. In general, only people that will be approved for
submission are listed below.
If your name is not listed below, and you think it should be, contact powuh
in #BitchX on EFnet. Anyone who actively finds bugs in BitchX, or who tests
new releases of BitchX is considered 'Quality Control'
Current BitchX Team:
panasync Original Author
nuke Lead code maintainer
caf Lead code maintainer
sin FTP Site Maintainer, Quality Control
powuh Documentaion/FAQ Maintainer, Quality Control
Raistlin Mailing List Maintainer
sideshow bitchx.org domain name owner
MHacker bitchx.com domain name owner
BlackJac Quality Control
|Rain| Quality Control
void Quality Control

1215
doc/BitchX.doc Normal file

File diff suppressed because it is too large Load Diff

24
doc/BitchX.faq Normal file
View File

@@ -0,0 +1,24 @@
.sssSS$$s.s$$$$$$ $$sss.. s$$$^`$ss. $$$$$s s$$$$ .s$$$$$s s$s
.$$$$$' `$$$ $$$$$$ $$$$$$$$$s $$' `$$$$s $$$' `$$$ $$$$$$$' s$$'
s$$$$' `$s $$$$ $$' $$$ $$$ $ d$$$$s $$ $$$ `$$$$' s$$'
$$$$$sss..ssS$'s$$$'s$' .$$' `$$ $ d$$$$$'s$$sssss$$$ $$$s`$$ s$'
$$$$$$$^^^^$$s $$$$ $$$ s s$ s$$$ $$$ $$$$s`$$s' by
$$$$' `$$s $$ $$$s $$$$$ ..sSb $$ $$$ s$`$s panasync
$$$' $$$s $ .$$$$ `$$$$ d$$$$$$ $$$ $$$ .$' `$s.
$$$s. .s$$$$ $$ .$$$$$ `$$$$s. $$$$$$ $$$s $$$ s$ `$$$$s
`$$$$Xavier$$$$$'s$$s $$$$$$s `S$$sss$$$$$'s$$$$$ s$$$ s$$s `$$$'
Last Updated: Fri Mar 26 16:50:22 EDT 2004
The Offical BitchX FAQ is now online. Please visit http://faq.bitchx.org/
There are many #BitchX channels on various IRC networks. The only OFFICAL
BicthX support channel is #BitchX on the EFnet IRC network. While other network's
#BitchX channels do provide support for BitchX, and do a good job at it, your source
for OFFICAL BitchX related information is *.bitchx.org sites and #BitchX on EFnet.
A copy of the FAQ in HTML format has been included with the documentation but
we cannot assure you that it will be up to date at all times. Please visit the
websites and ask questions there before you come to IRC.

19
doc/BitchX.mailinglist Normal file
View File

@@ -0,0 +1,19 @@
.sssSS$$s.s$$$$$$ $$sss.. s$$$^`$ss. $$$$$s s$$$$ .s$$$$$s s$s
.$$$$$' `$$$ $$$$$$ $$$$$$$$$s $$' `$$$$s $$$' `$$$ $$$$$$$' s$$'
s$$$$' `$s $$$$ $$' $$$ $$$ $ d$$$$s $$ $$$ `$$$$' s$$'
$$$$$sss..ssS$'s$$$'s$' .$$' `$$ $ d$$$$$'s$$sssss$$$ $$$s`$$ s$'
$$$$$$$^^^^$$s $$$$ $$$ s s$ s$$$ $$$ $$$$s`$$s' by
$$$$' `$$s $$ $$$s $$$$$ ..sSb $$ $$$ s$`$s panasync
$$$' $$$s $ .$$$$ `$$$$ d$$$$$$ $$$ $$$ .$' `$s.
$$$s. .s$$$$ $$ .$$$$$ `$$$$s. $$$$$$ $$$s $$$ s$ `$$$$s
`$$$$Xavier$$$$$'s$$s $$$$$$s `S$$sss$$$$$'s$$$$$ s$$$ s$$s `$$$'
The Offical BitchX Mailing List
To subscribe to the BitchX User's List, send an email to:
bitchx-users-request@lists.bitchx.org
with the word SUBSCRIBE in the body of the message.
This list is for general discussion about BitchX.

27
doc/BitchX.sites Normal file
View File

@@ -0,0 +1,27 @@
.sssSS$$s.s$$$$$$ $$sss.. s$$$^`$ss. $$$$$s s$$$$ .s$$$$$s s$s
.$$$$$' `$$$ $$$$$$ $$$$$$$$$s $$' `$$$$s $$$' `$$$ $$$$$$$' s$$'
s$$$$' `$s $$$$ $$' $$$ $$$ $ d$$$$s $$ $$$ `$$$$' s$$'
$$$$$sss..ssS$'s$$$'s$' .$$' `$$ $ d$$$$$'s$$sssss$$$ $$$s`$$ s$'
$$$$$$$^^^^$$s $$$$ $$$ s s$ s$$$ $$$ $$$$s`$$s' by
$$$$' `$$s $$ $$$s $$$$$ ..sSb $$ $$$ s$`$s panasync
$$$' $$$s $ .$$$$ `$$$$ d$$$$$$ $$$ $$$ .$' `$s.
$$$s. .s$$$$ $$ .$$$$$ `$$$$s. $$$$$$ $$$s $$$ s$ `$$$$s
`$$$$Xavier$$$$$'s$$s $$$$$$s `S$$sss$$$$$'s$$$$$ s$$$ s$$s `$$$'
Last Updated: Fri Mar 26 16:52:21 EDT 2004
The OFFICAL BitchX sites are listed below. Only sites listed here can
be considered 'trusted' sources of information about BitchX.
Use any other sites at your own risk, we can not guarantee the accuracy
or security of files obtained from sites other than the ones listed below.
http://www.bitchx.org/
http://faq.bitchx.org/
http://scripts.bitchx.org/
http://bugs.bitchx.org
http://forums.bitchx.org
ftp://ftp.bitchx.org/
ftp://ftp.cyberpunkz.org/

242
doc/BitchX.xpm Normal file
View File

@@ -0,0 +1,242 @@
/* XPM */
static char *BitchX[] = {
/* width height num_colors chars_per_pixel */
" 32 32 203 2",
/* colors */
".. c #080808",
".# c #101010",
".a c #181818",
".b c #212121",
".c c #292929",
".d c #313131",
".e c #393939",
".f c #424242",
".g c #4a4a4a",
".h c #636363",
".i c #6b6b6b",
".j c #737373",
".k c #7b7b7b",
".l c #848484",
".m c #8c8c8c",
".n c #949494",
".o c #9c9c9c",
".p c #b5b5b5",
".q c #bdbdbd",
".r c #312929",
".s c #b5ada5",
".t c #adada5",
".u c #84847b",
".v c #cecebd",
".w c #a5a594",
".x c #949484",
".y c #c6c6ad",
".z c #9c9c84",
".A c #84846b",
".B c #212118",
".C c #525239",
".D c #181810",
".E c #636339",
".F c #7b7b39",
".G c #101000",
".H c #181800",
".I c #6b7339",
".J c #c6d663",
".K c #637300",
".L c #949c6b",
".M c #293100",
".N c #d6deb5",
".O c #adb58c",
".P c #a5ad84",
".Q c #8c946b",
".R c #737b52",
".S c #a5b55a",
".T c #bdd652",
".U c #212900",
".V c #425200",
".W c #637b00",
".X c #bdce7b",
".Y c #cee773",
".Z c #738431",
".0 c #94ad31",
".1 c #849c29",
".2 c #a5ce00",
".3 c #bdce84",
".4 c #526318",
".5 c #637b10",
".6 c #394a00",
".7 c #526b00",
".8 c #adb594",
".9 c #a5ad8c",
"#. c #a5c642",
"## c #526b08",
"#a c #4a6300",
"#b c #8cbd00",
"#c c #94c600",
"#d c #b5d65a",
"#e c #bde74a",
"#f c #a5ce39",
"#g c #9cce21",
"#h c #7ba508",
"#i c #7bad00",
"#j c #94ce00",
"#k c #9cad73",
"#l c #a5c65a",
"#m c #8cb531",
"#n c #425a08",
"#o c #395200",
"#p c #73a500",
"#q c #adde4a",
"#r c #ade731",
"#s c #84b521",
"#t c #4a6b08",
"#u c #213100",
"#v c #639400",
"#w c #84b529",
"#x c #6b9c10",
"#y c #395208",
"#z c #314a00",
"#A c #7b846b",
"#B c #73a521",
"#C c #294200",
"#D c #528400",
"#E c #639c00",
"#F c #9cde39",
"#G c #73a529",
"#H c #426b00",
"#I c #4a7b00",
"#J c #5a9400",
"#K c #73bd00",
"#L c #7bb529",
"#M c #527b18",
"#N c #213900",
"#O c #528c00",
"#P c #8cd631",
"#Q c #6bad18",
"#R c #848c7b",
"#S c #8cce42",
"#T c #84ce31",
"#U c #396b00",
"#V c #63bd00",
"#W c #84c642",
"#X c #6ba531",
"#Y c #081000",
"#Z c #4a9400",
"#0 c #7b8c6b",
"#1 c #7bb542",
"#2 c #102100",
"#3 c #5ab500",
"#4 c #7b8473",
"#5 c #397308",
"#6 c #84c652",
"#7 c #396318",
"#8 c #296300",
"#9 c #639442",
"a. c #7bc64a",
"a# c #294218",
"aa c #5a9c31",
"ab c #529429",
"ac c #317b00",
"ad c #73ad52",
"ae c #63ad39",
"af c #427b21",
"ag c #295210",
"ah c #214a08",
"ai c #215a00",
"aj c #63944a",
"ak c #6bb542",
"al c #214210",
"am c #8c9c84",
"an c #293921",
"ao c #6bad4a",
"ap c #63a542",
"aq c #081800",
"ar c #103100",
"as c #216300",
"at c #297b00",
"au c #6ba552",
"av c #4aa521",
"aw c #216b00",
"ax c #637b5a",
"ay c #4a9c29",
"az c #738c6b",
"aA c #84b573",
"aB c #6b9c5a",
"aC c #102908",
"aD c #104200",
"aE c #428431",
"aF c #216310",
"aG c #104a00",
"aH c #6b8c63",
"aI c #426b39",
"aJ c #527b4a",
"aK c #083900",
"aL c #e7efe7",
"aM c #adb5ad",
"aN c #737b73",
"aO c #5a635a",
"aP c #424a42",
"aQ c #6b7b6b",
"aR c #395239",
"aS c #397b39",
"aT c #081808",
"aU c #000800",
"aV c #ced6d6",
"aW c #737b7b",
"aX c #4a5252",
"aY c #424a4a",
"aZ c #394242",
"a0 c #101818",
"a1 c #94a5ad",
"a2 c #a5b5bd",
"a3 c #9ca5ad",
"a4 c #5a636b",
"a5 c #a5adb5",
"a6 c #636b73",
"a7 c #4a525a",
"a8 c #081829",
"a9 c #737b8c",
"b. c #8c94ad",
"b# c #848ca5",
"ba c #737b94",
"bb c #7b7b84",
"bc c #52525a",
"bd c #5a5a63",
"be c #42424a",
"bf c #6b6b7b",
"bg c #73738c",
"bh c #000008",
"bi c #000000",
/* pixels */
"aOaO.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g",
"aOaO.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g",
".h.h.dbibibibibi.....#.#.B.b.r.d.f.f.gaXaXaXbeaZ.r.r.b.B.D.#.e.m",
".h.h.ebibibibibi.....#a0.b.b.d.dbebebcbdbdbcaY.f.d.d.b.B.D.#.f.o",
".h.h.ebibibibibi.....#.a.b.c.d.ebcbcbgbaa9bfbcaX.e.e.b.b.D.D.f.o",
".h.h.ebibibibibi.....#a0.b.c.e.fbdbdb#a1b.baa4aX.e.e.b.b.D.#.f.o",
".h.h.ebiaX.l.k.k.k.k.k.k.k.k.f.fa6a6aVaL.l.lbb.k.k.k.k.k.kaO.f.o",
".h.h.ebi...i.l.l.l.l.l.l.l.l.iaZbfbfaVaM.k.u.l.l.l.l.l.k.i.a.f.o",
".h.h.ebibibi.f.l.l.l.l.l.l.l.k.la7a7.u.k.l.l.l.l.l.l.l.g.#.#.f.o",
".h.h.ebibibi.f.l.l.l.l.l.l.l.k.la7a7.u.k.l.l.l.l.l.l.l.g.#.#.f.o",
".h.haRbibibibibi.k.k.k.k.k.j.j.j.j.j.j.j.j.k.k.k.k.k.a.a.#...f.o",
".h.haSbibibibibi.l.laWaN.j.j.j.j.j.j.j.j.j.j.k.k.k.k.aa0.#...f.o",
".h.hayaGaUbibibiaTaTaeapaHaHaoauaNaN.j.j.j.j.j.ja#a#aFal....aP.o",
".h.hah#2aDaUaUaU#2#2aq#Yadajalal#4#4aNaNaQaQaN.kagagarahaT..aI.o",
".h.hbibi#3atasaw#N#N#i#h#T#QbibiaBaBakaaafafaeaf#I#Ibi#HacasavaA",
".h.hbibi.Ubibi#Y#8#8#Y#Y#Q#2bibi#1#1aCbibibiaqaD#D#Dbi.MaUbi#2aa",
".h.hbibi#c#p.Vbi#J#Jbibi#r#gbibi#s#sbi#n#.#f#b#b#J#Jbi.6.2.Wbibi",
".h.hbibi#c#p.Vbi#J#Jbibi#r#gbibi#s#sbi#n#.#f#b#b#J#Jbi.6.2.Wbibi",
".h.hbibibibibibi#p#pbibi#q#mbibi#r#rbibiaUbibibi#J#Jbi#z#U#Hbibi",
".h.hbibi.Ubibi#Y#I#Ibibi#l#lbibi#q#q.Hbibibi#Y#n#a#abi#z#z#obibi",
".h.h.1.V.V.7.K.V#A#A.S.S.z.w.X.Y.N.N.3.J#d.T.S.L.R.R.V.M#Y.U.1#k",
".h.h.Zbi.G.G.G#Y.u.u#R.x.o.w.s.y.o.o.q.8.9.zam.m.u.u#Y#Ybi#Y.I.o",
".h.h.Cbibibibi.f.j.j.l.l.n.oaM.obibi.paM.o.n.l.l.j.j.bbibibi.f.o",
".h.h.ebibibi.d.l.j.jbb.l.m.n.t.lbibi.maM.n.m.l.k.j.j.j.#bibi.e.o",
".h.h.ebibi.i.j.j.j.j.k.k.l.m.hbibibi.b.l.m.l.k.k.j.j.j.j.ebi.e.o",
".h.h.ebibi.i.j.j.j.j.k.k.l.m.hbibibi.b.l.m.l.k.k.j.j.j.j.ebi.e.o",
".h.h.e.d.m.m.m.m.l.l.l.l.l.hbibibibibibi.l.l.l.l.l.l.m.m.l.m.f.o",
".h.h.e.d.e.e.e.e.e.e.e.e.f.abibibibibibi.d.f.e.e.e.e.e.e.e.eaO.o",
".h.h.ebibibibibibibibibi...abibibibibibibibibibibibibibibibi.e.o",
".h.h.ebibibibibibibibibibibibibibibibibibibibibibibibibibibi.e.o",
".h.h.ebibibibibibibibibia8bibibibibibibibibibibibibibibibibi.f.o",
".h.haM.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.t"
};

5
doc/Makefile Normal file
View File

@@ -0,0 +1,5 @@
SHELL = /usr/local/bin/bash
default:
$(SHELL) ./configure --with-plugins

5
doc/Makefile.in Normal file
View File

@@ -0,0 +1,5 @@
SHELL = @SHELL@
default:
$(SHELL) ./configure --with-plugins

9
doc/README Normal file
View File

@@ -0,0 +1,9 @@
Last Updated: Tue Apr 8 16:16:03 EDT 2003
This directory contains documentation about BitchX and its features.
Documentation for an IRC Client like BitchX is never complete, if you
have any files you would like included here, please send them to powuh
in #BitchX on EFnet.

107
doc/README.GTK Normal file
View File

@@ -0,0 +1,107 @@
GTKBitchX is no longer supported. It is bloated and eats a lot of CPU.
If you have problems with the GTK client do not ask us for help. The GTK
client has not been updated or supported and we will no longer support it
in BitchX2
Minimum requirements for gtkBitchX:
GTK and GLIB 1.2.0
<http://www.gtk.org/>
imlib 1.9.4
<http://www.labs.redhat.com/imlib/>
pthreads
zvt from gnome-libs 1.0 (1.2 fixes the scrolling bug)
<http://www.gnome.org/>
esound (ESD) 0.2.5 and audiofile 0.1.5 for sound support
<http://www.tux.org/~ricdude/EsounD.html>
<http://www.68k.org/~michael/audiofile/>
Building GTK:
./configure --with-gtk
For ESD sound support:
./configure --with-gtk --enable-sound
Known bugs:
Paste doesn't work in MDI mode.
When the menu is added during window creation it screws up the size of
the window. I need to find a way to delay adding of the menu
until the window size has been solidified.
Changes:
Closed stdin/stdout/stderr to prevent problems with the
starting terminal on gtkBitchX exit.
Fixed background operation on Linux (and possibly others).
SIGTTOU would be called repeatedly on Linux, on
FreeBSD using nothing() would stop it's occurance.
It now uses SIG_IGN instead of nothing().
Fixed a sizing bug with the nicklist enabled.
Added tab highlighting in MDI mode thanks to DavidW2.
Added a graphical about box and window icons courtesy of DavidW2.
Added MDI code using the GTK notebook widget. This is not quite
what I had originally envisioned but it will work for the
time being.
Determined that the size bug is caused by creating the menu at
the same time as the window. The window is too small by the
height of the menu. Workaround in the works.
Fixed a bug with ESD not finding the sound files.
Code merged back into the main source.
Added ESD sound support to allow $mciapi(playfile filename) to function
as it does in PMBitchX.
Fixed a bug where the font sizes were not saved when gtkbx falls back
to the default fonts. Pointed out by sideshow and MNC.
Fixed the window #1 corruption problem. It turned out to be in my
failsafe code which was to make sure there was a screen to send
the text to.
Reimplemented shared menu code. It now works as designed however when
changing a shared menu it recreates the menus which results in
excessive drawing. I am looking for a way to prevent the
redrawing (or at least reduce it). Also looking for a way to
improve the look of the checks... currently "X".
Added shared menu code from the PM version and then removed it because
GTK does not allow internal sharing of widgets. I guess I'll have
to code a database of menus and widgets which are theoretically
the same. (that won't work either because once it's attached it
can't be changed).
Bits are now used to store menu types to facilitate having more than
one type for a menu item.
Merged with the new BitchX 1.0 beta source.
Rewrote the tputs code so it's definition won't conflict on some systems.
Fixed a bug which was coring on first window creation in very rare
conditions.
Readded the flash code to attempt to solve a weird charset problem.
Reentrancy is impossible until gtk becomes thread safe so I added two,
functions gui_mutex_lock() and gui_mutex_unlock() to allow
plugins to call gtk functions safely.
Removed SIGUSR1 signal trapping on glibc 2.0 systems, because SIGUSR1
and SIGUSR2 are used by threads.
Removed bxzvt.h and added a fix for the zvtterm.h header. Zed (zvt
author) will be adding this fix to the current codebase but
the fix is still required for previous installations.
Changes to configure to allow clean compiling on *BSD, and remove
temporary files.
Zed also has proportional fonts working, so proportional fonts will
be supported by gtkBitchX if using a version of zvt which
supports proportional fonts. I'll note which versions do when
they are available.
Implemented /exec -start for unix.
Implemented /window font <fontname> to allow the font to be set via
a script, and to maintain OpenChat compatibility.
Tried to fix the window clear bug... mostly got it working... seems to
clear the first line of window #1.
If you notice any other bugs, or have any questions email me at
dbsoft@technologist.com or visit #BitchX on EFNet.
Thanks!
Brian Smith

267
doc/README.OS2 Normal file
View File

@@ -0,0 +1,267 @@
The OS/2 portion of the BitchX client is no longer supported and will not
be maintained in BitchX2. If you have troubles with this software you can
attempt to contact the former maintainer but be aware that he may no longer
have any interest in updating or fixing problems with the OS/2 portion of
the client.
sin@bitchx.org/EFnet@#BitchX
------
This is a port of the latest BitchX to OS/2 Presentation Manager. (3-25-02)
Several environment variables should be set before running PMBitchX.
As of this version you can let the installation program set these,
or you can do it yourself.
HOME = your home directory, where you will place scripts and other things.
USER = your username
IRCNAME = PMBX User's name
IRCNICK = PMBXUser
HOSTNAME = mycomputer
Scripts are located at scripts.bitchx.com. To install untar them into the
HOME directory and /load them. Also try /load menu.bx for pull down
menus. If it is a clean installation and you don't have the HOME environment
variable set... it should load automatically.
What's new in 1.0c19:
Fixed multiserver issues resulting from script calls from the
GUI thread with from_server set incorrectly.
Updated to the latest version of Dynamic Windows.
Memory leaks and buffer under/overrun fixes, should be very
stable now.
Probably alot more but I've been distracted with other projects
and this code has been developing for over a year.
What's new in 1.0c17:
Lots of bug fixes to the main BitchX source.
Fixed another multiserver bug. from_server was pointing
to the wrong server when the EVKEY message made it back to
the main thread. This affected any GUI BitchX's.
What's new in 1.0c16 release 4:
Fixed saving of the MDI variable. (as well as a few others)
Fixed a bug in /window delete.
Added double click keybindings.
Updated script to use these keybindings to open query windows.
Added Saving of the nick@network time date in the "Comments"
Extended Attribute. So you can tell when and where a file
came from.
Fixed some major multiserver issues. Some issues still exist.
Updated to the latest version of dynamic windows.
Fixed a bug where the window size was set to 0 when a window was minimized.
Fixed size bug of the minimized icons in MDI mode.
Added virtual host support.
Fixed a couple timer bugs.
Fixed a crash when trying to detach shared menus from a menu that
didn't exist.
PM About box.
What's new in 1.0c16 release 3:
MDI fixes, resizing flips the y component.
Enhanced codepage support with tips from mikh.
Fixed a bug where BitchX was attempting to operate on dead screens.
What's new in 1.0c16 release 2:
Once again updated the installer. Fixed a bug in release 1 installer
which caused crashes when updating CONFIG.SYS.
Fixed a bug which *VERY* intermittently caused crashes when updating
the cursor (blink).
Fixed crashing when loading the script (when comparing against a
string with "infinity" in it... i.e. in the server list).
Removed MMPM dependency. Now when starting up it tries to load
MCIAPI.DLL and if it fails it disables sound support.
Fixed a crash bug when SERVER_GROUPS is enabled, and it cycles
through all the server entries.
What's new in 1.0c16:
Updated script to allow CTRL-X to switch windows as well as channels.
If you turn off JOIN_NEW_WINDOW please also disable the rebinding of CTRL-X.
Added some keybindings to bx-rc to make things easier.
If you are an OpenChat user you may want to edit the bx-rc
and uncomment a couple lines.
Fixed crash bug when reloading menu.bx.
PMPaste now pastes to your query.
Fixed window close crash bug.
Fixed Switch List to show only one window in MDI mode.
Fixed background not redrawing in the MDI window in certain conditions.
Added attached nicklist.
Script enhancements to take advantage of the nicklist.
Preliminary MDI code ... it's buggy in spots.
New JOIN_NEW_WINDOW_TYPE, QUERY_NEW_WINDOW and QUERY_NEW_WINDOW_TYPE.
Allows the JOIN_NEW_WINDOW variable to be used in console clients.
Since DavidW2 and pana reautoconfed BitchX PMBitchX can now be configured
via the configure script with the following options:
./configure --with-pm --enable-sound
Rewrote the copy code. It now allows you to select the entire window.
Fixed a bug where it was using the wrong character size during the
selection when more than one font is in use. It now strips trailing
white space from the end of the line.
Added tab stops to the properties notebook so it can be manuvered with
the keyboard.
New shared menu code in line with OpenChat.
New function $menucontrol().
Rewrote the font dialog, dialog is bigger, has the option to
change the font for all windows. No longer blocks the UI while
the dialog is open.
Fixed a key binding problem with the delete key.
Script updated to demonstrate the new functionality. (settings menu)
New command /dialog in the source tree althought disabled for release
because it is to incomplete/buggy at the moment.
Debating best fix for keybinding differneces on OS/2 and Unix.
What's new in 75p3 (rel 3):
Fixed a bug in /window setwindowpos which core if the improper
number of arguments was used.
Fixed the scrollerbars in the pm and gtk, so they no longer use
the bug work around in clients prior to 75p3.
Fixed a bug which made /window menu -delete not function.
What's new in 75p3 (rel 2):
Bug fix for window #10 cores.
ajoin, invite etc now obey the JOIN_NEW_WINDOW parameter.
The Join menu now works properly.
/window setwindowpos implemented.
Bug fix in $winitem() so it properly returns the current position
in pmbx and gtkbx.
$screensize() implemented.
Various updates to menu.bx.
What's new 75p3:
Renamed bxmenu.bx to menu.bx (which is what is used in gtkbx).
Several menu.bx fixes, including adding the "quiet" alias.
Merged with the latest source, fixed a bug with event sending when more
than 10 windows were open.
Fixed a bug in the nicklist when the window in focus was not on a channel.
What's new 75p2 (rel3):
Fixed a bug where the maximum file descriptor limit was incorrectly set to
16, it is now set to FD_SETSIZE (which in emx 0.9d is 256). Solves a
core problem with a large number of DCCs.
Fixed a plugin bug where it would loop infinitely when there were less than
20 nicks on a channel.
Fixed /window show to properly change the current focus.
What's new 75p2 (rel2):
Readded /exec code fixes, and file dialog code that didn't get merged.
What's new 75p2 (rel1):
Fixed a bug in the input line.
Subsequent calls to /nl (nicklist plugin) now correctly turn the
nicklist on and off.
Updated the nicklist plugin so you can /set nl_always_on_top on.
Using new keybinding code.
Fix for Aurora/Trident/GRADD/Cirrus Logic drivers. (IBM misdocumentation)
Based on BitchX 75p2 (public) code, merged with main distribution.
I have created an XP-like interface in the source code to ease
porting to other OSes. A preliminary gtk port is available.
Some performance changes in the caching code.
File dialog no longer blocks the window which it was called from.
It now runs in a separate thread.
Added a clist window scripting function.
Fixed a bug in $servergroup() which caused the script to screw up
in the server menu server list.
Fixed a bug in /window show which caused a crash when used with
hidden windows.
Added SIGINT on CTRL-C to allow you to break out of a server connect.
(In both pmbx and gtkbx)
Changed the installer to not add IRCSERVER to the CONFIG.SYS.
Readded a couple patches that got missed in the last code merge.
Fixed the corruption bug in gui_clreol().
Known bugs:
No PM specific ones known at the moment.
Please don't report the above as bugs, I already know about them. :>
Please send any comments to dbsoft@technologist.com

251
doc/botlink.txt Normal file
View File

@@ -0,0 +1,251 @@
BitchX bots mini-howto.. by Rwf, date: 08/17/97
Table of contents:
(1) Overview of BitchX's bot mode
(2) Basic steps to link two (or more) clients
(3) Using the partyline
(4) Frequently asked questions
(5) Contacts / miscellaneous information
Note: this document targets BitchX 72p2 and higher.. if you don't have
at least 72p2, check out the contacts section info on how to get
a newer copy of BitchX.
(1) Overview of BitchX's bot mode
BitchX includes an eggdrop-like bot mode.. it allows you to create a DCC
'partyline' between several BitchX clients. This document explains how
to create a network like this, and answers some of the questions surrounding
the linking in general.
(1a) Single-bot partylines
Yes, it is possible to create a partyline on just one client. It looks a
little like this:
Bot A
Client A / | \ Client C
|
Client B
In this situation, Clients A, B, and C can be any kind of IRC client who
is active in a chat with Bot A. Bot A relays all the text between the three
clients, allowing them to talk to each other through the bot.
(1b) Dual-bot partylines
Dual-bot partylines are structured like this:
Bot A ------------------------------- Bot B
Client A / | Client C / | \ Client E
Client B Client D
Here, Bots A and B are linked together. Clients A and B hold DCC chat
connections to Bot A, while clients C, D, and E have DCC chat connections
to Bot B. On each of the bots, the chat works the same way as it does in
the single-bot situation. However, the two bots also relay the information
between themselves, and pass that information on to their clients. For
example, if Client A typed a line of text, that same line would show up
on Client C's screen as Client A's nickname followed by Bot A's nickname,
to let Client C know where the message was coming from.
(1c) Three (and more) bot partylines
Client A \ / Client B
Bot A
Bot B / \ Bot C -- Client F
Client C / | |
Client D Client E
In this diagram, Bot A serves as the hub bot. Bots B and C are linked to
Bot A, and all the bots have clients attached to them. Here, if Client A
sends a message, it is relayed to Bots B and C by Bot A, as well as being
relayed to Client B. Bots B and C take the message and further relay it to
their clients. Now, if Client F were to send a message, the message would
be relayed by Bot C to Bot A and Client E. Bot A would pass the message to
its clients, and to Bot B, which would further pass the message along to
the clients attached to Bot B.
More complicated uplinks are possible, but i'm getting a little sick of
drawing nice pictures. :) Section 2 explains how the linking takes place.
(2) Basic steps to link two (or more) clients
This can be done in just a few steps, but you have to pay attention..
Notice: This is not for the idle-minded, stop by #teenchat sometime. :)
a) Make sure you actually have two (or more) clients to do the linking
with. How you choose to run the clients is up to you, although a lot
of people (including myself) prefer running them under screen. again,
check the contacts section to find out how to get screen.
b) Decide which bot you want to be the hub bot.. it doesn't make too much
difference in a two-bot network, but its always nice to have a
designated driver, you know? :)
c) Pick a bot to start with.. (preferably the hub, unless you enjoy doing
things the hard way like a complete fool) Use the /addbot command to
add each of the other bots to the internal bot list. The syntax of the
/addbot command is this:
/addbot BotB #MyChannel 2 2 i_am_lame
| | | | | |
the command | | | | password
bot nick | | \
/ | protection level
channel for bot \
auto-op level
notes:
BotB - the nickname can also be a hostmask.. however, you MUST specify
a nickname somewhere. for example, BotB!*mybot@*.lame.net
#MyChannel - channel the bot will sit in
auto-op - desired auto-op level for the other bot, just like in a
normal userlist. see /bhelp userlevels
protection - always a good idea to wear it.
oh come on, that should be self-explanatory.. :)
password - this is a *MUST-HAVE* !!!! its a good idea to make sure
its the same thing across all the bots... either that
or i hope you own stock in Tylenol.
For each of the non-hub bots, use the same procedure to add the hub
bot to the botlist. Its pretty simplistic.
d) Now that all the bots know who each other are, its time for a formal
introduction. (if you have more than two bots, start with the hub and
one of the other bots, add the rest later.) From the hub bot, issue
this command:
/dcc bot BotB
where BotB is the nickname of the second bot. This will send the second
bot a DCC BOT request, which will be checked against its bot list.
Next, flip over to BotB, and enter the command:
/dcc bot BotA
You should already have seen some CTCP & DCC messages from BotA, and
issuing that command causes BotB to finish off the link.
To test the link, type this:
/csay hi there
This will send a message as if the bot itself was speaking. Try looking
at BotA to make sure the message showed up.. it should look like this:
(BotB(xlink)) hi there
If you see a message like that, you're in business. Read on.
e) Finishing touches..
1. make sure every bot has its settings correct..
type /set bot , and check these settings:
.......................BOT_LOG ON
...................BOT_LOGFILE tcl.log
......................BOT_MODE ON
....................BOT_PASSWD has no value
....................BOT_RETURN has no value
.......................BOT_TCL OFF
The most important setting being BOT_MODE .. make sure its
turned on, otherwise the bot will refuse DCC chats.
2. In BitchX 72p2 and up, the bots will only accept chats from
persons in their userlist (see /bhelp adduser for details),
*OR* persons who have been .invite 'd into the chat session.
See the command list in the next section for details.
3. Make sure to do a /saveall to save all important settings.
(3) Using the partyline
To join the partyline, start a dcc chat with one of the bots. After the
DCC is connected, type .chat into the DCC to join the partyline. You
can then talk to any other people already there, and use the available
commands in the DCC:
.act <action> - sends <action> to chat line
.boot <nick> <msg> - boot <nick> from network
.chat - once a dcc is started send .chat to enter
the party line
.cmsg <nick> <msg> - sends <msg> to <nick> in chat
.echo - toggle echo back to you on/off
.help <topic> - help for commands or <topic>
.invite <nick> - invites <nick> to join the partyline
.msg <nick> <msg> - send <msg> to <nick>
.say <msg> - say <msg> to the channel
.quit - quit partyline, but not the chat.
.tcl <tcl_command> - tcl command
.who <botnick> - who is on bot or <botnick>
.whom - shows all users on network
Just typing text in the DCC causes the bot to relay it to the partyline.
(4) Frequently Asked Questions
Its time for the big FAQ list.. a lot of these I asked myself at one time,
but its good info so be sure to read it ALL.
q) What's BitchX?
a) Uhm... this isn't the file you were looking for.
q) The bots didn't link but I have botlist entries for them each!
a) Check the passwords. They *MUST* be identical. Also check the usermasks
for the bots for typos, etc.
q) The bots linked, but I can't chat to them.
a1) Make sure you've added yourself to the bot's userlists.
a2) Make sure BOT_MODE is turned ON.
q) Some of the commands in the chat don't work.
a) Many of the commands require the specified userlevel in .help to use
them. Make sure to add yourself to the bot's userlist.
q) Can the bots share userfiles like in eggdrop?
a) No. The bots do not share userfiles..
q) Can the bots link to eggdrops?
a) No. Eggdrops link via telnet, not DCC.
q) Where can i get BitchX?
a) See the contacts section.
q) Where can i get screen?
a) See the contacts section.
q) Where can i get Windows?
a) Press the power button.
q) Can the bots share userfiles like in eggdrop?
a) Dumbass.
q) Who the hell is Rwf?
a) God.
q) Who the hell is panasync?
a) The big god.
q) Can the bots share userfiles like in eggdrop?
a) You can go away now.
q) Does chicken come in a can?
....
(5) Contacts & information
Where to get bX:
As always, there's the #BitchX channel on EFNet.
Get BitchX via FTP: ftp://aurora.bridges.edu
Get screen from the same places.
Contacts:
Rwf - find me on EFNet.. #Lb, or #BitchX. rwf@loonybin.dyn.ml.org
panasync - find him on EFNet too, in #BitchX.

1594
doc/entire-faq.html Normal file

File diff suppressed because it is too large Load Diff

1106
doc/functions.txt Normal file

File diff suppressed because it is too large Load Diff

338
doc/hooks.txt Normal file
View File

@@ -0,0 +1,338 @@
This is some information provided for script writers about the extra hooks
that BitchX provides for you. You can either use these or not depending on
what you like to see. This list is being added to and I will try and keep
this file updated for them. Thanks to "suicide" for pushing me into this :)
suicide writes the Whirred script for BitchX
MSGLOG returns
timestr
type
from
what they sent.
-or-
timestr
"On"
fully expanded filename
-or-
timestr
"Off"
BANS returns
the number we consider this to be
channel
the ban itself
who set it.
BANS_HEADER
CDCC_PREPACK
CDCC_POSTPACK
type NOTICE or PRIVMSG
from
nickname
active dcc's
send limit
number in the queue
queue limit
max dcc rate out
number of bytes sent in this session.
max dcc rate in
number of bytes received in this session.
total size of the packs we're offering
minimum dcc speed we require.
CDCC_PACK
type NOTICE or PRIVMSG
channel
num of this pack
number of files in this pack
size of this pack
number of gets for this pack
the description.
CDCC_NOTE
type NOTICE or PRIVMSG
channel
note for this package
CDCC_QUEUE
nick
time
pack num
number of files
description
BOT_LIST
Auto op
protected
nick
channels comma separated.
host
BOTLIST_HEADER
CHANNEL_SYNCH
channel
time to join
KICK_LIST
who
from
channel
comment
DCC_HEADER /* display before DCC_STAT* */
"Dccnum"
"type"
"num"
"status"
"K/s"
"File"
"Encrypt"
DCC_POST /* display after DCC_STAT* */
"Dccnum"
"type"
"num"
"status"
"K/s"
"File"
"Encrypt"
DCC_STAT
/* this hook displays only dcc like chat's raw etc */
number
type
user
status
"N/A"
Description
"E" for encrypted or nothing.
DCC_STATF
/* this hook should only display files being transfered */
Same as above.
except kilobytes instead of "N/A"
DCC_STATF1
percentage of file transfer'd
bytes transferred.
filesize
minutes
seconds
DCC_TRANSFER_STAT
/* for /dcc stats command */
bytes in
max rate in
min rate in
bytes out
max rate out
min rate out
number of dcc's
active dcc's
send limit
Dcc Auto get "On" or "Off"
show dcc paths "On" or "Off"
Dcc quiet mode "On" or "Off"
Dcc overwrite mode "On" or "Off"
JOIN_ME
channel we just joined.
/* useful for setting individual channel cset's */
LLOOK_JOIN
name of server
name of server link
hopcount
LLOOK_ADDED
name of server
name of server link
hopcount
LLOOK_SPLIT
name of server
name of server link
hopcount
STAT_HEADER
Nick
Dop
kicks
nicks
publics
STAT
nick
dop count
kick count
nick change count
public count
USERS_HEADER
Level
Auto op
protection
Channel
Nick
+o
UserHost
USERS
Users level in our userlist
Auto op ?
Protect ?
Channel/Channels comma separated.
nickname
Hostname
chanop ? '@' :''
USERLIST
Level
Aop
Prot
nick
host
channel(s) comma separated.
Password
USERLIST_HEADER
NOTIFY_SIGNOFF_UH
Nick
username
hostname
NOTIFY_SIGNON_UH
Nick
Username
Hostname
SAVEFILE
Userlist and count
-or-
ShitList and count
-or-
AutoJoin and count
-or-
BotList and count
-or-
Notify and count
-or-
Idle and count
-or-
BanWord and count
SAVEFILEPOST
SAVEFILEPRE
name of file we are saving to
expanded name of file.
SERVER_NOTICE_FAKES
SERVER_NOTICE_FAKES_MYCHANNEL
SERVER_NOTICE_FOREIGN_KILL
SERVER_NOTICE_KILL
SERVER_NOTICE_LOCAL_KILL
SERVER_NOTICE_SERVER_KILL
for nickname
from who
reason
server
other
/* note some of these depend on /set's being on in order to provide
the information. SHOW_UNAUTH's SHOW_FAKES, SHOW_SERVER_KILLS,
SHOW_SERVER_CRAP in particular.
*/
SERVER_NOTICE
depends on /set SHOW_SERVER_CRAP on/off
from nick
line to display
SHITLIST
level of shit to apply
uh filter
channel(s) comma separated
reason for shitlist
SHITLIST_HEADER
SHOWIDLE_HEADER
channel
idle time allowed
SHOWIDLE
nick
host
userlevel in the userlist
idle time
CHANNEL_STATS (32 parameters)
channel
complete date time in Mon Jun 10 01:20:03 1996 format. channelcreation
time on channel in 0d 0h 0m 20s format
mem usage total size
mem used by nicklist
mem used by channellist itself
mem used by banlist
stats_ops
stats_dops
stats_bans
stats_unbans
stats_ops
stats_dops
stats_bans
stats_unbans
stats_signoffs
stats_joins
totalbans
maxbans
stats_sops
stats_sdops
stats_sbans
stats_sunbans
usershere
usersaway
chanops
chanunop
totalnicks
maxnicks
numircops
ircops list of nicks that varies.
USAGE /* note still experimenting with this particular hook which may
change at any time */
command
usage of command
DESYNC_MESSAGE
channel
server
HELPSUBJECT /* output from /chelp */
name
output
HELPTOPIC /* output from /chelp */
name
WHOLEFT /* this list is expired after 20 minutes for those on the userlist
and 10 minutes on the regular list. */
nick
userhost
channel
seconds since split
their server
my server
WHOLEFT_HEADER
USERS_SERVER
nick
server
USERS_SERVER_HEADER
AR_REPLY /* when the user presses ^] this hook is called with auto_reply
nick to use passed to it. */
nick
CLONE_READ
/* When information is ready on a socket this hook is called once
until $readsocket() is used.
*/
socket number
server name
port

111
doc/ircII.servers Normal file
View File

@@ -0,0 +1,111 @@
[EFnet US]
irc.weblook2k.com
irc.vrfx.com
irc.umn.edu
irc.umich.edu
irc.secsup.org
irc.qeast.net
irc.nac.net
irc.isprime.com
irc.easynews.com
irc.desync.com
irc.blessed.net
irc.aloha.net
[EFnet Canada]
irc.torix.ca
irc.mpls.ca
irc.avalonworks.ca
irc.arcti.ca
[EFnet Europe, Middle East, Asia]
irc.inter.net.il
irc.inet.tele.dk
irc.homelien.no
irc.hemmet.chalmers.se
irc.efnet.nl
irc.du.se
irc.dkom.at
efnet.skynet.be
efnet.demon.co.uk
efnet.cs.hut.fi
[DALnet]
irc.dal.net
[IRCnet]
ircnet.netvision.net.il
ircnet.easynet.co.uk
ircnet.demon.co.uk
irc.xs4all.nl
irc.tokyo.wide.ad.jp
irc.swipnet.se
irc.stealth.net
irc.skynet.be
irc.sci.kun.nl
irc.ru
irc.pvv.ntnu.no
irc.powertech.no
irc.oulu.fi
irc.netsurf.de
irc.media.kyoto-u.ac.jp
irc.ircnet.net
irc.ircnet.dk
irc.flashnet.it
irc.excite.it
irc.datacomm.ch
irc.cs.hut.fi
fu-berlin.de
[QuakeNet]
wineasy.se.quakenet.org
whole.ny.us.quakenet.org
tiscali.dk.quakenet.org
splatterworld.de.quakenet.org
snoke.nl.quakenet.org
port80.se.quakenet.org
oslo.no.quakenet.org
mediatraffic.fi.quakenet.org
demon.uk.quakenet.org
barrysworld.uk.quakenet.org
[Undernet US, Canada]
washington.dc.us.undernet.org
sanjose.ca.us.undernet.org
montreal.qu.ca.undernet.org
mesa.az.us.undernet.org
mclean.va.us.undernet.org
fairfax.va.us.undernet.org
atlanta.ga.us.undernet.org
[Undernet Europe, Middle East, Asia]
surrey.uk.eu.undernet.org
stockholm.se.eu.undernet.org
milan.it.eu.undernet.org
london.uk.eu.undernet.org
helsinki.fi.eu.undernet.org
geneva.ch.eu.undernet.org
diemen.nl.eu.undernet.org
amsterdam.nl.eu.undernet.org
[UniBG]
irc.unibg.org
irc.spnet.net
irc.otel.net
irc.omega.bg
irc.nbu.bg
irc.lt-tech.org
irc.lirex.com
irc.langame.net
irc.comnet.bg
irc.chatbg.net
[LinkNet]
se.link-net.org
irc.mindimage.net
irc.link-net.org
irc.lagged.no
irc.kinexuseurope.co.uk
irc.firelab.net
irc.de.link-net.org
irc.bsdlink.net

51
doc/mirc-colors.txt Normal file
View File

@@ -0,0 +1,51 @@
About Control-C colors
If your client was compiled with #define CONTROL_C_COLORS and you have
/SET CONTROL_C_COLORS ON, then you can use the control-c colors feature.
The general syntax is:
color-seq-start := "^C" [number] ["," number]
color-seq-end := "^C"
The first "number" is a positive integer at least 0 and not more than 15.
The colors correspond to the ANSI color schema:
0 - black 1 - red 2 - green 3 - yellow
4 - blue 5 - magenta 6 - cyan 7 - white
The colors 8 through 15 are the corresponding "bold" versions of the colors
above, whatever that may be for your terminal.
The "standard" as imposed by mIRC forbids an empty leading value. This
implementation imposes this draconian restriction. In fact, it is treated
as an end-of-color delimiter. So there.
If you wish to defeat the color codes, you can have them filtered out by
doing /SET CONTROL_C_COLORS OFF.
OUR REVISIONS TO THE "STANDARD":
The syntax of colors has been modified to:
color-seq-start := "\003" + color-term + ["," color-term]
color-term := ["0" + ["0..9"] | "1" + ["0..5"] ] | ["2..9"] | [""]
color-seq-end := "\003"
Specifically, this implementation guarantees that at least zero and at most
two character will ever be used to construct the color code. If the first
character is a 0, then the second character will be used if it is a number.
If the first character is a 1, then the second character will be used only if
it is a number at least 0 and at most 5. A comma following the first color
term will only be "eaten" if it is followed by another valid term.
Either the first term or the second term may be empty. If either term (but
not both) are ommitted, then no change will occur for that modifier. If both
terms are omitted, the comma must also be omitted, and all color attributes
will be terminated.
It is hoped that this clarification will allow the deterministic use of color
codes (if you always use two digit codes, then you will never have a problem
with the color codes munching too many characters.)
-end of file-

143
doc/misc/BitchX-mini.xpm Normal file
View File

@@ -0,0 +1,143 @@
/* XPM */
static char *BitchX-mini[] = {
/* width height num_colors chars_per_pixel */
" 16 27 111 2",
/* colors */
" c None",
". c #5A635A",
"+ c #4A4A4A",
"@ c #636363",
"# c #313131",
"$ c #000000",
"% c #080808",
"& c #101010",
"* c #212118",
"= c #312929",
"- c #424242",
"; c #4A5252",
"> c #42424A",
", c #212121",
"' c #181810",
") c #393939",
"! c #636B73",
"~ c #5A5A63",
"{ c #848CA5",
"] c #8C94AD",
"^ c #5A636B",
"/ c #7B7B7B",
"( c #CED6D6",
"_ c #848484",
": c #7B7B84",
"< c #9CA5AD",
"[ c #292929",
"} c #4A525A",
"| c #84847B",
"1 c #737373",
"2 c #424A4A",
"3 c #397B39",
"4 c #737B7B",
"5 c #181818",
"6 c #4A9C29",
"7 c #000800",
"8 c #081808",
"9 c #63AD39",
"0 c #6B8C63",
"a c #6BAD4A",
"b c #737B73",
"c c #294218",
"d c #216310",
"e c #424A42",
"f c #317B00",
"g c #104200",
"h c #213900",
"i c #84C642",
"j c #7B8C6B",
"k c #738C6B",
"l c #6B9C5A",
"m c #397308",
"n c #214A08",
"o c #428431",
"p c #212900",
"q c #296300",
"r c #081000",
"s c #6BAD18",
"t c #7BB542",
"u c #102908",
"v c #081800",
"w c #528400",
"x c #102100",
"y c #526B00",
"z c #5A9C00",
"A c #94CE18",
"B c #9CCE21",
"C c #B5D618",
"D c #4A5A00",
"E c #94C600",
"F c #425200",
"G c #5A9400",
"H c #ADE731",
"I c #84B521",
"J c #A5C642",
"K c #8CBD00",
"L c #A5CE00",
"M c #396B00",
"N c #73A500",
"O c #9CD642",
"P c #9CDE29",
"Q c #6BBD29",
"R c #639C00",
"S c #426B00",
"T c #4A7B00",
"U c #A5C65A",
"V c #ADDE4A",
"W c #181800",
"X c #4A6300",
"Y c #314A00",
"Z c #849C29",
"` c #637300",
" . c #7B846B",
".. c #A5B55A",
"+. c #9C9C84",
"@. c #BDCE7B",
"#. c #D6DEB5",
"$. c #BDCE84",
"%. c #B5D65A",
"&. c #737B52",
"*. c #7B7B39",
"=. c #949494",
"-. c #B5ADA5",
";. c #BDBDBD",
">. c #9C9C9C",
",. c #8C8C8C",
"'. c #636339",
"). c #ADADA5",
"!. c #6B6B6B",
"~. c #081829",
"{. c #B5B5B5",
". + + + + + + + + + + + + + + + ",
"@ + + + + + + + + + + + + + + + ",
"@ # $ $ % & * = - + ; > = , ' ) ",
"@ ) $ $ % & , # ; ! ! ; # , ' - ",
"@ ) $ $ % & , ) ~ { ] ^ ) , ' - ",
"@ ) ; / / / / - ! ( _ : / / / - ",
"@ ) $ / _ _ _ _ ! < _ _ _ / [ - ",
"@ ) $ - _ _ _ / } | _ _ _ _ & - ",
"@ ) $ $ / _ / 1 2 1 / / / , & - ",
"@ 3 $ $ _ 4 1 1 1 1 1 / / 5 & - ",
"@ 6 7 $ 8 9 0 a b 1 1 1 c d % e ",
"@ $ f g h $ i $ j k l k m $ n o ",
"@ $ p $ q r s $ t u $ v w $ 7 x ",
"@ $ y r z $ A $ B $ C $ z $ D $ ",
"@ $ E F G $ H $ I $ J K G $ L $ ",
"@ $ M 7 N $ O $ P $ Q $ R $ S $ ",
"@ $ p $ T $ U $ V W $ r X $ Y $ ",
"@ Z F ` ...+.@.#.$.%...&.F r Z ",
"@ *.$ $ 1 _ =.-.; ;.>.,./ $ $ '.",
"@ ) $ # 1 : ,.).$ ,.=._ 1 1 $ ) ",
"@ ) $ / 1 / ,._ $ !.,./ 1 1 $ ) ",
"@ ) . / 1 / _ * $ $ _ / 1 1 / ) ",
"@ ) ,.,._ _ _ $ $ $ _ _ _ ,._ - ",
"@ ) $ $ $ $ r $ $ $ $ $ $ $ $ ) ",
"@ ) $ $ $ $ $ $ $ $ $ $ $ $ $ ) ",
"@ ) $ $ $ $ ~.$ $ $ $ $ $ $ $ - ",
"@ {.{.{.{.{.{.{.{.{.{.{.{.{.{.{."};

BIN
doc/misc/BitchX.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
doc/misc/BitchX.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

23
doc/misc/Sfbx.ans Normal file
View File

@@ -0,0 +1,23 @@
[?7h<34> <20><39> <20><30><36><31><6D>
<34><31> <34><31><6D><EFBFBD><EFBFBD><EFBFBD> <34> <20><31> <20> <20> <34> <31><6D><EFBFBD><EFBFBD> <34><31><6D> <20><34><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<36><37><6D><30><36><34><6D><EFBFBD><36><34> <20><><EFBFBD><EFBFBD><EFBFBD> <34> <31><6D><EFBFBD> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <34> <31><6D> <20> <34> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20>߱<33><6D><37> <20><34><31><6D><EFBFBD><36> <34><6D><36><34><35><36><34> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <34><31><6D><EFBFBD><36><34> <20><34><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20>߱<33>߱<6D><DFB1><EFBFBD> <34><30><6D><EFBFBD> <20><><34> <31><6D> <34> <20> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><34> <20> <31><6D>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20><37><33><37><6D><30><37><6D>߲<EFBFBD><30><37><34><30><6D><EFBFBD><34> <20> <20><31><31><6D><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20><37><33><37><31>ܲ<6D><DCB2><EFBFBD><34><30><6D><36><34> <31> <34><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><38>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD>۱<EFBFBD><DBB1><EFBFBD><EFBFBD><EFBFBD>
<20><37><33><6D><EFBFBD><37><6D><33> <31><37><6D><EFBFBD><34><31><6D><EFBFBD><EFBFBD><37><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD>۱<EFBFBD><DBB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> <33><37><33>۰<34><30><37><30> <30><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD>۱<EFBFBD>
<20> <33> <32><33><33><30><31><34> <20> <37><30><31><6D><EFBFBD><30><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD>۱<EFBFBD>
<20> <33> <33><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><32><33><30><34> <31> <20> <20> <30> <30> <30><31><31><30><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>۱<EFBFBD>
<20> <33><31><31> <32><6D><33><6D><EFBFBD><30><31><34><30><37><6D>ܱ<30> <30><30><30><31><31><43><30><6D><EFBFBD><EFBFBD><EFBFBD>۱ <20><33><31> <20><>۱<EFBFBD>
<EFBFBD><EFBFBD>۲<EFBFBD><32><6D><33><6D><31><30> <30><31><34> <30><37><6D>߲<30> <34> <37><31><31><30><6D><EFBFBD><EFBFBD> <30> <33> ۱<6D>
<20> <33> <33><31><32> <33><6D><30><6D><33><31><6D> <37><30>ܱ<34><31><6D><EFBFBD><EFBFBD><EFBFBD><30><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><43>
<31> <33> <31><33><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><32><32><32><32><6D><EFBFBD><EFBFBD><EFBFBD><33> <37><6D><30><37><32><31><6D><EFBFBD><EFBFBD><31><6D><EFBFBD><EFBFBD><30> <33><6D><36><43> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D>
<31> <33> <20><33><30> <32><6D><32>߰<6D><DFB0><EFBFBD> <31><32>۰ <37> <30><37><30><6D><31><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30> <33><6D><31><6D> <33> <31><6D><EFBFBD><EFBFBD> <31><6D><30>
<31> <33><32><33> <30> <31><32><30><6D> <20><><EFBFBD> <32><32><31> <37><30><6D><37><30> <32><32><31><30><31><30><6D> <31><6D><33> <31><6D>۱ <20><33><31>
<20> <33><33><32><31><43><30> <20><32><33><31><30> <32><6D><31> ܰ۲<33><6D><32><31><6D><31><33>ܱ<30> <31><6D><EFBFBD><33><31> <20><><EFBFBD><EFBFBD>ܱ <33> <31><6D>
<20> <32><33><32> <30><32><33> <32><33><32><33> <32>߰<31><33> ܱ<30><6D><33><32> <33><6D><31><30><31><31><33><31><30><6D> <20><><EFBFBD> <31><6D> <20> <20><><33> <31><6D><EFBFBD><EFBFBD><EFBFBD>۲ <33> <31><6D>
<20> <32><31> <30><6D><EFBFBD><32><31><30><6D><EFBFBD><31><32>߰<6D><33><31> <33><30><6D><33><6D> <32><6D><31><6D><30><6D><EFBFBD><31><30><6D><31><6D><EFBFBD><30> <31><6D> ۱<><DBB1><33><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><33> <31><6D>
<35><33><31><6D><EFBFBD><EFBFBD><30><6D><EFBFBD><EFBFBD><32><30>߰<31><6D><33><31> ߱<30><30><33><32><6D><32><31><6D><30><6D> <31><33><6D><EFBFBD><EFBFBD><EFBFBD><31><6D> <33> <20> <31><6D><EFBFBD><EFBFBD><33><31>
<37><43><33><31><6D><EFBFBD><EFBFBD><30><6D><31><6D><EFBFBD><EFBFBD><33><31> <33><30><30><33><32><31><6D><EFBFBD><30><6D>sortof!*<31><33><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D><EFBFBD><EFBFBD>
<30><43><33><31><6D><EFBFBD><EFBFBD><33><31><6D><33><30><6D><EFBFBD><EFBFBD><33><32> <20><31><6D>

BIN
doc/misc/bitch52.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

342
doc/misc/bitch52.xpm Normal file
View File

@@ -0,0 +1,342 @@
/* XPM */
static char *bitch52[] = {
/* width height num_colors chars_per_pixel */
" 52 52 254 2",
/* colors */
".. c #080808",
".# c #101010",
".a c #181818",
".b c #212121",
".c c #292929",
".d c #313131",
".e c #393939",
".f c #424242",
".g c #4a4a4a",
".h c #636363",
".i c #6b6b6b",
".j c #737373",
".k c #7b7b7b",
".l c #848484",
".m c #8c8c8c",
".n c #949494",
".o c #9c9c9c",
".p c #b5b5b5",
".q c #bdbdbd",
".r c #312929",
".s c #b5ada5",
".t c #adada5",
".u c #84847b",
".v c #cecebd",
".w c #a5a594",
".x c #949484",
".y c #c6c6ad",
".z c #9c9c84",
".A c #84846b",
".B c #212118",
".C c #525239",
".D c #181810",
".E c #636339",
".F c #7b7b39",
".G c #101000",
".H c #181800",
".I c #6b7339",
".J c #c6d663",
".K c #637300",
".L c #949c6b",
".M c #637310",
".N c #8ca510",
".O c #293100",
".P c #d6deb5",
".Q c #c6cea5",
".R c #adb58c",
".S c #a5ad84",
".T c #8c946b",
".U c #737b52",
".V c #a5b55a",
".W c #8c9c4a",
".X c #cee763",
".Y c #849439",
".Z c #bdd652",
".0 c #9cb529",
".1 c #849c21",
".2 c #b5d618",
".3 c #7b9408",
".4 c #212900",
".5 c #425200",
".6 c #4a5a00",
".7 c #637b00",
".8 c #6b8400",
".9 c #deef9c",
"#. c #bdce7b",
"## c #cee773",
"#a c #738431",
"#b c #94ad31",
"#c c #849c29",
"#d c #7b9421",
"#e c #84a500",
"#f c #a5ce00",
"#g c #bdce84",
"#h c #b5d642",
"#i c #7b9429",
"#j c #526318",
"#k c #738c21",
"#l c #6b8418",
"#m c #637b10",
"#n c #394a00",
"#o c #526b00",
"#p c #adb594",
"#q c #a5ad8c",
"#r c #a5c642",
"#s c #526b08",
"#t c #4a6300",
"#u c #8cbd00",
"#v c #94c600",
"#w c #c6de84",
"#x c #8ca54a",
"#y c #b5d65a",
"#z c #4a5a21",
"#A c #bde74a",
"#B c #a5ce39",
"#C c #9cce21",
"#D c #7ba508",
"#E c #7bad00",
"#F c #94ce00",
"#G c #9cad73",
"#H c #7b8c52",
"#I c #94ad5a",
"#J c #a5c65a",
"#K c #5a7321",
"#L c #8cb531",
"#M c #bdff29",
"#N c #6b9410",
"#O c #425a08",
"#P c #395200",
"#Q c #73a500",
"#R c #bdde7b",
"#S c #9cbd5a",
"#T c #adde4a",
"#U c #ade731",
"#V c #84b521",
"#W c #adef29",
"#X c #94ce18",
"#Y c #4a6b08",
"#Z c #213100",
"#0 c #639400",
"#1 c #7b944a",
"#2 c #84b529",
"#3 c #6b9c10",
"#4 c #395208",
"#5 c #314a00",
"#6 c #7b846b",
"#7 c #73a521",
"#8 c #9cde29",
"#9 c #294200",
"a. c #528400",
"a# c #639c00",
"aa c #9cd642",
"ab c #9cde39",
"ac c #73a529",
"ad c #84c621",
"ae c #426b00",
"af c #4a7b00",
"ag c #5a9400",
"ah c #73bd00",
"ai c #7bb529",
"aj c #527b18",
"ak c #7bbd21",
"al c #213900",
"am c #528c00",
"an c #5a9c00",
"ao c #8cd631",
"ap c #4a7318",
"aq c #5a8c18",
"ar c #6bad18",
"as c #848c7b",
"at c #8cce42",
"au c #84ce31",
"av c #396b00",
"aw c #63bd00",
"ax c #84c642",
"ay c #6ba531",
"az c #081000",
"aA c #4a9400",
"aB c #7b8c6b",
"aC c #7bb542",
"aD c #102100",
"aE c #5ab500",
"aF c #7b8473",
"aG c #7bce31",
"aH c #5a9c21",
"aI c #397308",
"aJ c #84c652",
"aK c #426b21",
"aL c #396318",
"aM c #6bbd29",
"aN c #296300",
"aO c #639442",
"aP c #7bc64a",
"aQ c #294218",
"aR c #5a9c31",
"aS c #529429",
"aT c #398408",
"aU c #317b00",
"aV c #6b9452",
"aW c #73ad52",
"aX c #63ad39",
"aY c #427b21",
"aZ c #295210",
"a0 c #214a08",
"a1 c #215a00",
"a2 c #63944a",
"a3 c #6bb542",
"a4 c #214210",
"a5 c #8c9c84",
"a6 c #293921",
"a7 c #6bad4a",
"a8 c #63a542",
"a9 c #081800",
"b. c #103100",
"b# c #216300",
"ba c #297b00",
"bb c #6ba552",
"bc c #4aa521",
"bd c #216b00",
"be c #637b5a",
"bf c #4a9c29",
"bg c #296b10",
"bh c #738c6b",
"bi c #84b573",
"bj c #6b9c5a",
"bk c #102908",
"bl c #104200",
"bm c #428431",
"bn c #216310",
"bo c #104a00",
"bp c #6b8c63",
"bq c #426b39",
"br c #5a8452",
"bs c #527b4a",
"bt c #083900",
"bu c #e7efe7",
"bv c #adb5ad",
"bw c #737b73",
"bx c #5a635a",
"by c #424a42",
"bz c #6b7b6b",
"bA c #395239",
"bB c #102110",
"bC c #397b39",
"bD c #081808",
"bE c #000800",
"bF c #c6cece",
"bG c #ced6d6",
"bH c #737b7b",
"bI c #4a5252",
"bJ c #424a4a",
"bK c #394242",
"bL c #101818",
"bM c #94a5ad",
"bN c #a5b5bd",
"bO c #9ca5ad",
"bP c #5a636b",
"bQ c #a5adb5",
"bR c #636b73",
"bS c #4a525a",
"bT c #081829",
"bU c #737b8c",
"bV c #7b849c",
"bW c #8c94ad",
"bX c #848ca5",
"bY c #737b94",
"bZ c #73737b",
"b0 c #7b7b84",
"b1 c #52525a",
"b2 c #5a5a63",
"b3 c #42424a",
"b4 c #6b6b7b",
"b5 c #73738c",
"b6 c #000008",
"b7 c #000000",
/* pixels */
"bx.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.gbx",
".hbx.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.fbx.n",
".h.ibx.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.fbx.n.o",
".h.h.h.db7b7b7b7b7b7b7...........#.#.a.B.b.c.r.d.e.e.f.f.g.gbIb1bIbIbJb3bK.e.d.r.c.b.b.B.a.D.#.G.e.m.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7.......#.#bL.a.b.b.c.d.d.e.fb3.gbIb1b2bRb2b1bIbJ.f.e.e.d.c.b.b.B.a.D.#.G.f.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b6.......#.#.a.a.b.c.r.d.ebKb3bIb1bPbRb4b4bRbPb1bIb3.f.e.d.r.c.b.B.a.D.#.#.f.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7.........#.#.a.a.b.c.d.d.e.f.gb1bPb4b5bYbVbUb4bPb1bI.f.e.e.d.c.b.b.B.D.D.#.f.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b6.......#bL.a.b.c.d.e.fb3bIb2b4bYbXbMbObWbYb4bPbIb3.f.e.d.c.b.b.a.D.#.#.f.o.o.o",
".h.h.h.eb7b7.#.#.#.#bL.a.a.a.a.b.b.c.c.d.d.e.e.f.gb1bRb5bXbNbGbFbQbXbUbRb2bI.g.f.f.e.d.r.c.c.c.#.f.o.o.o",
".h.h.h.eb7b7bI.l.k.k.k.k.k.k.k.k.k.k.k.k.k.k.f.f.gb1bRbYbMbGbu.n.l.l.lb0.k.k.k.k.k.k.k.k.k.kbx.#.f.o.o.o",
".h.h.h.eb7b7...i.l.l.l.l.l.l.l.l.l.l.l.l.l.l.ibK.gb1b4bYbMbGbv.k.k.u.l.l.l.l.l.l.l.l.l.k.l.i.a...f.o.o.o",
".h.h.h.eb7b7b7.a.k.k.k.l.l.l.l.l.l.l.l.l.l.k.lbIb3b1bRbUbWbO.u.k.l.l.l.l.l.l.l.l.l.l.k.k.k.c...#.f.o.o.o",
".h.h.h.eb7b7b7b7.d.l.k.l.l.l.l.l.l.l.l.l.l.k.kbZbJbIbPb4bV.l.k.k.l.l.l.l.l.l.l.l.l.l.k.l.e.#.#.#.f.o.o.o",
".h.h.h.eb7b7b7b7b7.f.l.k.l.l.l.l.l.l.l.l.l.k.k.lbPb3bSbPb0.u.k.k.l.l.l.l.l.l.l.l.k.k.l.g.#.#.#...f.o.o.o",
".h.h.h.eb7b7b7b7b7b7bI.l.k.l.l.l.l.l.l.k.k.k.k.k.lbIb3bP.l.k.k.k.k.k.l.l.l.l.l.l.k.lbx.abL.#.#...f.o.o.o",
".h.h.h.eb7b7b7b7b7b7.#.i.k.k.l.l.l.k.k.k.k.k.j.j.k.jbJ.k.k.j.j.k.k.k.k.k.l.l.l.k.k.i.b.a.a.#.#...f.o.o.o",
".h.h.hbAb7b7b7b7b7b7b7.a.k.k.k.k.k.k.k.k.j.j.j.j.j.k.j.k.j.j.j.j.j.k.k.k.k.k.k.k.j.c.a.abL.#.....f.o.o.o",
".h.h.hbCb7b7b7b7b7b7b7b7.d.lbwbwbHbwbw.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.k.k.j.k.k.e.a.abL.#.#.....f.o.o.o",
".h.h.hbmb7bEb7b7b7b7b7b7b7.gasbhbpbhbhbwbwbzbzbzbzbw.j.j.j.j.j.j.j.j.j.j.j.j.lbI.a.a.abB.#.#.....f.o.o.o",
".hbebrbfbobtbEb7b7b7b7b7b7bDbsa7aXa8aVbpbpbja7bbbjbhbw.j.j.j.j.j.j.j.j.j.j.lbxaQaZbgbna4bB......by.o.o.o",
".haOaLa0aDb.blbEbEbEbEb7bEaDa0bDa9azaKaWa2aQa4a4aLbjaF.kbwbwbwbzbzbzbwbw.k.ia6aZb.b.b.a0a0bD....bq.o.o.o",
".hayazb7b7b.aUboblblbta9azal#5bEb7b7apaxayb7b7b7alaCaBaFbwbhbjbjbjbjbjbhbha6a4aIb7b7b7a0aTa0blb.bm.n.n.o",
".haiaDb7b7#9aEbaa1b#bda1b.alaf#0#E#DakauarbEb7b7#9aGbjbhaWa3aRaYaYaYaSaXaYa4aZafbEb7b7aeawaUb#a1bcbia5.o",
".haiaDb7b7aD.4b7b7b7azblaNaNavazazazaqaraDb7b7b7azalaCaPaKbkb7b7b7b7b7a9blaIaIa.bEb7b7.O#9bEb7b7aDaRbi.o",
".haiaDb7b7b7b7b7b7b7b7b7a1aAaeb7b7b7aq#3b7b7b7b7b7azaoajb7b7b7b7azb7b7b7b7alaAambEb7b7b7b7b7b7b7b7.GaJ.o",
".haiaDb7b7az#o#e#oazb7b7azanamb7b7b7a.#X#sb7b7b7.4#N#C.Gb7b7az.3.2.N.4b7b7b7afanbEb7b7b7#5.6.Gb7b7b7ai.o",
".haiaDb7b7#5#v#Q#F.5b7b7b7ag#0b7b7b7#m#U#Cazb7b7#4#M#Vb7b7b7#O#W#r#B#C#u#u#QagagbEb7b7#n#f#f.7b7b7b7ac.o",
".haiaDb7b7#9awaAah#5b7b7b7a#a#b7b7b7ajab#2bEb7b7#5#U#Vb7b7b7#4#UaJat#7#Yae#Pafa#bEb7b7#t#Q#0.7b7b7b7#7.o",
".h#2aDb7b7bEavaAavbEb7b7az#Q#0b7b7b7ajaa#LbEb7b7.4ad#8.Gb7b7azaqaMaH.Gb7b7b7afa#bEb7b7#Pa.ae#tb7b7b7#7.o",
".h#2.Gb7b7b7b7b7b7b7b7b7#P#Qa.b7b7b7aj#T#Lb7b7b7b7az#U#mb7b7b7b7bEb7b7b7b7#Za#agbEb7b7#5afavaeb7b7b7ac.o",
".h#L.Gb7b7.O.4b7b7b7az.5#0af#sb7b7b7#K#J#J#jb7b7b7b7#T#A#l.Hb7b7b7b7b7az#O#b#m#tazb7b7#5ae#5#Pb7b7b7ay.o",
".h#1#c.3.K.3#e.K.6#t.8.8#5#z.W#k.1#i#x#G#G#y#b#k#l.Y#R#w.X#h#d.M.M.M#l.0#B#I#H#O.6.7.K.5.O#Z#P#t.3#b#S.o",
".h.U#H#c.5.5.5#o.K.K.5.4.4#6.T#I.V.V#G.z.w.R#.####.9.P.v.Q#g.J.J#y.Z#y.V.L.Aas.U#n.6.5.O.Gaz.4#5#c#G.S.o",
".h.i.h#ab7.G.G.G.H.Gaz.G.i.uaFasas.x.x.o.w.t.s.y.y.w.o.t.v.q#p#p#q.z.xa5.m.uaF.u.Cazazazb7b7azb7.I.o.o.o",
".h.h.h.Fb7b7b7b7b7b7b7bx.l.j.k.u.l.m.m.n.o.t.s.q.o.ibI.kbv.qbv.t.o.n.m.m.l.k.k.k.u.db7b7b7b7b7b7.E.o.o.o",
".h.h.h.Cb7b7b7b7b7b7.f.l.j.j.k.k.l.l.m.n.o.tbv.o.l.fb7.i.l.pbv.o.o.n.m.l.l.k.k.j.k.l.bb7b7b7b7b7.f.o.o.o",
".h.h.h.eb7b7b7b7b7.d.l.j.j.j.k.kb0.l.m.m.n.o.t.l.h.Gb7.c.k.mbv.o.n.m.m.l.k.k.k.j.j.k.j.#b7b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7b7.c.l.k.j.j.j.j.k.k.l.l.m.n.o.m.k.Bb7b7b7.g.l.n.o.n.m.l.l.k.k.j.j.j.j.l.h..b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7.#.k.k.j.j.j.j.j.k.k.k.l.m.n.m.l.eb7b7b7b7...i.l.o.m.m.l.k.k.k.j.j.j.j.j.lbIb7b7b7.e.o.o.o",
".h.h.h.eb7b7b7.i.l.j.j.j.j.j.j.j.k.k.l.l.m.l.hb7b7b7b7b7b7.b.l.l.m.l.l.k.k.j.j.j.j.j.j.j.l.eb7b7.e.o.o.o",
".h.h.h.eb7b7bx.l.j.k.j.j.j.j.j.j.k.k.l.l.l.k.Bb7b7b7b7b7b7b7.g.l.l.l.k.k.k.j.j.j.j.j.j.j.k.k.cb7.e.o.o.o",
".h.h.h.eb7.f.l.k.k.k.k.j.j.j.j.j.j.k.k.k.l.fb7b7b7b7b7b7b7b7.#.j.l.k.k.j.j.j.j.j.j.j.k.k.k.k.k.a.e.o.o.o",
".h.h.h.e.d.m.m.m.m.m.m.m.l.l.l.l.l.l.l.l.hb7b7b7b7b7b7b7b7b7b7.c.l.l.l.l.l.l.l.l.l.m.m.m.m.l.m.j.f.o.o.o",
".h.h.h.e.d.f.e.e.e.e.e.e.e.e.e.e.e.e.e.f.ab7b7b7b7b7b7b7b7b7b7b7.d.f.e.e.e.e.e.e.e.e.e.e.e.e.e.fbx.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7aza6b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7...ab7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7.e.o.o.o",
".h.h.h.eb7b7b7b7b7b7b7b7b7b7b7b7b7b7b6bTb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7.f.o.o.o",
".h.h.kbv.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.t.o.o",
".h.k.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.t.o",
".k.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.t"
};
SIMPLE = T BITPIX = 8 NAXIS = 2 NAXIS1 = 52 NAXIS2 = 52 HISTORY Written by XV 3.10a END {<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>c{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>cc{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ccc9B<EFBFBD><EFBFBD><EFBFBD>ccc99<EFBFBD><EFBFBD><EFBFBD>ccc99<EFBFBD><EFBFBD><EFBFBD>ccc99<EFBFBD><EFBFBD><EFBFBD>ccc9
/9<EFBFBD><EFBFBD><EFBFBD>ccc91B9999999999999B1B9999999999999B^<EFBFBD><EFBFBD><EFBFBD>ccc91<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>c)<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>sB<EFBFBD><EFBFBD><EFBFBD>ccc9B<EFBFBD>{{{{ssssss{{{<EFBFBD>Bs<EFBFBD>{{sssssss{{{{{9<EFBFBD><EFBFBD><EFBFBD>ccc9^<EFBFBD>s{ssssss{{<EFBFBD><EFBFBD><EFBFBD>{J<EFBFBD><EFBFBD><EFBFBD>{{{sssssss{{)9<EFBFBD><EFBFBD><EFBFBD>ccc9k<EFBFBD>sssssss{{<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c!<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{sssssss<EFBFBD>99<EFBFBD><EFBFBD><EFBFBD>ccc9{{sssss{{{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9k<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{{sssss<EFBFBD>O9<EFBFBD><EFBFBD><EFBFBD>ccc9)<EFBFBD>{ssss{{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{J<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{ssss<EFBFBD>c9<EFBFBD><EFBFBD><EFBFBD>ccc91<EFBFBD>sss{{|<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>c
){<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{{ss{s9<EFBFBD><EFBFBD><EFBFBD>cccNB<EFBFBD>ss{{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Bk<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{s{<EFBFBD>!B<EFBFBD><EFBFBD><EFBFBD>cccp^<EFBFBD>s{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>kO{<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{{{<EFBFBD>1\<EFBFBD><EFBFBD><EFBFBD>ckcq

k<EFBFBD>~<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¢<EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~<EFBFBD>N
g<EFBFBD><EFBFBD><EFBFBD>cq}<EFBFBD>???Q[[?}<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>q8F?&
5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>u[u[FJff5K<EFBFBD>r<EFBFBD>z<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>rj<EFBFBD><EFBFBD><EFBFBD>ɳy^^^j<EFBFBD><EFBFBD><EFBFBD>}DF_[?&#<Ju<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>
&
?lVR]<EFBFBD><EFBFBD>Q<EFBFBD><EFBFBD>j
D<EFBFBD>bJ
5L5<~<EFBFBD>c<EFBFBD>
<z^]<EFBFBD><EFBFBD>
<EFBFBD>b#ph5VIL<EFBFBD><EFBFBD>c<EFBFBD>IcI
zl]<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
h<EFBFBD>r
Vp<^LJ<EFBFBD>c<EFBFBD>/<EFBFBD>c<EFBFBD>5pp]<EFBFBD><EFBFBD>5<EFBFBD><EFBFBD>=<EFBFBD><EFBFBD><EFBFBD>PL<VpJzl_<EFBFBD>c<EFBFBD>5<EFBFBD>z<EFBFBD>?hlb<EFBFBD><EFBFBD>
=ƍD<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>zhh8<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>c<EFBFBD>
QQ
lb^<EFBFBD>Rq<EFBFBD>
u<EFBFBD><EFBFBD>Vl5F

9
doc/misc/bitchx.asc Normal file
View File

@@ -0,0 +1,9 @@
.sssSS$$s.s$$$$$$ $$sss.. s$$$^`$ss. $$$$$s s$$$$ .s$$$$$s s$s
.$$$$$' `$$$ $$$$$$ $$$$$$$$$s $$' `$$$$s $$$' `$$$ $$$$$$$' s$$'
s$$$$' `$s $$$$ $$' $$$ $$$ $ d$$$$s $$ $$$ `$$$$' s$$'
$$$$$sss..ssS$'s$$$'s$' .$$' `$$ $ d$$$$$'s$$sssss$$$ $$$s`$$ s$'
$$$$$$$^^^^$$s $$$$ $$$ s s$ s$$$ $$$ $$$$s`$$s' by
$$$$' `$$s $$ $$$s $$$$$ ..sSb $$ $$$ s$`$s panasync
$$$' $$$s $ .$$$$ `$$$$ d$$$$$$ $$$ $$$ .$' `$s.
$$$s. .s$$$$ $$ .$$$$$ `$$$$s. $$$$$$ $$$s $$$ s$ `$$$$s
`$$$$Xavier$$$$$'s$$s $$$$$$s `S$$sss$$$$$'s$$$$$ s$$$ s$$s `$$$'

BIN
doc/misc/bitchx.xpm Normal file

Binary file not shown.

22
doc/misc/lutkax.ans Normal file
View File

@@ -0,0 +1,22 @@
<34>
<34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><34><34><6D><EFBFBD>ܲ<EFBFBD><34>
 <20> <20><><EFBFBD> <34><34><6D><EFBFBD><34><6D><34><6D><34><6D><EFBFBD><EFBFBD> <34><6D><EFBFBD><EFBFBD> <20><35><35> <34><6D><EFBFBD> <34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <34><6D> ۲<6D> <34><6D><EFBFBD> ܲ  <20><35>ܰ 
 <20><35><6D><EFBFBD><EFBFBD><35><6D> <34><34><6D><EFBFBD><34>۲ <20><35><6D><EFBFBD><EFBFBD><35><6D> ߲<35><6D><35><6D><35><35> <34><34><34> <20><> <34><6D>ܲ <34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><34><34><6D> <34> <20><><EFBFBD><EFBFBD>۱<EFBFBD> 
 <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35> <34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><31>۲<6D><DBB2><35><6D><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <34><6D><34><6D><34><6D><34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <34> <34><6D><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><35>۲<6D>  
 <20><35>۲<EFBFBD><DBB2><35> <34> <31><6D><EFBFBD><35> <34><34><34><35><35> <20><> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <34><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><35><35><6D><35><6D><EFBFBD><35><6D><EFBFBD> 
 <35><6D><EFBFBD><EFBFBD>۱<35><35><6D><EFBFBD>۱<EFBFBD><DBB1><EFBFBD> <34> <20><><35><35><6D><EFBFBD><35><6D><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><6D><EFBFBD> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><6D><EFBFBD>۲<EFBFBD> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><6D><35><6D><35><6D> 
<35><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30> <20><35><6D><EFBFBD><35><6D><EFBFBD> <20><><35><6D><35><6D> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35><6D><EFBFBD> <34> <20> <35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <20><><35><35><6D><35> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35> <20><><35><6D><EFBFBD><35>
޲<35><6D><EFBFBD><EFBFBD><EFBFBD><30><34><6D><35><35><6D><35><35><6D><35> <20><35><6D><EFBFBD><EFBFBD><35> <20>۲<6D><DBB2><EFBFBD> <35><35><6D><EFBFBD><EFBFBD><35><35><6D><35><6D><EFBFBD><EFBFBD><EFBFBD> <34><6D> <20><><EFBFBD> <35><6D><EFBFBD><EFBFBD>۲ <34> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35> 
<35><6D><35><6D><EFBFBD><EFBFBD><EFBFBD><35>ܲ<35><6D><35><6D><EFBFBD><35>߲<35><6D><EFBFBD>۲<35> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35> <20><><35><35><35><6D><35><6D><EFBFBD><35><6D><EFBFBD><EFBFBD><30> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <20><35><6D><EFBFBD>۱<35>
<35><6D><EFBFBD><35><6D><EFBFBD><35><35><6D><35><35><6D><35><6D><EFBFBD><EFBFBD> <35><6D><EFBFBD><EFBFBD><EFBFBD><35> <20><35><6D><35><35><6D><EFBFBD><35><6D><35><6D><EFBFBD>ܲ<EFBFBD><35> <20><><35><6D><EFBFBD><35><6D><EFBFBD><EFBFBD><EFBFBD><35><6D><35><6D> ߲<35><6D><EFBFBD><EFBFBD><35> <20><35><6D><EFBFBD><EFBFBD><EFBFBD>
 <35> <20><> <20> <20><><35><35><6D><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><35><6D><EFBFBD> <35> <35><6D><EFBFBD>߲<EFBFBD><DFB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>drc <20><> <34> <34><6D><EFBFBD> <34><6D> <35>ܰ<EFBFBD><DCB0><30><6D><EFBFBD><35><35> <34>  <20> <20><35><6D><35> <34><6D><EFBFBD><EFBFBD><EFBFBD> <34> <34> <34><34><34> 
<34><6D><EFBFBD><EFBFBD> <35><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۱<35> <34> <20><35><6D><EFBFBD><EFBFBD>۲<35> <34><6D>ܰ<6D><DCB0><EFBFBD><EFBFBD>
<34><6D><EFBFBD><EFBFBD><34><34> <35><6D>۲<EFBFBD><DBB2><EFBFBD><EFBFBD><35> <34><6D><35><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <34><6D><EFBFBD> <34><6D><34>
<34><34> <34><6D><EFBFBD> <20><> <20><><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <34> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35> <34> <34> <34><6D>
 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><35><6D><EFBFBD><35><35><35><6D> <20><35><6D><EFBFBD><EFBFBD><EFBFBD><35><35> <34>  <20>
<34> <34><6D><EFBFBD> <20><><EFBFBD><35><6D><EFBFBD><35><35><35><35><6D><EFBFBD><EFBFBD><35> <34>
<34><34> <31><35><6D><EFBFBD><EFBFBD><EFBFBD><35>߰<35><30><6D><35><6D><EFBFBD><EFBFBD><30><6D> 
   <31>۲<6D><DBB2><EFBFBD><EFBFBD><35><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><30><34>
<35><6D><EFBFBD>۲<EFBFBD><DBB2><EFBFBD><EFBFBD> <34><6D> <31><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<35><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><35><35><33><35><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۲<30>
<35><31><6D><EFBFBD><EFBFBD><35><31><35><6D><31><6D><35><6D>

14
doc/misc/pandur.ans Normal file
View File

@@ -0,0 +1,14 @@

  
<31>ܲ    <31><6D><31> <20><><EFBFBD><EFBFBD> b i t c h x
<31><6D><EFBFBD><EFBFBD> <20><>  ܲ<6D><DCB2> <20><><EFBFBD>   <31>ܲ<EFBFBD><DCB2><31><6D><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>   'a modern client
<31><6D><EFBFBD><EFBFBD><EFBFBD> <31><6D>  <31><31><30>  <20><31><6D><EFBFBD><31> <31><31><6D>   <31><6D> <20>   for an 
 <20><><31><6D><31> <31><31>  <31><6D>  <20><><EFBFBD>޲<31>   <31><6D>  <31><37> <31><6D><EFBFBD><EFBFBD><31><6D><EFBFBD><EFBFBD> <20><><31>  <31> old  <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <31><6D><31> <20><>   <20><31><6D>ܲ߰<31><31> <31><6D><31><31> <31><37><6D><EFBFBD><EFBFBD><31><31><6D> <31><6D><31>  world`  <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <31><6D><EFBFBD> <20><>  <31> <20><31><6D><37><6D><31><6D><31><6D> <31><31> <20><31><31> <31><6D><30><31><6D><EFBFBD><31><6D><31> <31> <31><6D><31>    <20><><EFBFBD><EFBFBD><31><6D>
<31><31><6D> <20> <37><6D><31><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D><EFBFBD><37><30><6D><EFBFBD><31> <20><><31><6D><30> <20><31><6D><EFBFBD><31> <20><37><6D><31> <31><31><6D><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>  <20> <20><><EFBFBD><EFBFBD><EFBFBD><30><31><31><6D> <20><31><6D>
<31><31><6D><EFBFBD> <31><37><6D><EFBFBD><EFBFBD><EFBFBD><31><6D><31><31><31><6D><EFBFBD><EFBFBD><EFBFBD><31><31><37><6D><31><31> <20><31><30> <31><6D> <20> <20><31><37><6D><31> <31>  <20><31><6D><31><6D><37><31><6D><EFBFBD><37><31><6D><EFBFBD><31><6D><EFBFBD><EFBFBD> <20> <20><><31><6D><31><31><6D><37><31><31> <20><31>
<31><6D><EFBFBD><31> <31><37><6D><31><31> <20> <20><><EFBFBD><31><37><31><6D><31>  <20><31><6D><31> <20><31> <20><31> <20> <31><6D><EFBFBD><31> <31><31><31><37><6D><EFBFBD><31><30><31><31><30><31><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><31><6D><EFBFBD><31>  <20><31><37><31> <31>
<31><6D><EFBFBD><31> <20><37><31> <20> <20> <20><37><6D><31> <20><31><6D> <20><31> <20><31><31><6D><EFBFBD><EFBFBD><31><6D><EFBFBD><31> <31><37><6D><31><31> <20><31><6D><EFBFBD><31><6D><EFBFBD><31><31> <31><6D><EFBFBD> <20> <31><6D><31><6D> <20><31><6D><31> <20><37><31> <31><6D> <31> <20><31><31> <20> <20> <31><37><6D><31> <20><><31> <20><31> <20><31><6D><EFBFBD><31> <31><6D><31><31> <31><37><31><31> <20><31><37><6D> <20><31>۲<31><6D><EFBFBD> <31> <31> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><31><6D> <31><6D><31><6D>  <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><31><31><6D><EFBFBD><31> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <31><37><6D>۲<6D> <31><6D><EFBFBD> <31><31><6D><31> <31><37><31><31> <20><31><6D> <31><6D> <31> <31><31><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <31><6D><31><6D><31> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D><EFBFBD><30><31> <20><><EFBFBD><EFBFBD><EFBFBD> <20><31><6D><EFBFBD> <31><37><6D>۰ <31><31><6D><EFBFBD> <20><31><6D><31> <20><31><31><30><31><31><31><6D>  <31><6D> <31> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D> <31><6D><EFBFBD> <20><><37><6D><31><31> <20><31><6D><31><6D><31><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><31><6D><EFBFBD><EFBFBD><EFBFBD> <31> ۰ <37><6D><31><6D><EFBFBD><31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><31><31><6D><EFBFBD><EFBFBD> <31><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><31><6D> <31><6D><EFBFBD><EFBFBD><EFBFBD>
<31><37><6D><31>۲<EFBFBD><31><6D><EFBFBD><EFBFBD><37><6D><31><6D><31><6D><EFBFBD><EFBFBD><31><6D><EFBFBD><EFBFBD><EFBFBD><37><6D><EFBFBD><EFBFBD><EFBFBD><31> <31> ۲  <20><><EFBFBD>۲<6D><DBB2><EFBFBD><EFBFBD><EFBFBD><31><6D> <20><><31><6D><EFBFBD><EFBFBD><EFBFBD> x <31><6D><31><37><6D><EFBFBD> <31> <31><6D><37><6D><EFBFBD>
<37> <31>    <20><><EFBFBD><EFBFBD> <20><>   <20> pandur  <31>  
 
 

401
doc/pana-docs/pana-docs.txt Normal file
View File

@@ -0,0 +1,401 @@
ircII 2.8 + BitchX Documentation
Patrick J. Edwards, ppjjee112200@@ccss..uussaasskk..ccaa
Tue Feb 13 13:50:47 GMT 1996
11.. IInnttrroodduuccttiioonn
BitchX is a new and exciting IRC client being written by Colten
Edwards <hhttttpp::////mmaaiillttoo::eeddwwaacc@@ssaasskknneett..sskk..ccaa>. It includes many new
features that IRCists have been asking for. The sources are based on
ircii-Plutotium and ircii-EPiC to create a new and distictive IRC
client. Heres a small list of the cool features you get with BitchX:
+o When run under Linux, BitchX has an added bonus of being in full
color.
+o Friends, Shit, and Bot Lists built in.
+o Built in Link Looking, incase you into split servers.
+o Millisecond accuracy on a ping.
+o Several new functions for scripters to use, and a few new
variables.
+o Extended set of DCC commands and options, like auto-getting,
queues, public offers, and graphical displays.
+o A more logical command set, like /W for /WHO and /WI for /WHOIS.
+o Mass functions, like mass ban, mass op, etc.
+o And tons of other commands, like /RESET and /MESG, incase your not
very popular on IRC.
You may be thinking great. But I get all that functionality from a
script, or you maybe thinking BitchX is a script. Well, read on for
more of an explanation of what BitchX is all about.
First of all, its not a script. Secondly, when you load up a script
say Phoenix or LiCe it takes a long time to load. Plus you probably
have other scripts that you load. For example I used to load up to
100k of scripts. That 100k would take up alot of memory, and was slow
loading, and slow executing. BitchX doesn't have this problem. It has
all these commands loaded hard-coded into the syetem, and the
executable approximately the same size.
The bottom line is IRC load fast, it does everything fast, in less
memory.
Well, if you have read up to this point, and are thinking BitchX is a
good thing, you can get it from The BitchX Homepage
<hhttttpp::////wwwwww..ccss..uussaasskk..ccaa//uunnddeerrggrraaddss//ppjjee112200//bbiittcchhxx//>.
22.. NNeeww ccoommmmaannddss
22..11.. FFiixxeedd//CChhaannggeedd CCoommmmaannddss
These commands existed before in ircII, but now are either fixed or
changed in some way. Likely, in a better, more natural way.
DD Can be used for DESCRIBE.
II see INVITE.
IINNVVIITTEE
Now works like this, /I nick1 nick2 to the current channel, and
/I nick1 #channel1 nick2 channel2.
IIGG <<nniicckk>>
Ignore lamer by user@host.
IIGGHH <<nniicckk>>
Ignore lamer's whole host.
NNIIGG <<nniicckk>>
Unignore lamer.
JJ <<cchhaannnneell>>
For JOIN.
LL cchhaannnneell
For PART. If no argument is given the current channel is left.
MM <<nniicckk oorr cchhaannnneell>>
For MSG.
NN cchhaannnneell
For NAMES. If no argument is given the current channel is used.
TT ssttrriinngg
For TOPIC. If no argument is given it shows the topic on the
current channel.
SSCC cchhaannnneell
For NAMES. If no argument is given the current channel is used.
WW cchhaannnneellmmaasskk
Does a WHO. If no arguments are given it does a WHO on the
current channel.
WWII nniicckk
Does a WHOIS. If no arguement is given, a WHOIS is done on your
nick.
WWIIII nniicckknniicckk
Simular to WI.
WWWW nniicckk
Does a WHOWAS.
DDIIRRLLMM
Directs last message to the current channel.
DDIIRRLLNN
Directs last notice to the current channel.
22..22.. MMaassss CCoommmmaannddss
These are for doing mass operations on a channel.
MMOOPP cchhaannnneell ppaatttteerrnn
Mass op. Does a /MODE channel +o on all people.
MMDD cchhaannnneell ppaatttteerrnn
Mass deop. Does a /MODE channel -o on all people.
MMKK cchhaannnneell <<ppaatttteerrnn>> rreeaassoonn
Mass kick on non-ops matching pattern.
MMBB cchhaannnnee ppaatttteerrnn
Mass ban all non-ops.
MMKKBB cchhaannnneell <<ppaatttteerrnn>> rreeaassoonn
Mass kickban of all non ops matching pattern.
MMUUBB cchhaannnneell ppaatttteerrnn
Mass unban.
BBOOOOTT
See MULTI.
MMUULLTTII cchhaannnneell nniicckk11 nniicckk22 ...... nniicckknn ::rreeaassoonn
Kick multiple nicks off the channel with optional reason.
22..33.. BBaann//UUnnbbaann//KKiicckk//UUnnkkiicckk CCoommmmaannddss
Should you havethe chance to become an op on a popular channel, you
might need a few of these.
KK cchhaannnneell <<nniicckk>> rreeaassoonn
Kick nick from channel.
KKBB
BBKK
FFUUCCKKcchhaannnneell <<nniicckk>> rreeaassoonn
Kick and Ban nick from channel.
BB
BBAANN cchhaannnneell <<nniicckk>>
Ban nick from channel.
SSBB
SSBBAANN cchhaannnneell <<nniicckk>>
Ban nick's entire site from channel.
SSKK cchhaannnneell <<nniicckk>> rreeaassoonn
Site Kick and Ban nick.
DDBBAANN
UUBB cchhaannnneell nniicckk--ppaatttteerrnn
If no arguements are given all bans on the channel will be
removed.
22..44.. LLiisstt CCoommmmaannddss
Frequently, you may find people that you trust alot on IRC, these are
you friends. But even more frequently you'll find people on IRC are
annoying, so annoying that they deserve to be shitlisted. That's what
this whole section is about.
BBOOTT <<nniicckk>> <<cchhaannnneell>>
Add user as a bot to a channel. Channel can be a *.
UUNNBBOOTT <<nniicckk>> <<cchhaannnneell>>
Remove nick from the bot list.
AADDDDUUSSEERR <<nniicckk>> <<cchhaannnneell>> lleevveell aauuttoooopp pprroott ppaasssswwdd
Add nick to your personal friends list on channel. Level,
autoop, prot, and passwd are all optional, and default to
nothing, except Level, which defaults to 40. The following are
for the level.
2255 Enable ctcp invite and whoami.
5500++
Ops channel ops and and unbans.
9900++
Disable flood protection, plus Kick and Deop.
Autoop values are:
00 No ops.
11 10 second delay before oping.
22 instant autoop.
ootthheerr
does nothing.
Note that the user is not saved until a SAVELIST is issued.
UUNNUUSSEERR <<nniicckk>>
Deletes a user from the user list.
AADDDDSSHHIITT <<nniicckk>> <<cchhaannnneell>> <<lleevveell>> rreeaassoonn
Adds a user to the shit list.
UUNNSSHHIITT <<nniicckk>>
Removes a user from the shit list.
UUSSEERRLLIISSTT
Displays all users in the friends list.
SSHHIITTLLIISSTT
Displays all users in the shit list.
BBOOTTLLIISSTT
Displays all users in the bot list.
SSAAVVEELLIISSTT
Save the shit, friends, and bot lists. This saves the
information to the $(CTOOLZ_DIR)/BitchX.sav file.
SSAAVVEEAA
Saves information to the ..iirrccrrcc over writing it.
22..55.. MMiisscceellllaanneeoouuss CCoommmmaannddss
22..66.. DDCCCC CCoommmmaannddss
33.. NNeeww SSEETT ccoommmmaannddss
Along with the new IRC there are new options you can set.
AANNNNOOYY__KKIICCKK oonn||ooffff
Kick people for using bold, inverse, or beep on protected
channels.
AAOOPP oonn||ooffff
Set on if you want to automatically op people.
AAUUTTOOCCKK oonn||ooffff
Kicks people who send /xdcc * send.
AAUUTTOO__NNSSLLOOOOKKUUPP oonn||ooffff
Sets whether IP numbers are looked up on a /JOIN or /WHOIS.
AAUUTTOO__RREEJJOOIINN 00||11||22||33||44||55
Sets how you should auto rejoin if kicked from a channel. The
channel key is remebered.
00 off.
11 rejoin normally.
22 rejoin with a newuser name (the person's who kicked you).
33 rejoin with a random nick name.
44 rejoin with a random user name.
55 rejoin with a random user name and nick name.
CCHHEECCKK__BBEEEEPP__UUSSEERRSS oonn||ooffff
44.. NNeeww ffuunnccttiioonnss
Firstly the new functions:
$$aannnnooyy((tteexxtt))
Inserts random ^B, ^V, ^_, and makes random letters capitals.
$$cclluusstteerr((hhoossttnnaammee))
Makes aa.bb.cc into *.bb.cc format.
$$ccooooll((tteexxtt))
Makes ThInGs lOoK LiKe tHiS.
$$eelleeeett((tteexxtt))
Increases your eleetness.
$$ggeettkkeeyy((cchhaannnneell))
Shows the channel key.
$$ssttrriippaannssii((tteexxtt))
Strips ansi sequences from text.
$$uuppttiimmee(())
Display up time in Days, Hours, Minutes, Seconds.
$$ooppeenn((ffiillee RRWW||RR||WW TT||BB))
Opens a file descriptor.
$$rreeaadd((nnuummbbeerr))
Reads from a file returning text.
$$wwrriittee((nnuummbbeerr aarrggss))
Write args to a file.
$$eeooff((nnuummbbeerr))
Returns if EOF of file or not.
$$cclloossee((nnuummbbeerr))
Closes a file.
$$rreennaammee((oollddffiillee nneewwffiillee))
Renames a file.
$$rroott1133((tteexxtt))
Rot 13's text.
$$rrmmddiirr((ddiirrnnaammee))
$$uunnlliinnkk(())
bbccooppyy(())
$$cchheecckk__uusseerr(())
$$cchheecckk__sshhiitt(())
compat ctoolz null function.
$$rreeaaddlloogg(())
Read msg log file.
rreemmlloogg(())
Removes msg log file.
$$wwhhiicchh((ffiilleennaammee))
And the new variables:
$$EE Shows idle time.
$$FF Time online.
$$JJ Shows which version of IRC is in use.
$$XX Userhost.
$$YY Real name.
New status line variables:
%D Show dcc percentage done on status line.
%^ Show number of recieved messages while away on status line.
55.. TThhee FFuuttuurree ooff BBiittcchhXX

View File

@@ -0,0 +1,387 @@
ircII 2.8 + BitchX Documentation
Patrick J. Edwards, pje120@cs.usask.ca
Tue Feb 13 13:50:47 GMT 1996
1. Introduction
BitchX is a new and exciting IRC client being written by Colten
Edwards <http://mailto:edwac@sk.sympatico.ca>. It includes many new
features that IRCists have been asking for. The sources are based on
ircii-Plutotium and ircii-EPiC to create a new and distictive IRC
client. Heres a small list of the cool features you get with BitchX:
o When run under Linux, BitchX has an added bonus of being in full
color.
o Friends, Shit, and Bot Lists built in.
o Built in Link Looking, incase your into split servers.
o Millisecond accuracy on a ping.
o Several new functions for scripters to use, and a few new
variables.
o Extended set of DCC commands and options, like auto-getting,
queues, public offers, and graphical displays.
o A more logical command set, like /W for /WHO and /WI for /WHOIS.
o Mass functions, like mass ban, mass op, etc.
o And tons of other commands, like /RESET and /MESG, incase your not
very popular on IRC.
You may be thinking great. But I get all that functionality from a
script, or you maybe thinking BitchX is a script. Well, read on for
more of an explanation of what BitchX is all about.
First of all, its not a script. Secondly, when you load up a script
say Phoenix or LiCe it takes a long time to load. Plus you probably
have other scripts that you load. For example I used to load up to
100k of scripts. That 100k would take up alot of memory, and was slow
loading, and slow executing. BitchX doesn't have this problem. It has
all these commands loaded hard-coded into the syetem, and the
executable approximately the same size.
The bottom line is IRC load fast, it does everything fast, in less
memory.
Well, if you have read up to this point, and are thinking BitchX is a
good thing, you can get it from The BitchX Homepage
<http://www.cs.usask.ca/undergrads/pje120/bitchx/>.
2. New commands
2.1. Fixed/Changed Commands
These commands existed before in ircII, but now are either fixed or
changed in some way. Likely, in a better, more natural way.
D Can be used for DESCRIBE.
I see INVITE.
INVITE
Now works like this, /I nick1 nick2 to the current channel, and
/I nick1 #channel1 nick2 channel2.
IG <nick>
Ignore lamer by user@host.
IGH <nick>
Ignore lamer's whole host.
NIG <nick>
Unignore lamer.
J <channel>
For JOIN.
L channel
For PART. If no argument is given the current channel is left.
M <nick or channel>
For MSG.
N channel
For NAMES. If no argument is given the current channel is used.
T string
For TOPIC. If no argument is given it shows the topic on the
current channel.
SC channel
For NAMES. If no argument is given the current channel is used.
W channelmask
Does a WHO. If no arguments are given it does a WHO on the
current channel.
WI nick
Does a WHOIS. If no arguement is given, a WHOIS is done on your
nick.
WII nicknick
Simular to WI.
WW nick
Does a WHOWAS.
DIRLM
Directs last message to the current channel.
DIRLN
Directs last notice to the current channel.
2.2. Mass Commands
These are for doing mass operations on a channel.
MOP channel pattern
Mass op. Does a /MODE channel +o on all people.
MD channel pattern
Mass deop. Does a /MODE channel -o on all people.
MK channel <pattern> reason
Mass kick on non-ops matching pattern.
MB channe pattern
Mass ban all non-ops.
MKB channel <pattern> reason
Mass kickban of all non ops matching pattern.
MUB channel pattern
Mass unban.
BOOT
See MULTI.
MULTI channel nick1 nick2 ... nickn :reason
Kick multiple nicks off the channel with optional reason.
2.3. Ban/Unban/Kick/Unkick Commands
Should you havethe chance to become an op on a popular channel, you
might need a few of these.
K channel <nick> reason
Kick nick from channel.
KB
BK
FUCKchannel <nick> reason
Kick and Ban nick from channel.
B
BAN channel <nick>
Ban nick from channel.
SB
SBAN channel <nick>
Ban nick's entire site from channel.
SK channel <nick> reason
Site Kick and Ban nick.
DBAN
UB channel nick-pattern
If no arguements are given all bans on the channel will be
removed.
2.4. List Commands
Frequently, you may find people that you trust alot on IRC, these are
you friends. But even more frequently you'll find people on IRC are
annoying, so annoying that they deserve to be shitlisted. That's what
this whole section is about.
BOT <nick> <channel>
Add user as a bot to a channel. Channel can be a *.
UNBOT <nick> <channel>
Remove nick from the bot list.
ADDUSER <nick> <channel> level autoop prot passwd
Add nick to your personal friends list on channel. Level,
autoop, prot, and passwd are all optional, and default to
nothing, except Level, which defaults to 40. The following are
for the level.
25 Enable ctcp invite and whoami.
50+
Ops channel ops and and unbans.
90+
Disable flood protection, plus Kick and Deop.
Autoop values are:
0 No ops.
1 10 second delay before oping.
2 instant autoop.
other
does nothing.
Note that the user is not saved until a SAVELIST is issued.
UNUSER <nick>
Deletes a user from the user list.
ADDSHIT <nick> <channel> <level> reason
Adds a user to the shit list.
UNSHIT <nick>
Removes a user from the shit list.
USERLIST
Displays all users in the friends list.
SHITLIST
Displays all users in the shit list.
BOTLIST
Displays all users in the bot list.
SAVELIST
Save the shit, friends, and bot lists. This saves the
information to the $(CTOOLZ_DIR)/BitchX.sav file.
SAVEA
Saves information to the .ircrc over writing it.
2.5. Miscellaneous Commands
2.6. DCC Commands
3. New SET commands
Along with the new IRC there are new options you can set.
ANNOY_KICK on|off
Kick people for using bold, inverse, or beep on protected
channels.
AOP on|off
Set on if you want to automatically op people.
AUTOCK on|off
Kicks people who send /xdcc * send.
AUTO_NSLOOKUP on|off
Sets whether IP numbers are looked up on a /JOIN or /WHOIS.
AUTO_REJOIN 0|1|2|3|4|5
Sets how you should auto rejoin if kicked from a channel. The
channel key is remebered.
0 off.
1 rejoin normally.
2 rejoin with a newuser name (the person's who kicked you).
3 rejoin with a random nick name.
4 rejoin with a random user name.
5 rejoin with a random user name and nick name.
CHECK_BEEP_USERS on|off
4. New functions
Firstly the new functions:
$annoy(text)
Inserts random ^B, ^V, ^_, and makes random letters capitals.
$cluster(hostname)
Makes aa.bb.cc into *.bb.cc format.
$cool(text)
Makes ThInGs lOoK LiKe tHiS.
$eleet(text)
Increases your eleetness.
$getkey(channel)
Shows the channel key.
$stripansi(text)
Strips ansi sequences from text.
$uptime()
Display up time in Days, Hours, Minutes, Seconds.
$open(file RW|R|W T|B)
Opens a file descriptor.
$read(number)
Reads from a file returning text.
$write(number args)
Write args to a file.
$eof(number)
Returns if EOF of file or not.
$close(number)
Closes a file.
$rename(oldfile newfile)
Renames a file.
$rot13(text)
Rot 13's text.
$rmdir(dirname)
$unlink()
bcopy()
$check_user()
$check_shit()
compat ctoolz null function.
$readlog()
Read msg log file.
remlog()
Removes msg log file.
$which(filename)
And the new variables:
$E Shows idle time.
$F Time online.
$J Shows which version of IRC is in use.
$X Userhost.
$Y Real name.
New status line variables:
%D Show dcc percentage done on status line.
%^ Show number of recieved messages while away on status line.
5. The Future of BitchX

115
doc/plugins.txt Normal file
View File

@@ -0,0 +1,115 @@
BitchX Plugins
Written by Colten Edwards (c) 1997
Plugins can be created for BitchX quite easily. All plugins you create will
have a startup function which is based on the filename of the plugin and
_Init appended to it. So for a module like cavlink.so we have a startup
function called Cavlink_Init(). Cavlink_Init is defined as the following
int Cavlink_Init(IrcCommandDll **interp)
{
}
returning a 0 indicates successful installation, any other return is an
error.
You can add various commands, variables, functions, tcl functions, and ctcp
to the main client itself. You have complete access to ALL variables defined
within BitchX itself.
There is also a functions that may or may not be defined by you called the
fini function. Once again it's based on the filename appended with _Cleanup
to give us
int Cavlink_Cleanup(IrcCommandDll **interp)
{
}
If you make a cleanup function, you are responsible for removing all traces
of your dll from the client.
Adding a new command/function/var in a plugin is made easier with a function
that I wrote to add them to BitchX while keeping track of what's loaded.
add_module_proc(type, module name, command name, description,
id, flag, function1, function2);
type can be any of the following
COMMAND_PROC (internal /command)
ALIAS_PROC (internal function)
CTCP_PROC (ctcp procedure)
VAR_PROC (a /set variable)
HOOK_PROC (like a /on hook)
RAW_PROC (lowlevel access to server output)
DCC_PROC (new /dcc commands)
WINDOW_PROC (new /window commands)
OUTPUT_PROC (replacement output procedure)
module name is for internal bookkeeping practices. It's displayed when we
list the loaded plugins, and is also used for finding what to remove in the
event of a /unloaddll.
command name is the name of the procedure we are adding to the client. or
How we will call the procedure.
description is just a description for display in a usage() function. It can
be NULL as well.
id is used in a VAR_PROC HOOK_PROC and CTCP_PROC to identify some aspect of
the procedure. each "type" uses id differantly. A VAR_PROC uses this to
identify the type of variable being introduced ie. STR_TYPE_VAR,
INT_TYPE_VAR, BOOL_TYPE_VAR. A CTCP_PROC can be set to -1. HOOK_PROC uses
this to identify the hook to add this to. A negative number means this is a
server numberic to add too. A non-negative value is used to indicate a
particular hook. You can use the enumerated list of hooks in hook.h to make
this easier ie. CHANNEL_SYNCH_LIST.
flag is used in the same procedures as id. a VAR_PROC uses this as the
default INT/BOOL value for the variable. CTCP_PROC uses this to tell the
client what todo when we recieve one of these ctcp's. CTCP_SPECIAL,
CTCP_TELLUSER, CTCP_REPLY, CTCP_INLINE, CTCP_NOLIMIT are possible values.
These can be or'd together as well. HOOK_PROC uses this as the "noise"
of this event.
function1 is the function to call for this particular command. This always
needs to be supplied for all the various procedures.. Even a VAR_PROC can
have a function associated with it.
function2 is the reply function for CTCP_PROC. It can be NULL.
Depending on the nature of the procedure your adding, determines what the
return from that procedure should be. a $function should return a string for
example. a command or a var procedure returns nothing.
void command_proc(IrcCommandDll *, char *, char *, char *, char *);
void var_proc(Window *, char *, int);
char *alias_proc(char *);
char *ctcp_proc(CtcpEntryDll *, char *, char *, char *);
void hook_proc(int hook, char *buffer, char *);
void hook_proc(char *name, char *buffer, char *);
int raw_proc(char *num, char *from, char *userhost, char **Args);
void dcc_func(char *name, char *args);
Window *window_proc(Window *, char **args, char *help);
void output_proc(Window *, const unsigned char *str);
Tcl commands can be added from a module quite easily. Just make sure that
that you call Tcl_DeleteCommand() when unloading the module. This means you
need to use a Cleanup function.
A output procedure can be defined. It replaces ALL output procedures for ALL
screens and windows. You will need to handle everything that the current
add_to_window() function in screen.c does by yourself. You can however use
any or all of the BitchX functions. When removing this procedure, ALL
screens and windows are reset back to the default output procedure.

173
doc/tcl/BitchX.tcl Normal file
View File

@@ -0,0 +1,173 @@
BitchX tcl now includes a special mode similar to what eggdrop bots have. ie
we can setup a BitchX client as both a client and/or a bot.
Client A -----\ /----- Client C
----- Bot A ----------- Bot B -----
Client B -----/ \----- Client D
Bot A and Bot B are both BitchX clients. In Bot A attempts to link in a Bot
link to Bot B then Bot B needs to have Bot A in it's /botlist with a
password. ie /addbot BotA #channel 0 0 password where channel, auto-op and
prot levels don't matter. /clink BotB BotA password is then used to link the
two clients together. From this point on, anything coming over a dcc chat
link or a dcc bot link are passed back and forth over the appropriate links.
Clients dcc chatting with either BotA or BotB will receive information about
joins and parts as well as things the other clients say to one another. BotA
and BotB can also partake in this link as well. The bots in this case should
not try and /dcc chat with anyone. let the Client's attempt the chat.
Commands from Bots
/clink client_to_attempt_link_with
Client_nick_to_link_with password <port>
- attempt to link two clients together in a bot link.
- password can also be /set bot_passwd which bypasses the
Botlist password.
/csay msg
- send msg over all dcc chat links and any bot links as well.
/cwho <bot>
- shows who is on the current bot, or specified bot
/cwhom
- shows who is on every bot.
/cboot [nick] <reason>
- boot nick from the network.
/cmsg [nick> msg
- not fully implemented yet.
Commands for /dcc chat
*note: these are also available in regular dcc chat with someone else. So,
some of these have userlevels applied to them to prevent others from doing
things to you or causing you todo things you wouldnt want them todo.
.act [what] - sends action to chat line
.boot [nick] <msg> - boot nick from network
.chat - once a dcc is started send .chat to enter
the party line
.cmsg [nick] msg - send a privmsg
.echo - toggle echo back to you on/off
.help <topic> - help for commands
.invite nick - invites nick to chat with the host
.msg [nick] [msg] - send a privmsg to someone
.say [msg] - say something on the channel
.quit - quit partyline, but not the chat.
.tcl [tcl_command] - tcl command
.who <botnick> - who is on bot or this bot
.whom - all users on network
Commands for tcl scripting
*note: Most of these follow the eggdrop syntax. Some are unique to BitchX
however. On differance is that instead of a letter for the userlevel, a
numeric userlevel is applied instead.
ircii - causes a ircii command to execute
validuser -
pushmode
flushmode
lvarpop
lempty
lmatch
keyldel
keylget
keylkeys
keylset
maskhost
onchansplit
servers
server_list[i].name, server_list[i].port, server_list[i].connected
chanstruct
c->channel, c->server, c->mode, c->s_mode, c->limit,
c->chop, c->voice, c->channel_create, c->join_time, c->stats_ops,
c->stats_dops, c->stats_bans, c->stats_unbans, c->stats_sops,
c->stats_sdops, c->stats_sbans, c->stats_sunbans, c->stats_topics,
c->stats_kicks, c->stats_pubs, c->stats_parts, c->stats_signoffs,
c->stats_joins, c->set_ainv, c->set_auto_rejoin,
c->set_deop_on_deopflood, c->set_deop_on_kickflood,
c->set_deopflood, c->set_deopflood_time, c->set_hacking,
c->set_kick_on_deopflood, c->set_kick_on_joinflood,
c->set_kick_on_kickflood, c->set_kick_on_nickflood,
c->set_kick_on_pubflood, c->set_kickflood, c->set_kickflood_time,
c->set_nickflood, c->set_nickflood_time, c->set_joinflood,
c->set_joinflood_time, c->set_pubflood, c->set_pubflood_time,
c->set_pubflood_ignore, c->set_userlist, c->set_shitlist, c->set_lamelist,
c->set_kick_if_banned, c->totalnicks, c->maxnicks, c->maxnickstime,
c->totalbans, c->maxbans, c->maxbanstime, c->set_aop, c->bitch_mode);
channel
channels
isop
getchanhost
matchattr
finduser
findbot
findshit
date
time
ctime
dccstats
dccnum,
read,
dcc_types[flags&DCC_TYPES],
user,
status DCC_DELETE ? "Closed" :
DCC_ACTIVE ? "Active" :
DCC_WAIT ? "Waiting" :
DCC_OFFER ? "Offered" : "Unknown",
starttime.tv_sec,
filesize,
bytes_sent,
bytes_read,
filesize,
description,
encrypt or ""
onchan
chanlist
unixtime
putlog
putloglev
rand
timer
killtimer
utimer
killutimer
timers
utimers
putserv
putscr
putdcc
putbot
putallbots
bind
binds
unbind
strftime
cparse
userhost - Attempt to find nick on irc. Any number of nicks
may be specified.
getchanmode
Tcl variables BitchX sets.
botnick
nick
realname
username
server
version
curchan
userhost - variable is set in response to the userhost command
un-userhost - variable is set in response to the userhost command
Special considerations.
tcl bind raw functions that return 1 will bypass the internal ircII
routines. returning 0 or nothing will have the tcl and the ircII internal
routine execute.
BitchX's bot mode acts very similar to eggdrop's and in fact thanks to Robey
for defining the protocol necessary to achieve this.

9
doc/tcl/crypt-op.bx Normal file
View File

@@ -0,0 +1,9 @@
#power@power.zepa.net
#replace key1 and key2 with this keys you set on force1 by .crypt key1 key2
on #-msg 44 " * " {
if ([$0]==[force1]&&[$1]==[crypt_op]) {
echo $G crypt_op request from $0... sending op strings.
^msg $0 crypt_reply $encrypt(key2 $decrypt(key1 $2))
}
}

53
doc/tcl/op-crypt.tcl Normal file
View File

@@ -0,0 +1,53 @@
if {![info exists blowfish_version]} {
putscr "You MUST load the blowfish encryption module prior to loading this!"
return 0
}
set crypt_timeout 60
#borrowed from alltools.tcl
proc randstring {count} {
set rs ""
for {set j 0} {$j < $count} {incr j} {
set x [rand 62]
append rs [string range "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" $x $x]
}
unset x
unset j
return $rs
}
proc crop {n args} {
global cryptkeeper cryptlist crypt_timeout
if [onchan $n [_T]] {
if {![info exists cryptkeeper([string tolower $n])]} {
putscr "You must first set a pair of crypt keys before using this."
putscr "Try /addcrypt <nick> <key1> <key2>"
return 0
}
putserv "privmsg $n :crypt_op"
set cryptlist([string tolower $n]) [utimer $crypt_timeout "unset cryptlist([string tolower $n])"]
}
return 0
}
bind msg -1 crypt_op crypt_response
proc crypt_response {n u h a} {
global cryptkeeper cryptlist
if {![info exists cryptlist([string tolower $n])]} {
putscr "$n requesting UNAUTHORIZED crypt verification!"
return 1
} {
unset cryptlist([string tolower $n])
putserv "privmsg $n :crypt_reply [encrypt [lindex $cryptkeeper([string tolower $n]) 1] [decrypt [lindex $cryptkeeper([string tolower $n]) 0] $a]]"
}
return 1
}
proc addcrypt {n k1 k2 args} {
global cryptkeeper
set cryptkeeper([string tolower $n]) "$k1 $k2"
putscr "Added $n to the crypt keeper with keys $k1 and $k2."
}
return 0

1020
doc/tcl/tcl-commands.doc Normal file

File diff suppressed because it is too large Load Diff

145
doc/tcl/tcl-ideas Normal file
View File

@@ -0,0 +1,145 @@
<jEkS> isban <ban> [channel]
<jEkS> matchban <nick!user@host> [channel]
<jEkS> isvoice <nickname> <channel>
<jEkS> onchan <nickname> <channel>
<jEkS> chanbans <channel>
<jEkS> getchanhost <nickname> <channel>
<jEkS> onchansplit <nick> <channel>
<jEkS> chanlist <channel>
<jEkS> getchanmode <channel>
<jEkS> maskhost <nick!user@host>
<jEkS> ctime <unixtime>
[Jeks(dcc)] .tcl return [expr 1 + 1]
<jEkS> :/set bot_tcl_command 1/0
ForChannelOps #channel -minlevel -maxlevel command
ForChannelNOps #channel -minlevel -maxlevel command
inAway (if your away return 1)
[noob(dcc)] this is how the raw server data is handles
[noob(dcc)] and if the raw numeric is specified
[noob(dcc)] i.e.
[noob(dcc)] proc RAW_KICK { level } \
[noob(dcc)] {
[noob(dcc)] Echo [TopChannel] "blah" \[\04FunScript\04\]
[noob(dcc)] }
[noob(dcc)] proc RAW_303 { level } \
[noob(dcc)] {
[noob(dcc)] Echo "this that the other thing" blah
[noob(dcc)] }
[noob(dcc)] then when the server replys a 303
[noob(dcc)] /echo (blue)blah(blue) this that the other thing
[noob(dcc)] via proc name
[noob(dcc)] TCL's sockets are shitty
[noob(dcc)] SockCreate socketname function blah blah
[noob(dcc)] proc PARTY {} \
[noob(dcc)] {
[noob(dcc)] set nErrCode [catch {SockCreate party "party " 1093 1 13}]
[noob(dcc)] if { $nErrCode == 0 } \
[noob(dcc)] {
[noob(dcc)] global party
[noob(dcc)] set party "ON"
[noob(dcc)] Echo [MyNick] "Partyline Socket created..." PARTY!
[noob(dcc)] SockListen party 3
[noob(dcc)] if { $nErrCode != 0 } \
[noob(dcc)] {
[noob(dcc)] Echo [MyNick] "Can't listen with socket party" PARTY!
[noob(dcc)] } else \
[noob(dcc)] {
[noob(dcc)] Echo [MyNick] "Partyline now active with socket party. To
disable
type /noparty" PARTY!
[noob(dcc)] }
[noob(dcc)] }
[noob(dcc)] } else \
[noob(dcc)] {
[noob(dcc)] Echo [MyNick] "Can't create socket" PARTY!
[noob(dcc)] }
[noob(dcc)] Complete
[noob(dcc)] }
[noob(dcc)] as u see... an alias is proc NAME(all caps)
[noob(dcc)] it will listen to a socket at port 1093
[noob(dcc)] if its able to create the socket sucsessfully it returns a 1
[noob(dcc)] i mean it sets nerrcode to 0
[noob(dcc)] otherwise it says cant listen with socket
[noob(dcc)] and when u type /pass
[noob(dcc)] it exicutes that proc
[noob(dcc)] and u are then listening to port 1093
[noob(dcc)] and the socket name is party
[noob(dcc)] for every connection u would need this...
[noob(dcc)] a onACCEPT
[noob(dcc)] proc onACCEPT_party { name nErrCode } \
[noob(dcc)] {
[noob(dcc)] global last
[noob(dcc)] set last ""
[noob(dcc)] global user
[noob(dcc)] incr user
[noob(dcc)] global user_$user
[noob(dcc)] set user_$user "1"
[noob(dcc)] set $name party
[noob(dcc)] Echo [MyNick] "hmm $name connected to partyline server1"
[noob(dcc)] SockAccept "user_$user" $name
[noob(dcc)] if { $nErrCode != 0} { Echo [MyNick] "Problem with SockAccept "
}
[noob(dcc)] Echo [MyNick] "\01A new user joined the partyline. This is user
$user\01"
[noob(dcc)] PostMsg "PAR user_$user@[SockRemoteIP $name] joined the
partyline!"
[noob(dcc)] SockSendT user_$user "\04Current commands are:\n"
[noob(dcc)] SockSendT user_$user ".\02me\02 <text> - action on
partyline\n"
[noob(dcc)] SockSendT user_$user ".\02nick\02 <nick> - change
partyline ID\n"
[noob(dcc)] SockSendT user_$user ".\02quit\02 <reason> - left on
partyline\n"
[noob(dcc)] SockSendT user_$user ".\02MSG\02 <nick> <text> - Sends a
msg to nick\n"
[noob(dcc)] SockSendT user_$user ".\02WHOM\02 - Tells you who is
connected\n"
[noob(dcc)] SockSendT user_$user ".\02DIE\02 <pass> - Kills the
partyline\n"
[noob(dcc)] SockSendT user_$user ".\02PING\02 - Checks for lag\n"
[noob(dcc)] SockSendT user_$user ".\02BOOT\02 <pass> <nick> - Kicks
a
nick off the partyline\n"
[noob(dcc)] SockSendT user_$user "*** \04if u have more command
ideas
try \02noob@america.com\02\04 *** \n"
[noob(dcc)] SockSendT user_$user "If you want to exit... Type .quit
reason to quit. Type .help for all commands. \n"
[noob(dcc)] SockSendT user_$user "\02Type \".nick <NewNick>\", Must
be
within 9 letters.\n"
[noob(dcc)] Complete
[noob(dcc)] }
[noob(dcc)] that changes the sepcific's socket to its own socketname
[noob(dcc)] that way u can have more then 1 connection at your port
[noob(dcc)] and a SockClose
[noob(dcc)] and a SockCloseAll
[noob(dcc)] will be needed
[noob(dcc)] a [SockLine $name] would be the last text recieved from socket
$name
[_jeks_(~jeks@msiw34.msi.se)] then you should check out
ftp://ftp.neosoft.com/pub/tcl/NEW there is a file called
tcl7.5p1plus.patch.gz .. use that..
[_jeks_(~jeks@msiw34.msi.se)] then you can add a Tcl_InitIndependant (or
sumthing) to make the bin completly independant from any tcl libs
installed on the system..
[_jeks_(~jeks@msiw34.msi.se)] great if you want to make a bin distrib.. then
it doesn't care wether tcl is installed or not..
you could mail liotta@hotmail.com ..!
2. kwak (Sep 25 23:42): abnout the [ircii args] function, I
think I need it to send to the tcl interpreter instead of the
screen, or maybe there should be a parameter to it.. like [ircii
-console args] to put it to screen.. Cause If I need a var it can't
be done.. like "/tcl set ircii-setlist [ircii set] it only puts to
screen not to the var.. it is very important that it does.
3. kwak (Sep 25 23:43): cause then you can put some params from
ircii to the tcl.. like "/tcl set color1 [ircii eval echo ${C1}] or
whatever..

10
doc/win32/README Normal file
View File

@@ -0,0 +1,10 @@
Last Updated: Tue Apr 8 16:12:40 EDT 2003
This directory contains info about the WIN32 version of
BitchX. Not too many people use the WIN32 version, so this
section of the docs is rather bare.
If you have docs for the WIN32 version of BitchX you would like
included here, send them to powuh in #BitchX on EFnet.