aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Elvio Basello2008-04-08 15:34:19 +0000
committerGravatar Elvio Basello2008-04-08 15:34:19 +0000
commit321eaf2e33ee068cc191eb35231313df870e749a (patch)
treecc17edfee4e9d4265b59d7f9864e32df4cb04ba9
parentAdded userlistview cursor transparency (diff)
downloadKVIrc-321eaf2e33ee068cc191eb35231313df870e749a.tar.gz
KVIrc-321eaf2e33ee068cc191eb35231313df870e749a.tar.bz2
KVIrc-321eaf2e33ee068cc191eb35231313df870e749a.zip
moved docs from root to doc/;
added install target for doc/; git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1429 17fca916-40b9-46aa-a4ea-0a15b648b75c
-rw-r--r--CMakeLists.txt2
-rw-r--r--FAQ713
-rw-r--r--README397
-rw-r--r--doc/CMakeLists.txt80
-rw-r--r--doc/FAQ712
-rw-r--r--doc/README396
-rw-r--r--doc/scriptexamples/antiidle.kvs (renamed from doc/scriptexamples/antiidle/antiidle.kvs)0
-rw-r--r--doc/scriptexamples/antiidle/.svnignore25
-rw-r--r--doc/scriptexamples/antiidle/Makefile.am5
-rw-r--r--doc/scriptexamples/minesweeper.kvs (renamed from doc/scriptexamples/minesweeper/minesweeper.kvs)0
-rw-r--r--doc/scriptexamples/minesweeper/.svnignore25
-rw-r--r--doc/scriptexamples/minesweeper/Makefile.am5
-rw-r--r--doc/scriptexamples/objectsdumptree.kvs (renamed from doc/scriptexamples/objectsdumptree/obdumptree.kvs)0
-rw-r--r--doc/scriptexamples/runmenu.kvs (renamed from doc/scriptexamples/runmenu/runmenu.kvs)0
-rw-r--r--doc/scriptexamples/runmenu/.svnignore25
-rw-r--r--doc/scriptexamples/runmenu/Makefile.am5
-rw-r--r--doc/scriptexamples/simplehttp.kvs (renamed from doc/scriptexamples/simplehttp/simplehttp.kvs)0
-rw-r--r--doc/scriptexamples/simplehttp/.svnignore25
-rw-r--r--doc/scriptexamples/simplehttp/Makefile.am5
19 files changed, 1191 insertions, 1229 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 42bb04c31..1e7d00f35 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -212,7 +212,7 @@ FIND_PACKAGE(GetText)
#CheckLibraryExists.cmake
# Search for subdirectories
-SUBDIRS(src data po scripts)
+SUBDIRS(src data po scripts doc)
###############################################################################
#
diff --git a/FAQ b/FAQ
index c9355dbfe..c696c9aa1 100644
--- a/FAQ
+++ b/FAQ
@@ -1,712 +1 @@
-1. PROJECT RELATED QUESTIONS
-
-1.1 What is KVIrc ? What the "KVIrc" name stands for ?
-1.2 Why KVIrc is not totally integrated in KDE ?
-
-
-2. COMPILATION
-
-2.1 I can't compile kvirc from cvs, what's wrong?
-2.2 Internal Compiler Errors ?
-2.3 On Mandrake 10.0 (or other) KVIrc fails to start
- saying that it can't find libkvisetup.so.
-2.4 I got 'amarokInterface.cpp:29:31: amarokInterface.moc: No such file or directory'. Whats going wrong?
-2.5 Configure complains about a missing libdl.so but I seem to have it
-
-
-3. INSTALLATION
-
-3.1 There is a problem during package installation/creation
- file /usr/share/services/irc.protocol from install
- kvirc-version.package conflicts with file from package xxx
-
-
-4. IRC
-
-4.1 How do i join a channel ?
-4.2 How do i autojoin channels ?
-4.3 How do I enable automatic NickServ identification ?
-4.4 I can't see my national characters, what's wrong ?
-4.5 I can't connect to an IPV6 server, what's wrong ?
-4.6 /me doesn't support the '$' character, what's wrong ?
-4.7 /me doesn't support the '"' (double quote) character, what's wrong ?
-4.8 /me can't contain the ';' character, what's wrong ?
-4.9 I try to do a /whois on nick blah\ but i get the reply for blah (without the slash)
-4.10 What is AVATAR protocol ? Is there any documentation about it ?
-4.11 The log files seem to be saved randomly, when I open a log
- I can see only a part of the text that actually should be there
-4.12 The DCC transfers seem to be interrupted after the first few bytes:
- KVIrc says that the remote end has closed the connection.
-
-
-5. ADVANCED IRC FEATURES
-
-5.1 How do I connect to an SSL-enabled IRC server ?
-5.2 How do I use DCC over SSL ?
-5.3 Do I need a SSL certificate ?
-5.4 How do I create a SSL certificate ?
-5.5 I can't get KVIrc to use my SSL certificate in a DCC, what's wrong ?
-5.6 KVIrc crashes when a certificate is used under Windows, what's wrong ?
-5.7 How do I enable mircryption (encryption in general) for a specific channel ?
-5.8 How do I execute a process and send its output to a channel ?
-5.9 How do I keep channels and queries open after a disconnect ?
-5.10 I have an unreliable ISP connection but KVIrc takes a really long
- time to detect a disconnection and reconnect.
-5.11 I'm in a LAN and KVIrc uses a wrong IP address in dcc transfers
-
-6. APPAREANCE
-
-6.1 On Windows KVIrc seems to slow-down sometimes, what's wrong ?
-6.2 I don't see the channel popup menus anymore, what's wrong ?
-6.3 Does KVIrc support Themes?
-6.4 I hate all that colors, what can I do about it ?
-6.5 On Windows, how do I use firefox/opera/any_other_browser to open links instead of explorer ?
-
-
-7. CRASHES
-
-7.1 KVIrc crashes when the multiline text input is opened (obsolete)
-7.2 What the heck is a gdb stack trace and how do I get it ?
-7.3 KVIrc hangs up, but doesn't crash. How do i report debug informations ?
-7.4 KVIrc exits by itself or simply "disappears" without any apparent reason.
-7.5 KVIrc dies randomly and "Alarm Clock" is printed in the console
-7.6 KVIrc dies when using alias(identify){ identify password; }
-
---------------------------------------------------------------------------------
-1. PROJECT RELATED QUESTIONS
---------------------------------------------------------------------------------
-
-
-1.1 What is KVIrc ?
-
- KVIrc is a cross-platform Internet Relay Chat client.
- The name stands for K Visual Internet Relay Chat client.
- The K prefix comes from the old times, when KVIrc was bound to the
- KDE project and depended on the KDE libraries to run. Actually this
- is not true anymore since KVIrc depends only on the Qt library from
- TrollTech and runs also on platforms where KDE can't run.
-
-
-1.2 Why KVIrc is not totally integrated in KDE ?
-
- First of all read the answer for question 1.1.
- We could provide a more complete integration by the means of conditional
- compilation but since it would require additional efforts to synchronize
- the KVIrc sources with the KDE library changes we choose not to do it.
- If you wish to contribute some code that better integrates KVIrc with
- KDE you're welcome to do so: we will happily accept your patches as long
- as you promise to mantain them :)
-
-
---------------------------------------------------------------------------------
-2. COMPILATION
---------------------------------------------------------------------------------
-
-2.1 I can't compile kvirc from svn, what's wrong?
-
- Have you checked the requirements ?
- *Carefully* read the INSTALL file that comes with the distribution:
- it contains the informations to solve 95% of the problems that
- you may encounter. You may also try digging in our mailing list
- archive: many problems have been solved there.
- If you still can't get it to work please either subscribe to the KVIrc
- mailing list (see www.kvirc.net) and report the problem there or join #kvirc
- on IRCNet and ask the channel members for a hint.
-
-
-2.2 Internal Compiler Errors ?
-
- Compile errors like this:
- In file [somefile]:[someline] internal error:
- Segmentation fault
- Please submit a full bug report,
- with preprocessed source if appropriate.
- See <URL:http://bugzilla.redhat.com/bugzilla/> for instructions.
-
- This error can have multiple reasons.
- 1) A compiler bug: my GCC 3.2 20020903 (default on RH 8.0) spits
- out 5-6 of them daily. Usually it is solved by simply restarting the "make" command.
- If it doesn't go away or if it gets really frequent and annoying you might try to upgrade the compiler.
- 2) A memory corruption: this is really frequent: one of your memory banks is spitting random bytes
- sometimes. Usually the problems come out under heavy system load (kernel, KDE or kvirc compilation for example).
- You can check for memory corruption by trying different RAM modules (or removing them one at a time to discover
- the broken bank). You can also try a program called memtest and a kernel
- patch that can force the broken memory banks to be ignored by the kernel (allocated permanently to a dummy kernel task).
- These tools can be found by digging the web with your favorite search engine.
- 3) A deeper hardware problem: if upgrading the compiler and changing memory banks doesn't help then
- it *might* be a deeper hardware problem: bus errors , faulty IDE (or SCSI) controller or even buggy CPU...
- Well....
-
-
-2.3 On Mandrake 10.0 (or other) KVIrc fails to start
- saying that it can't find libkvisetup.so.
-
- Mandrake 10.0 default libtool package is broken. Either upgrade
- the libtool package or try to run ./autogen.sh --bundled-libtool
- and then recompile (./configure, make, make install).
- This *might* apply to other systems too.
-
-
-2.4 I got 'amarokInterface.cpp:29:31: amarokInterface.moc: No such file or directory'. Whats going wrong?
-
- You have to install qt3 devel tools which include uic and moc. If installed, be sure that uic and moc are in PATH.
-
-
-2.5 Configure complains about a missing libdl.so but I seem to have it
-
- The most common causes are two:
-
- 1) You have libdl.so.X (where X is usually a number or a set of numbers) but not libdl.so
-
- You need to do a symbolic link from libdl.so.X to libdl.so. You do it by entering the directory
- where libdl.so.X is and issuing a ln -s command, for example:
-
- # cd /lib
- # ls libdl*
- # ln -s libdl.so.2 libdl.so
-
- Then try to ./configure again
-
- 2) You don't have a c++ compiler installed
-
- The libdl test is the first ./configure test made with a c++ compiler.
- The confirmation for this error can be found in the config.log file
- where you can find lines similar to the following:
-
- configure:21637: g++ -o conftest conftest.cc -rdynamic -ldl >&5
- ./configure: line 1: g++: command not found
- configure:21643: $? = 127
- configure: failed program was:
- ...
-
- Your distribution probably ships the c++ frontend to gcc in a package
- separated from gcc itself. The package might be also named g++.
- Look it up on your installation CD and install it, then ./configure again.
-
--------------------------------------------------------------------------------
-3. INSTALLATION
--------------------------------------------------------------------------------
-
-3.1 There is a problem during package installation/creation
- file /usr/share/services/irc.protocol from install
- kvirc-version.package conflicts with file from package xxx
-
- This is a known issue with all types of packages that handle
- file conflicts. KVIrc installs the irc protocol handler for KDE
- and the same is done by ksirc and kopete (and maybe others).
- There is no particular reason for KVIrc to fix it in the core
- distribution (and there is also no simple way to do it).
- Either the package maker must exclude the irc.protocol
- file from installation or mark it as "optional" in some way or the
- users must use some sort of "force" flag during the installation.
-
-
--------------------------------------------------------------------------------
-4. IRC
--------------------------------------------------------------------------------
-
-4.1 How do i join a channel ?
-
- Type "/join #channelname"
-
-
-4.2 How do i autojoin channels?
-
- There are many ways to do it.
- For example:
- Select "Scripting/Events" from the KVIrc menu.
- Lookup the "OnIrc" entry in the left pane of the window that pops up.
- Right-click on that entry and select "Add handler".
- A "default" handler will be created. In the right pane write:
- join #kvirc
- join #kde-users
- join #somechannel
- ....
- Now click OK and you're done: you have just created a handler for an event.
- Reconnect to a server and KVIrc will autojoin the channels that you have selected.
- Another option (nicer, if you use several servers) is to go to the servers options
- page and click the button labeled 'Advanced' on the entry for the single server.
- There is a server-specific "On connect execute..." event.
-
-
-4.3 How do I enable automatic NickServ identification ?
-
- KVIrc supports two kind of NickServ identification rules: per-network and global.
- The per-network rules can be accessed from the server options page.
- You need to select a network in the list view (not a server!) and then click
- "Advanced...". In the dialog that appears there is a NickServ tab
- on that you can add your identification rules. Adding a rule
- should be straightforward (if you stop the mouse over an item you will likely get a small
- tool tip with the explaination). Each rule is composed of:
- - the nickname that is being identified: the rule will be applied only
- when your current nickname corresponds to this one.
- - a nick server user mask that must be matched by the NickServ user
- in order for him to be recognized as the real NickServ asking for
- identification. You will probably use something like NickServ!service@*
- - a message regular expression that must be matched by the message
- that the NickServ sends when requesting the identification.
- You will probably use something like "If this is your nick,
- identify yourself with /ns IDENTIFY password"
- - an identification command that will be executed when all the rules
- above match. You will probably use something like "ns IDENTIFY yourpassword"
- The global rules can be created in the IRC::NickServ page of the options dialog
- (accessible from the Settings/Configure KVIrc... menu). The main difference
- is that each rule has a server mask that must be matched by the current
- server name for the rule to be applied.
- KVIrc first looks in the per-network rules and if none matches it looks
- in the global rules.
-
-
-4.4 I can't see my national characters, what's wrong ?
-
- There are several ways to fix your national characters display.
- General encoding:
- Open the options dialog and go to the "Encoding" page.
- You can set explicitly the encoding to be used for the whole application.
- If you choose "Use Language Encoding" KVIrc will try to guess the
- encoding from your system settings. If this doesn't work then the reasons
- may be:
- - Your system settings are wrong
- You need to fix them
- - Your server applies some specific encoding to the data
- See "Server encoding"
- - You're chatting with people that have different system settings
- See "Channel & Query encoding"
- Server encoding
- Besides the general encoding you can set one encoding per server.
- This is done in the server options dialog (Click Advanced...).
- The encoding will be applied to all the text that comes from
- and goes to the server. If you choose "Use system encoding"
- then the server will inherit the "General encoding" value above.
- If this doesn't work then you have either set it incorrectly or
- you are chatting with people that use different encodings.
- In this case see "Channel & Query encoding"
- The server encoding is used also to decode nicknames and
- channel names on servers that support it.
- Channel & Query encoding
- Besides the general and server encoding you can set also per-window
- encoding in channels and queries. This encoding will be applied
- ONLY to the text sent to or received from that channel or query.
- This feature is useful when chatting over a non unicode aware
- IRC server (nearly all at the time of writing) with people
- that have settings different than your general defaults or
- the server default.
-
- Keep in mind that IRC has a MAJOR problem with character encoding
- and in fact the formal definition of the protocol requires it
- to be only 7bit safe. This means that on some servers you may
- see your national characters eaten by the IRC network and there
- is almost nothing you can do about that...
-
- UTF-8 is the best encoding we can get on IRC. Try to convince
- other people to use it :)
-
-
-4.5 I can't connect to an IPV6 server, what's wrong ?
-
- First of all make sure that your IPV6 stack is setup correctly.
- Can you ping6 other IPV6 other machines ?
-
- # ping6 www.6bone.net
-
- Is the IPV6 support enabled in your kvirc executable ?
- To find it out , try
-
- /echo $features
-
- in the KVIrc commandline. You should get a comma separated list of
- features compiled in the executable. If the list contains "IPv6" then
- the support is compiled in, otherwise you must check your compilation
- stage to guess what went wrong.
- To connect to an IPV6 server you can use /server -i <servername>
- If you can ping other IPV6 machines, the IPv6 support is compiled in your
- executable and you still can't connect to an *existing* IPv6 server then
- you may have found a bug :) Report it.
-
-
-4.6 /me doesn't support the '$' character, what's wrong ?
-
- This is NOT a bug : this is a feature : kvirc supports (and substitutes!) variables in all the commands.
- You can escape your $ sign by using the backslash character: /me has gained \$100 will work correctly
-
-
-4.7 /me doesn't support the '"' (double quote) character, what's wrong ?
-
- This is NOT a bug : this is a feature : a string enclosed in double quotes will have its whitespace preserved
- while the other strings will have the whitespace simplified. This is valid for ANY command.
- You can escape your " sign by using the backslash character: /me feels a bit \"foo\" will work correctly
-
-
-4.8 /me can't contain the ';' character, what's wrong ?
-
- This is NOT a bug : this is a feature : kvirc supports multiple commands on a single line and uses ';' as a command
- separator. You can escape your ';' sign by using the backslash character: /me is hungry \;) will work correctly.
-
-
-4.9 I try to do a /whois on nick blah\ but i get the reply for blah (without the slash)
-
- In KVIrc /whois is a scripting command and the nickname is a command parameter.
- In scripting commands the backslash is a special character with several "escape"
- meanings. To include a literal backslash inside a parameter you MUST double it,
- thus the correct command to issue is /whois blah\\
-
-
-4.10 What is AVATAR protocol? Is there any documentation about it ?
-
- AVATAR is a simple CTCP based protocol that allows associating images (avatars)
- to IRC users. The protocol definition is simple:
-
- - CTCP AVATAR QUERY:
- :<source> PRIVMSG <target> :<0x01>AVATAR<0x01>
- Queries the avatar of the <target>.
- - CTCP AVATAR REPLY:
- :<source> NOTICE <target> :<0x01>AVATAR <avatar_url><0x01>
- Asserts that the <source> user's avatar is located at <avatar_url>
- that usually will be something like http://server.domain.top/avatarimage.jpg.
-
- KVIrc supports also DCC based avatars that are simply "offered" to the
- remote users. In this case the <avatar_url> does not contain the http://
- prefix but is a simple file name. The remote users request the avatars
- by issuing a DCC GET command. This is an useful but secondary extension
- and can be ignored by simple implementations. If you need more informations
- about this method please write to pragma at kvirc dot net.
-
-
-4.11 The log files seem to be saved randomly, when I open a log
- I can see only a part of the text that actually should be there
-
- KVIrc does not explicitly flush the log files while writing them. The OS
- (or the underlying C library) does the flush operation when necessary.
- This means that blocks of the log file will be added to the file on disk
- only once in a while. If you really need to see the logs in real time
- then you can explicitly flush the log files by scripting.
- Just add a script like this to your OnKVIrcStartup event:
-
- timer(flushlogfiles,30000)
- {
- foreach(%x,$window.list(all,any))
- {
- if($log.file(%x))
- {
- echo -w=%x "Flushing log file...";
- log.flush -w=%x;
- }
- }
- }
-
- The script above will flush all the log files every 30 seconds. You may
- remove the echo statement if you're annoyed by the output :)
-
-
-4.12 The DCC transfers seem to be interrupted after the first few bytes:
- KVIrc says that the remote end has closed the connection.
-
- Make sure that you don't have activated the "Send ACK for byte 0"
- option in "Options->DCC->File Transfer->Advanced".
- This option should be used ONLY IF you have problems without.
-
-
-
-
--------------------------------------------------------------------------------
-5. ADVANCED IRC FEATURES
--------------------------------------------------------------------------------
-
-
-5.1 How do I connect to an SSL-enabled IRC server ?
-
- Use /server -s <servername>
- It should work also over IPV6.
- If it doesn't work then your executable might have no SSL support compiled in.
- To find it out type
-
- /echo $features
-
- in the KVIrc commandline. If "SSL" is not in the list then you must go back
- to the compilation phase and see what went wrong.
-
-
-5.1 How do I use DCC over SSL ?
-
- /dcc.chat -s <nickname> should work
-
-
-5.3 Do I need a SSL certificate ?
-
- No you shouldn't need it, but you can use it if you want.
-
-
-5.4 How do I create a SSL certificate ?
-
- A test self-signed certificate can be created by using the CA.pl perl script included
- in the OpenSSL distribution. It will be something like CA.pl -newcert
-
-
-5.5 I can't get KVIrc to use my SSL certificate in a DCC, what's wrong ?
-
- The SSL protocol doesn't require the "client" to send the certificate: it is
- sent only if the "server side" requests it (it is not the KVIrc case).
- The server side may have a certificate and you can set it in the SSL options page.
- If your Private Key is stored in the certificate file pass the same filename
- to both Certificate and PrivateKey option.
- Remember to set the password if needed.
-
-
-5.6 KVIrc crashes when a certificate is used under Windows, what's wrong ?
-
- This is probably a bug of the SSL dll shipped with the windows version of KVIrc.
- You might try with a different version of this dll.
-
-
-5.7 Can I encrypt my messages?
-(or: How do I enable mircryption (encryption in general) for a specific channel?)
-
- KVIrc supports encryption for channels, queries and dcc chats by the means
- of text transformation engines. You can access the list of the engines
- by clicking the button with the yellow lock in the upper right corner
- of the window. In the pane that will appear select "use text transformation"
- and then choose one of the available engines.
- The Mircryption engine is an implementation of the mircryption protocol and
- supports both ECB and CBC mode. There is also a wide variety of Rijndael based encryption
- engies as well as some funky other text transform tricks.
- Most of the engines will need a pair of keys to encrypt and decrypt text
- and in most cases you will use the same key for both encrypting and
- decrypting. In the particular case of Mircryption you can enable
- CBC mode by prefixing your key(s) with the "cbc:" string.
- Once you have entered the keys just click on OK and start "talking" in the
- window. Any encrypted text will have a "lock" overlay in his icon.
- If you want to avoid encrypting a particular text line (maybe because
- you want to allow everyone on a channel to read it) you can start
- the line with a CTRL+P character.
-
-
-5.8 How do I execute a process and send its output to a channel ?
-
- The straight way to do this is
-
- /exec("your command here"){ say $1; }
-
- Since it is not too much "user friendly", you can alias it in
- the following way:
-
- alias(runandsay)
- {
- exec($0-){ say $1; }
- }
-
- Then you would simply run
-
- /runandsay cat /proc/cpuinfo
-
- in the channel window you want the output sent to.
-
- Keep in mind that this is a "brute" approach and I'm sure that after
- reading some documentation (start from /help exec) you will be able to
- find more elaborate and nice ways to send a process output to a channel/query.
-
-
-5.9 How do I keep channels and queries open after a disconnect ?
-
- KVIrc can keep your channels and queries open when the connection terminates
- unexpectedly. This will probably make sense only if you plan to
- reconnect to the same server or at least the same network (either manually
- or automatically).
-
- An "unexpected disconnect" is a connection termination not explicitly caused by
- the KVIrc user. This means that the connection is interrupted, either
- by the networking stack or by the remote server, without the user
- having sent a QUIT message (by the means of the /quit command or by pressing
- the "disconnect" button in the toolbar).
-
- All this because the normal behaviour of a /QUIT command is, yes, to quit
- your current connection without leaving traces of it.
-
- To keep the channels and queries open you just need to select the
- relative options in the "Connection" page of the options dialog
- (on unexpected disconnect: "Keep channels open" an/or "Keep queries open").
-
- Then you might also select "Automatically reconnect", "Rejoin channels
- after reconnect" and "Reopen queries after reconnect" to bring your
- "dead windows" to life again :)
-
- Finally, you can simulate an "unexpected disconnection" by using the -u switch
- of the /quit command. This might be useful when you want to explicitly
- quit your connection while leaving the channels and queries open... maybe
- because you need to renew the connection to your ISP before reconnecting ;)
-
-
-5.10 I have an unreliable ISP connection but KVIrc takes a really long
- time to detect a disconnection and reconnect.
-
- KVIrc doesn't detect itself that the connection has dropped until your
- kernel explicitly times out. KVIrc measures lag, instead, that will
- probably grow up a lot when the connection has dropped.
- You can write a handler for the OnLagCheck event that will detect
- the lag growing over a certain threshold and reconnect.
- This involves opening the event editor, selecting OnLagCheck
- and choosing "Add handler" from the right mouse menu.
- In the handler write:
-
- if($1 > 30000){ quit -f -u; }
-
- 30000 is just a sample threshold (it means 30000 milliseconds!), replace
- it with a value of your choice.
- quit -f -u will close the current connection immediately (-f = force)
- and will simulate an "unexpected disconnection" condition (-u = unexpected).
- If you then enable automatic reconnection (see answer for question 5.9)
- in the options dialog, KVIrc will automatically reconnect and rejoin channels.
-
-
-5.11 I'm in a LAN and KVIrc uses a wrong IP address in dcc transfers
-
- KVIrc supports a couple of methods for guessing the right IP address for
- DCC transfers: you only have to guide it a bit :)
-
- The first thing to try is "Guess address from IRC when unroutable" (Options->DCC).
- This will perform a lookup on your own IRC mask once you connect
- to an IRC server and use the address as source in DCC transfers.
- (You need to reconnect to the server to make this option work!)
- This trick will fail when your hostmask is cloaked (mode +x on recent IRC servers):
- KVIrc will tell you that it couldn't look up the hostname and give up.
-
- In this case you might try to set a fixed address to be sent as source
- in the DCC transfers: you just need to fill in the *IP address* of your
- router in the option field. This field doesn't support hostname lookups
- and it won't update automatically when you router's IP changes.
- However, if you router's IP has a dns entry, you can ask KVIrc to fill
- this field with a simple script to be performed at every connection.
-
- event(OnIRCConnectionEstabilished,updatedccsource)
- {
- ahost(yourrouterhostname.dyndns.org)
- {
- option boolDCCSendFakeAddressByDefault 1
- if($1)option stringDefaultDCCFakeAddress $2
- else echo "Couldn't look up the router's hostname"
- }
- }
-
- When transferring files to other KVIrc clients you may also try the
- DCC RSEND protocol instead of DCC SEND. It will ask the remote end
- to listen instead.
-
--------------------------------------------------------------------------------
-6. APPAREANCE
--------------------------------------------------------------------------------
-
-6.1 On Windows KVIrc seems to slow-down sometimes, what's wrong ?
-
- This is usually caused by the heavy graphics: try removing some graphic effects like the
- pseudo-transparency. I have experimented that it happens almost always on 32-bit displays.
- Switching to 16 or 24 bits may also help.
-
-
-6.2 I don't see the channel popup menus anymore, what's wrong ?
-
- If something went wrong with KVIrc settings (a crash when the script settings
- were saved ?) or if you have messed with the scripting options and you
- want to get back the original behaviour (default script) you can choose
- "Scripting/Restore default script" from the KVIrc menu.
- (WARNING: It will erase any script modification you have made!)
- Update: starting with the cvs of 2005.01.17, KVIrc should be able to
- detect such situations and automatically suggest the re-installation of the
- default script.
-
-6.3 Does KVIrc support Themes?
-
- Yes, KVIrc now has introduced a Theme Manager. You can find it in the Option dialog.
- From there you can change the way KVIrc looks: fonts, colors, windows behaviour,
- icons, taskbars, and so on.
- Once you have changed the theme, you can save it, archive it (tar.bz2 or zip) and share with your friends,
- or send it to the KVIrc staff to see it published on the web site.
-
-
-6.4 I hate all that colors, what can I do about it ?
-
- By fiddling with the options you can make KVIrc appear even monochromatic.
- Go to Options/Theme and select the minimalist theme: it will set white text
- on black background and will disable the displaying of a lot of icons.
- This is a good starting point for you console addicted hackerz :D
-
-
-6.5 On Windows, how do I use firefox/opera/any_other_browser to open links instead of explorer ?
-
- Go to the "URL Handlers" options page and set
-
- run "C:\\path\\to\\your\\browser.exe" "$0"
-
- as url handler for the protocol you're interested in (maybe in all).
-
- Suepahfly suggests to use
-
- rundll32 url.dll,FileProtocolHandler "$0"
-
- as url handler to open the url in the default windows browser.
-
-
--------------------------------------------------------------------------------
-7. CRASH
--------------------------------------------------------------------------------
-
-7.1 KVIrc crashes when the multiline text input is opened (obsolete)
-
- If you have installed a new version of KVIrc over a previous installation
- br if you have changed the Qt libraries that KVIrc is linked to then
- it might be caused by a broken multiline text editor config.
- Try removing $HOME/.kvircssexeditorrc and starting KVIrc again.
- Update: this problem has been completely removed during late 2004 developments
- by completely rewriting the multiline input.
-
-
-7.2 What the heck is a gdb stack trace and how do I get it ?
-
- A gdb stack trace is a "photography" of the state of the KVIrc internals
- taken when a certain event has occured. The most common event
- is a program crash (Segmentation Fault).
- The stack trace helps (or even allows) the developers to locate the
- crash cause in the program sources.
- To obtain a gdb stack trace you must:
-
- - Compile KVIrc with the --enable-debug ./configure option.
- Without this switch the stack trace is USELESS.
- - Have a working installation of gdb (the gnu debugger)
- This is usually available on your distribution cd
- and you may already have it installed.
- - Run KVirc:
- # gdb kvirc
- When the gdb prompt appears write:
- # (gdb) run -f
- Make KVIrc crash: gdb will tell something about
- a signal received by the program. Write then:
- # (gdb) bt
- The text you see is the stack trace you wanted :)
- Copy+Paste+Send it to pragma at kvirc dot net or the mailing list.
-
-
-7.3 KVIrc hangs up, but doesn't crash. How do i report debug informations ?
-
- Use gdb to get a stack trace as in answer to question 7.2.
- Since your KVIrc doesn't crash you will have to interrupt the execution
- manually while it is hung up. You can do it by pressing CTRL+C in gdb.
-
-
-7.4 KVIrc exits by itself or simply "disappears" without any apparent reason.
-
- Yes. It probably crashed but you haven't noticed that.
- We NEED a gdb stack trace or a working procedure to reproduce the
- behaviour in order to hunt it.
-
-
-7.5 KVIrc dies randomly and "Alarm Clock" is printed in the console
-
- Try recompiling kvirc by adding the --with-ignore-sigalarm switch to
- ./configure. (Note: the reason of the incoming SIGALARM signals
- on certain systems is acually unknown. Please send hints to pragma at kvirc dot net).
-
-
-7.6 KVIrc dies when using alias(identify){ identify password; };
-
- This is infinite recursion: a programming error.
- Take a look at http://en.wikipedia.org/wiki/Infinite_loop , learn
- that once for all and fix your script.
-
+See doc/README
diff --git a/README b/README
index f0689bb66..c696c9aa1 100644
--- a/README
+++ b/README
@@ -1,396 +1 @@
-Currently this is the bleeding-edge development version of KVIrc.
-If you need stable software you'd better look at http://www.kvirc.net for
-the latest stable source packages.
-
-See the INSTALL file for installation instructions.
-
-###############################################################################
-
-
-23.03.2008: Release 3.4.0 "Virgo"
-###############################################################################
-
-Here we go with another release :)
-
-This one took a very long time but, well, finally it's here.
-
-Notable new features of this release include:
-
- - improved themeing support
- - better desktop integration
- - nicer support for many different IRC servers
- - a totally revised option layout
- - basic support for script "addons"
- - improved help subsystem
- - new nice statusbar applets
- - improved scripting engine
- - improved windows and macosx support
- - ....
-
-There is also a lot of small new details that you will
-find out by yourself while playing around and finally
-we obviously also have a huge number of bugfixes.
-
-This will be the last stable release of the 3.* series and also the last
-one using Qt3. From now on we'll be working on major version 4 and
-switching completly to Qt4. This release actually contains a preliminary
-Qt4 support and if you feel brave you might test it by passing
-the "hidden" --enable-qt swtich to configure.
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-
-
-
-
-
-###############################################################################
-General notes for the 3.4.0 release of the KVIrc IRC client
-###############################################################################
-
-- Installation
-
-The detailed installation instructions for the unix source distribution
-are in the INSTALL file.
-
-The Windows version needs no installation: you just need to run the
-installer executable and follow the proposed steps.
-
-Other documentation can be found in the doc subdirectory.
-
-- Reporting problems
-
-You are encouraged to "mess" with all the KVIrc options and features,
-and to report bugs and misbehaviours to the author.
-Anyway , before reporting a bug , ask yourself if it can be caused
-by some other part of your system: KVIrc uses many external libraries
-and (as all programs) relies on a correct system behaviour.
-Make sure that the libraries you use are the correct ones (!!!).
-
-When you encounter a problem please read the FAQ that is found
-in the distribution and also take a look at http://www.kvirc.net
-for a more recent version. If nothing helps to solve your problem
-then you might consider issuing a bug report.
-
-The best way to report a bug is to use the bugtrack system at
-http://svn.kvirc.de/kvirc/. Another way is to subscribe
-to the kvirc mailing list (see http://www.kvirc.net for instructions)
-and report the problem there. In both cases your bug report
-should be written in english and should contain most informations
-possible about the problem. If you have encountered a crash
-on an unix platform you should include a gdb backtrace (stack dump).
-The more gdb info you send, the biggest is the possibility for us
-to find the problem and maybe a solution. There is a FAQ entry
-that explains how to produce a suitable gdb backtrace.
-If you can't obtain a gdb backtrace (maybe because you're on
-a platform where gdb is not available) or if the problem
-is not related to a program crash then you should include
-a detailed procedure that leads to the manifestation of your problem.
-You should always include a short description of the platform you
-are running on: the operating system, the cpu (if not an x86),
-the version of the Qt library and the KDE environment (if relevant).
-You should also mention the relevant version of KVIrc and where
-you got it from (cvs, kvirc site, other sites).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-###############################################################################
-# Historic entries : just for the curious
-###############################################################################
-
-
-22.02.2005: Release 3.2.0 "Realia"
-###############################################################################
-
-Here we go again: 3.2.0 is out!
-
-The long road to stability has reached an important milestone. The previous
-releases of the 3.* series were the first ones after a huge codebase rewrite.
-3.2.0 is a result of several months of testing, debugging and improving.
-You will surely find it more stable, fast and user friendly.
-
-The old scripting toolbars have been replaced by the new "action" based
-approach. Besides the scripting flexibility of the actions we have also
-gained "drag & drop" toolbar editing. Just select "Settings -> Toolbars
--> Customize" from the menu and drag your favorite actions (buttons!) to the
-toolbars you wish. You can obviously create new toolbars on the fly and destroy
-old ones. There is a set of builtin actions and new ones can be added
-by the means of the action editor (another new feature) accessible from
-the Scripting menu. Play with it :)
-
-The UNICODE support has been improved yet more. Now you can set global,
-per-network, per-server and per-window encodings! There is also a new
-set of "smart" encoding engines that first try to decode the text as UTF8
-and in case of failure fallback to your standard encoding.
-
-The translators did a really good (and hard) job: we actually have KVIrc
-translated in 14 languages. I'm really happy about that.
-
-There is a new nice Instant-Messager-like notifier window that pops up when
-a query message arrives and KVIrc is not the active application. Yes,
-you can disable it, but I'm sure you will not. The notifier is also fully
-scriptable and we're working on a simple skinning engine for it.
-
-We also have perl support: now you can use perl from KVS and
-KVS from perl. The engine is still quite essential but with some hacking
-you can obtain really good results from it.
-
-The small IRC-Context-Display has been removed from the toolbar and has been
-replaced by a real status bar that is capable of displaying the same
-informations in a much cleaner way. The IRC-Context-Display is still
-available as an action so you can just drag it back in its place
-and hide the status bar to return to the previous release configuration.
-The statusbar also supports applets that can be added/dragged/removed by the
-means of the mouse: just try the right click.
-
-The scripting engine has been improved and there are several new object
-classes. An interesting new feature here is the $tr() function that allows
-your scripts to be translated with the standard gettext mechanism. The
-widely requested DCOP communication function has been implemented too.
-
-Out-of-the-box mircryption support has been added. The KVIrc's mircryption
-engine supports the standard ECB mode and the new CBC mode
-
-The DCC transfers have been improved and seveal related bugs have been
-fixed. It is also possible to limit the bandwidth for each transfer.
-
-There is a lot of minor new features that will make your IRC sessions funnier
-and more exciting: some of them are described in the ChangeLog file and
-other can be found by exploring the user interface.
-
-The small one-man-project has grown to the level of a small community.
-People from around the world have joined our development efforts and are
-constantly donating their time, eyes and bandwidth in order to make KVIrc
-a really good IRC client. Besides of simply giving you a free (as in freedom!)
-and nice program for chatting, they are giving you the great opportunity to see
-what's behind the scenes: you have the source code for the whole application.
-In practical terms this means more or less 300.000 lines of tested, debugged and
-commented C++ code, several perl scripts, dozens of makefiles and all the means
-that you need to produce a working KVIrc executable on all the supported platforms.
-There is a lot of knowledge (some people call it "technology" because it sells better)
-inside, ready to be acquired by an attentive reader. Don't forget that the freedom of
-building your own executable from the sources gives you the opportunity
-of verifying the source itself: for example you might be interested in verifying
-that KVIrc will not run any malware code on your machine nor will collect
-your private data and sell it to someone while you're happily chatting with a friend.
-We call it freedom, please respect it :)
-
-Our community is contantly growing and this release was possible thanks to the
-contribution of really many people. There are new mighty developers, new addicted
-fans and we have seen a lot of new users. The list of the major contributors
-can be found on the KVIrc site, in the about dialog and all around the sources.
-If you want to meet them please join the #kvirc channel on your favorite
-IRC network or subscribe to our mailing list.
-
-Ah, I was going to forget it: you might have noticed that there is
-a version bump from 3.0.1 to 3.2.0. It's a typo that we arbitrairly
-decided not to fix :)
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-
-
-
-31.05.2004: Release 3.0.1 "System Virtue"
-###############################################################################
-
-Here we go again: 3.0.1 is out!
-
-3.0.1 is mainly a bugfix release. 3.0.0 was the first public release
-after long time and even if we have tested it for a very long time
-some bugs didn't miss to jump out. 3.0.1 contains the fixes for these
-problems and adds some minor functionality. The detailed list of
-changes is in the ChangeLog file.
-
-The bugs for this release should be reported by using the bugtrack system available
-at http://bugtrack.kvirc.omnikron.net
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-
-17.04.2004: Release 3.0.0 "Awakening"
-###############################################################################
-
-After a couple of years from the last stable release, here we go again :)
-
-Since the 2.* releases the KVIrc source code has been almost completely
-rewritten. The major differences are summarized in the following list:
-
- - Multiserver: you can have multiple IRC connections in a single window
- - IPV6 support, also for DCC transfers
- - SSL support (also over IPV6)
- - UNICODE support for the user interface
- - Better scripting language
- - A basic Theme Engine
-
-The first major goal of the rewrite was "user-friendliness": you should be
-able to start an IRC session by selecting a server and clicking "Connect Now"
-just after the installation.
-The second major goal was "extreme-flexibility": you can customize the way KVIrc
-looks and the scripting language allows you to implement complex responses
-to IRC generated events.
-
-There is a lot of minor new features that will make your IRC sessions funnier
-and more exciting: some of them are described in the ChangeLog file and
-other can be found by exploring the user interface.
-
-This release was possible thanks to the contribution of many people.
-The list includes but is not limited to: Triskelios, Jan Wagner (spion),
-Juanjo Alvarez (Kane), Andrea Parrella (Yap), Luk De Ketelaere (Balboy),
-Sara D'Alia (Sbrokka), Ted Podgurski (alch3m1st), Ciro Guariglia (d3vah),
-Christoph Thielecke (Crissi), Eva Schaller (Penny), Niklas Luerßen (Tequila)
-Olle Hallnas (Crocodile), Francesco Meloni (Princo), Alessandro Rossini (Aronnax),
-Alex Grijalba Martinez (SuD), SuperbepS, Thilo Schulz (Thilo), Dworf,
-Jorma Tuomainen (Wiza), Michele Pinassi (O-Zone), Paolo Sammicheli (XDatap1),
-Ahinu, xevilstar, The Siena Linux Users Group, cyco & samweis,
-The Firenze Linux Users Group, all the subscribers of the KVIrc public mailing
-list and finally all the people from #kvirc on IRCNet and Freenode.
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-###############################################################################
-General notes for the 3.0.0 release of the KVIrc IRC client
-###############################################################################
-
-- Installation
-
-The detailed installation instructions for the unix source distribution
-are in the INSTALL file.
-
-The Windows version needs no installation: just unzip the archive in
-a suitable directory (such as C:\Program Files\) and run kvirc.exe from there.
-
-Other documentation can be found in the doc subdirectory.
-
-- Reporting problems
-
-In this release , the changes are so huge that it was not possible
-to test them in all the possible conditions. A 'normal' irc session
-should give you no problems.
-You are encouraged to "mess" with all the KVIrc options and features,
-and to report bugs and misbehaviours to the author.
-Anyway , before reporting a bug , ask yourself if it can be caused
-by some other part of your system: KVIrc uses many external libraries
-and (as all programs) relies on a correct system behaviour.
-Make sure that the libraries you use are the correct ones (!!!).
-
-- Contents of a good bug report:
-
-- A gdb backtrace in case of a segfault.
- The more gdb info you send , the biggest is the possibility
- for me to find the problem and maybe a solution.
-- A detailed description (read : procedure) to reproduce the bug
- Obviously if possible...
-- All informations on your system that you think that may be
- related to KVIrc and to the problem itself.
-
-To enable the gdb debugging you must compile kvirc with
-the --enable-debug configure option.
-
-
-
-03.01.2003: Release 3.0.0 beta2
-###############################################################################
-
-
-Here we go again!
-Yes , this is still called "beta" , but it should be stable on most machines.
-We're simply still missing some features planned for the final 3.0.0.
-
-Beta2 is being released as a source package.
-Binary packages (for windows and other platforms) might be available soon
-so check out the download section once in a while.
-
-90% of the 2.* branch features have been already re-implemented and there are
-many new things to play with.
-
-There is a preliminary UNICODE port: KVIrc UI starts to "speak" foreign (non Latin1) based languages.
-IRC character set mapping has been implemented (with 8 commonly used codepages for now).
-You should be able to use the Euro sign (ISO-8859-15), write Cyrillic (KOI-8-R , CP-1251 , ISO-8859-5),
-Greek (ISO-8859-7) and even use ideograms with the UTF-8 encoding.
-Character mapping selection is window based thus you should be able to write Cyrillic on #russian,
-Greek on #athens and write plain English on #kvirc in the same IRC session.
-
-Some modules have been removed from the main distribution. This is because the source
-tree has been growing too much: we are removing the non-strictly-necessary features
-and we will release them as separate packages.
-
-On the CVS you can already find the "nap" module that allows chatting (no file sharing yet)
-on OpenNap networks.
-
-The scriptcenter dialog has been splitted in smaller "pieces" and a GUI toolbar editor has been added.
-
-Finally there are tons of bugfixes and improvements: just play with it :)
-
-The bugs for this release should be reported by using the bugtrack system available
-at http://bugtrack.kvirc.omnikron.net.
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-###############################################################################
-
-
-
-25.06.2002
-###############################################################################
-
-3.0.0 beta1 (Codename: "Eve's Avatar")
-
-This release is "floating around" since a couple of months...
-Well... finally... here we go :)
-This is not stable yet, but many people use it and we get a really small number of
-critical reports: this means that you probably can use it for your daily chatting.
-
-Beta1 is being released as a source package and a binary distro for the windows platform.
-Binary packages for other platforms might be available soon so check out the download section once in a while.
-
-If you had previous KVIrc installations and you experience problems (missing menus for example)
-try to remove (or better just rename) the old local configuration directory (locaed
-in your home dir probably) and to restart KVIrc.
-
-80% of the 2.* branch features have been already re-implemented and there is a whole
-bunch of new things to play with. One of the greates "ChangeLog" entries is the preliminary
-SSL support that works for IRC and DCC CHAT (both over IPv4 and IPv6).
-CTCP PAGE support has been added and there were some major changes to the variable
-management in the scripting language (added "real" array support and changed the syntax for the dictionaries).
-Those of you that like colors can now enable the icon-like display of emoticons
-and play with icons in the text sent through the server (a new escape code).
-The documentation has been reworked a little bit more, there are some new modules and
-a lot of new options to try.
-
-The windows version is not completely in sync with the linux one thus you might find
-that it lacks some features (mainly advanced scripting language, sound support etc...).
-We hope to have a completely synchronized versions on both platforms for the time
-of 3.0.0 final.
-
-The bugs for this release should be reported by using our new shiny bugtrack system available
-at http://bugtrack.kvirc.omnikron.net.
-
-Well..
-That's all folks!
-
-Have fun :)
-Szymon Stefanek and The KVIrc Development Team
-
-###############################################################################
-
+See doc/README
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
new file mode 100644
index 000000000..fed795318
--- /dev/null
+++ b/doc/CMakeLists.txt
@@ -0,0 +1,80 @@
+# CMakeLists for doc/
+
+SET(license COPYING)
+SET(howto
+ README
+ FAQ
+ INSTALL-MacOS.txt
+ firefox.hack.txt
+ hackers.guide.txt
+ scripting.faq.txt
+ themes.howto.txt
+ translations.howto.txt
+ ui-style.tips.txt
+ win32.compiling.1.2.txt
+)
+SET(scriptexamples
+ README
+ antiidle.kvs class1.kvs exprtest.kvs
+ #
+ kvisounds/
+ kvisounds/kvisounds.kvs
+ kvisounds/waves/
+ kvisounds/waves/bip.au
+ kvisounds/waves/cuac.au
+ kvisounds/waves/deop.au
+ kvisounds/waves/join.au
+ kvisounds/waves/kick.au
+ kvisounds/waves/login.au
+ kvisounds/waves/op.au
+ kvisounds/waves/ring.au
+ kvisounds/waves/send.au
+ kvisounds/waves/transfer.au
+ #
+ label1.kvs mail.kvs minesweeper.kvs
+ mp3_kdemediaplayers.kvs mp3_kdemediaplayers.txt
+ mp3info.kvs
+ #
+ mp3share/
+ mp3share/mp3share.kvs
+ mp3share/mp3share_icon.png
+ #
+ newkvstest.kvs obdumptree.kvs
+ #
+ playing/
+ playing/playing.kvs
+ playing/playing_icon.png
+ #
+ popup1.kvs popup2.kvs popup3.kvs popup4.kvs relay.kvs
+ runmenu.kvs signal1.kvs simplehttp.kvs socket1.kvs
+ srfs.kvs switchstress.kvs timer1.kvs
+ #
+ tutorial/
+ tutorial/minesweeper1.kvs
+ tutorial/minesweeper2.kvs
+ tutorial/minesweeper3.kvs
+ tutorial/minesweeper4.kvs
+ tutorial/minesweeper5.kvs
+ tutorial/minesweeper6.kvs
+ tutorial/minesweeper7.kvs
+ #
+ widget1.kvs widget2.kvs
+)
+
+# Install target
+IF(UNIX)
+ IF(APPLE)
+ INSTALL(FILES ${license} DESTINATION ${INSTALL_PREFIX}/Contents/Resources/license)
+ INSTALL(FILES ${howto} DESTINATION ${INSTALL_PREFIX}/Contents/Resources/doc)
+ INSTALL(FILES ${scriptexamples} DESTINATION ${INSTALL_PREFIX}/Contents/Resources/doc/scriptexamples)
+ ELSE()
+ # Assume linux
+ INSTALL(FILES ${license} DESTINATION ${INSTALL_PREFIX}/share/kvirc/${VERSION_BRANCH}/license/)
+ INSTALL(FILES ${howto} DESTINATION ${INSTALL_PREFIX}/share/kvirc/${VERSION_BRANCH}/doc/)
+ INSTALL(FILES ${scriptexamples} DESTINATION ${INSTALL_PREFIX}/share/kvirc/${VERSION_BRANCH}/doc/scriptexamples)
+ ENDIF()
+ELSEIF(WIN32)
+ #INSTALL(FILES ${license} DESTINATION ${INSTALL_PREFIX}/ ??? /${VERSION_BRANCH}/license/)
+ #INSTALL(FILES ${howto} DESTINATION ${INSTALL_PREFIX}/ ??? /${VERSION_BRANCH}/doc/)
+ #INSTALL(FILES ${scriptexamples} DESTINATION ${INSTALL_PREFIX}/ ??? /${VERSION_BRANCH}/doc/scriptexamples)
+ENDIF()
diff --git a/doc/FAQ b/doc/FAQ
new file mode 100644
index 000000000..c9355dbfe
--- /dev/null
+++ b/doc/FAQ
@@ -0,0 +1,712 @@
+1. PROJECT RELATED QUESTIONS
+
+1.1 What is KVIrc ? What the "KVIrc" name stands for ?
+1.2 Why KVIrc is not totally integrated in KDE ?
+
+
+2. COMPILATION
+
+2.1 I can't compile kvirc from cvs, what's wrong?
+2.2 Internal Compiler Errors ?
+2.3 On Mandrake 10.0 (or other) KVIrc fails to start
+ saying that it can't find libkvisetup.so.
+2.4 I got 'amarokInterface.cpp:29:31: amarokInterface.moc: No such file or directory'. Whats going wrong?
+2.5 Configure complains about a missing libdl.so but I seem to have it
+
+
+3. INSTALLATION
+
+3.1 There is a problem during package installation/creation
+ file /usr/share/services/irc.protocol from install
+ kvirc-version.package conflicts with file from package xxx
+
+
+4. IRC
+
+4.1 How do i join a channel ?
+4.2 How do i autojoin channels ?
+4.3 How do I enable automatic NickServ identification ?
+4.4 I can't see my national characters, what's wrong ?
+4.5 I can't connect to an IPV6 server, what's wrong ?
+4.6 /me doesn't support the '$' character, what's wrong ?
+4.7 /me doesn't support the '"' (double quote) character, what's wrong ?
+4.8 /me can't contain the ';' character, what's wrong ?
+4.9 I try to do a /whois on nick blah\ but i get the reply for blah (without the slash)
+4.10 What is AVATAR protocol ? Is there any documentation about it ?
+4.11 The log files seem to be saved randomly, when I open a log
+ I can see only a part of the text that actually should be there
+4.12 The DCC transfers seem to be interrupted after the first few bytes:
+ KVIrc says that the remote end has closed the connection.
+
+
+5. ADVANCED IRC FEATURES
+
+5.1 How do I connect to an SSL-enabled IRC server ?
+5.2 How do I use DCC over SSL ?
+5.3 Do I need a SSL certificate ?
+5.4 How do I create a SSL certificate ?
+5.5 I can't get KVIrc to use my SSL certificate in a DCC, what's wrong ?
+5.6 KVIrc crashes when a certificate is used under Windows, what's wrong ?
+5.7 How do I enable mircryption (encryption in general) for a specific channel ?
+5.8 How do I execute a process and send its output to a channel ?
+5.9 How do I keep channels and queries open after a disconnect ?
+5.10 I have an unreliable ISP connection but KVIrc takes a really long
+ time to detect a disconnection and reconnect.
+5.11 I'm in a LAN and KVIrc uses a wrong IP address in dcc transfers
+
+6. APPAREANCE
+
+6.1 On Windows KVIrc seems to slow-down sometimes, what's wrong ?
+6.2 I don't see the channel popup menus anymore, what's wrong ?
+6.3 Does KVIrc support Themes?
+6.4 I hate all that colors, what can I do about it ?
+6.5 On Windows, how do I use firefox/opera/any_other_browser to open links instead of explorer ?
+
+
+7. CRASHES
+
+7.1 KVIrc crashes when the multiline text input is opened (obsolete)
+7.2 What the heck is a gdb stack trace and how do I get it ?
+7.3 KVIrc hangs up, but doesn't crash. How do i report debug informations ?
+7.4 KVIrc exits by itself or simply "disappears" without any apparent reason.
+7.5 KVIrc dies randomly and "Alarm Clock" is printed in the console
+7.6 KVIrc dies when using alias(identify){ identify password; }
+
+--------------------------------------------------------------------------------
+1. PROJECT RELATED QUESTIONS
+--------------------------------------------------------------------------------
+
+
+1.1 What is KVIrc ?
+
+ KVIrc is a cross-platform Internet Relay Chat client.
+ The name stands for K Visual Internet Relay Chat client.
+ The K prefix comes from the old times, when KVIrc was bound to the
+ KDE project and depended on the KDE libraries to run. Actually this
+ is not true anymore since KVIrc depends only on the Qt library from
+ TrollTech and runs also on platforms where KDE can't run.
+
+
+1.2 Why KVIrc is not totally integrated in KDE ?
+
+ First of all read the answer for question 1.1.
+ We could provide a more complete integration by the means of conditional
+ compilation but since it would require additional efforts to synchronize
+ the KVIrc sources with the KDE library changes we choose not to do it.
+ If you wish to contribute some code that better integrates KVIrc with
+ KDE you're welcome to do so: we will happily accept your patches as long
+ as you promise to mantain them :)
+
+
+--------------------------------------------------------------------------------
+2. COMPILATION
+--------------------------------------------------------------------------------
+
+2.1 I can't compile kvirc from svn, what's wrong?
+
+ Have you checked the requirements ?
+ *Carefully* read the INSTALL file that comes with the distribution:
+ it contains the informations to solve 95% of the problems that
+ you may encounter. You may also try digging in our mailing list
+ archive: many problems have been solved there.
+ If you still can't get it to work please either subscribe to the KVIrc
+ mailing list (see www.kvirc.net) and report the problem there or join #kvirc
+ on IRCNet and ask the channel members for a hint.
+
+
+2.2 Internal Compiler Errors ?
+
+ Compile errors like this:
+ In file [somefile]:[someline] internal error:
+ Segmentation fault
+ Please submit a full bug report,
+ with preprocessed source if appropriate.
+ See <URL:http://bugzilla.redhat.com/bugzilla/> for instructions.
+
+ This error can have multiple reasons.
+ 1) A compiler bug: my GCC 3.2 20020903 (default on RH 8.0) spits
+ out 5-6 of them daily. Usually it is solved by simply restarting the "make" command.
+ If it doesn't go away or if it gets really frequent and annoying you might try to upgrade the compiler.
+ 2) A memory corruption: this is really frequent: one of your memory banks is spitting random bytes
+ sometimes. Usually the problems come out under heavy system load (kernel, KDE or kvirc compilation for example).
+ You can check for memory corruption by trying different RAM modules (or removing them one at a time to discover
+ the broken bank). You can also try a program called memtest and a kernel
+ patch that can force the broken memory banks to be ignored by the kernel (allocated permanently to a dummy kernel task).
+ These tools can be found by digging the web with your favorite search engine.
+ 3) A deeper hardware problem: if upgrading the compiler and changing memory banks doesn't help then
+ it *might* be a deeper hardware problem: bus errors , faulty IDE (or SCSI) controller or even buggy CPU...
+ Well....
+
+
+2.3 On Mandrake 10.0 (or other) KVIrc fails to start
+ saying that it can't find libkvisetup.so.
+
+ Mandrake 10.0 default libtool package is broken. Either upgrade
+ the libtool package or try to run ./autogen.sh --bundled-libtool
+ and then recompile (./configure, make, make install).
+ This *might* apply to other systems too.
+
+
+2.4 I got 'amarokInterface.cpp:29:31: amarokInterface.moc: No such file or directory'. Whats going wrong?
+
+ You have to install qt3 devel tools which include uic and moc. If installed, be sure that uic and moc are in PATH.
+
+
+2.5 Configure complains about a missing libdl.so but I seem to have it
+
+ The most common causes are two:
+
+ 1) You have libdl.so.X (where X is usually a number or a set of numbers) but not libdl.so
+
+ You need to do a symbolic link from libdl.so.X to libdl.so. You do it by entering the directory
+ where libdl.so.X is and issuing a ln -s command, for example:
+
+ # cd /lib
+ # ls libdl*
+ # ln -s libdl.so.2 libdl.so
+
+ Then try to ./configure again
+
+ 2) You don't have a c++ compiler installed
+
+ The libdl test is the first ./configure test made with a c++ compiler.
+ The confirmation for this error can be found in the config.log file
+ where you can find lines similar to the following:
+
+ configure:21637: g++ -o conftest conftest.cc -rdynamic -ldl >&5
+ ./configure: line 1: g++: command not found
+ configure:21643: $? = 127
+ configure: failed program was:
+ ...
+
+ Your distribution probably ships the c++ frontend to gcc in a package
+ separated from gcc itself. The package might be also named g++.
+ Look it up on your installation CD and install it, then ./configure again.
+
+-------------------------------------------------------------------------------
+3. INSTALLATION
+-------------------------------------------------------------------------------
+
+3.1 There is a problem during package installation/creation
+ file /usr/share/services/irc.protocol from install
+ kvirc-version.package conflicts with file from package xxx
+
+ This is a known issue with all types of packages that handle
+ file conflicts. KVIrc installs the irc protocol handler for KDE
+ and the same is done by ksirc and kopete (and maybe others).
+ There is no particular reason for KVIrc to fix it in the core
+ distribution (and there is also no simple way to do it).
+ Either the package maker must exclude the irc.protocol
+ file from installation or mark it as "optional" in some way or the
+ users must use some sort of "force" flag during the installation.
+
+
+-------------------------------------------------------------------------------
+4. IRC
+-------------------------------------------------------------------------------
+
+4.1 How do i join a channel ?
+
+ Type "/join #channelname"
+
+
+4.2 How do i autojoin channels?
+
+ There are many ways to do it.
+ For example:
+ Select "Scripting/Events" from the KVIrc menu.
+ Lookup the "OnIrc" entry in the left pane of the window that pops up.
+ Right-click on that entry and select "Add handler".
+ A "default" handler will be created. In the right pane write:
+ join #kvirc
+ join #kde-users
+ join #somechannel
+ ....
+ Now click OK and you're done: you have just created a handler for an event.
+ Reconnect to a server and KVIrc will autojoin the channels that you have selected.
+ Another option (nicer, if you use several servers) is to go to the servers options
+ page and click the button labeled 'Advanced' on the entry for the single server.
+ There is a server-specific "On connect execute..." event.
+
+
+4.3 How do I enable automatic NickServ identification ?
+
+ KVIrc supports two kind of NickServ identification rules: per-network and global.
+ The per-network rules can be accessed from the server options page.
+ You need to select a network in the list view (not a server!) and then click
+ "Advanced...". In the dialog that appears there is a NickServ tab
+ on that you can add your identification rules. Adding a rule
+ should be straightforward (if you stop the mouse over an item you will likely get a small
+ tool tip with the explaination). Each rule is composed of:
+ - the nickname that is being identified: the rule will be applied only
+ when your current nickname corresponds to this one.
+ - a nick server user mask that must be matched by the NickServ user
+ in order for him to be recognized as the real NickServ asking for
+ identification. You will probably use something like NickServ!service@*
+ - a message regular expression that must be matched by the message
+ that the NickServ sends when requesting the identification.
+ You will probably use something like "If this is your nick,
+ identify yourself with /ns IDENTIFY password"
+ - an identification command that will be executed when all the rules
+ above match. You will probably use something like "ns IDENTIFY yourpassword"
+ The global rules can be created in the IRC::NickServ page of the options dialog
+ (accessible from the Settings/Configure KVIrc... menu). The main difference
+ is that each rule has a server mask that must be matched by the current
+ server name for the rule to be applied.
+ KVIrc first looks in the per-network rules and if none matches it looks
+ in the global rules.
+
+
+4.4 I can't see my national characters, what's wrong ?
+
+ There are several ways to fix your national characters display.
+ General encoding:
+ Open the options dialog and go to the "Encoding" page.
+ You can set explicitly the encoding to be used for the whole application.
+ If you choose "Use Language Encoding" KVIrc will try to guess the
+ encoding from your system settings. If this doesn't work then the reasons
+ may be:
+ - Your system settings are wrong
+ You need to fix them
+ - Your server applies some specific encoding to the data
+ See "Server encoding"
+ - You're chatting with people that have different system settings
+ See "Channel & Query encoding"
+ Server encoding
+ Besides the general encoding you can set one encoding per server.
+ This is done in the server options dialog (Click Advanced...).
+ The encoding will be applied to all the text that comes from
+ and goes to the server. If you choose "Use system encoding"
+ then the server will inherit the "General encoding" value above.
+ If this doesn't work then you have either set it incorrectly or
+ you are chatting with people that use different encodings.
+ In this case see "Channel & Query encoding"
+ The server encoding is used also to decode nicknames and
+ channel names on servers that support it.
+ Channel & Query encoding
+ Besides the general and server encoding you can set also per-window
+ encoding in channels and queries. This encoding will be applied
+ ONLY to the text sent to or received from that channel or query.
+ This feature is useful when chatting over a non unicode aware
+ IRC server (nearly all at the time of writing) with people
+ that have settings different than your general defaults or
+ the server default.
+
+ Keep in mind that IRC has a MAJOR problem with character encoding
+ and in fact the formal definition of the protocol requires it
+ to be only 7bit safe. This means that on some servers you may
+ see your national characters eaten by the IRC network and there
+ is almost nothing you can do about that...
+
+ UTF-8 is the best encoding we can get on IRC. Try to convince
+ other people to use it :)
+
+
+4.5 I can't connect to an IPV6 server, what's wrong ?
+
+ First of all make sure that your IPV6 stack is setup correctly.
+ Can you ping6 other IPV6 other machines ?
+
+ # ping6 www.6bone.net
+
+ Is the IPV6 support enabled in your kvirc executable ?
+ To find it out , try
+
+ /echo $features
+
+ in the KVIrc commandline. You should get a comma separated list of
+ features compiled in the executable. If the list contains "IPv6" then
+ the support is compiled in, otherwise you must check your compilation
+ stage to guess what went wrong.
+ To connect to an IPV6 server you can use /server -i <servername>
+ If you can ping other IPV6 machines, the IPv6 support is compiled in your
+ executable and you still can't connect to an *existing* IPv6 server then
+ you may have found a bug :) Report it.
+
+
+4.6 /me doesn't support the '$' character, what's wrong ?
+
+ This is NOT a bug : this is a feature : kvirc supports (and substitutes!) variables in all the commands.
+ You can escape your $ sign by using the backslash character: /me has gained \$100 will work correctly
+
+
+4.7 /me doesn't support the '"' (double quote) character, what's wrong ?
+
+ This is NOT a bug : this is a feature : a string enclosed in double quotes will have its whitespace preserved
+ while the other strings will have the whitespace simplified. This is valid for ANY command.
+ You can escape your " sign by using the backslash character: /me feels a bit \"foo\" will work correctly
+
+
+4.8 /me can't contain the ';' character, what's wrong ?
+
+ This is NOT a bug : this is a feature : kvirc supports multiple commands on a single line and uses ';' as a command
+ separator. You can escape your ';' sign by using the backslash character: /me is hungry \;) will work correctly.
+
+
+4.9 I try to do a /whois on nick blah\ but i get the reply for blah (without the slash)
+
+ In KVIrc /whois is a scripting command and the nickname is a command parameter.
+ In scripting commands the backslash is a special character with several "escape"
+ meanings. To include a literal backslash inside a parameter you MUST double it,
+ thus the correct command to issue is /whois blah\\
+
+
+4.10 What is AVATAR protocol? Is there any documentation about it ?
+
+ AVATAR is a simple CTCP based protocol that allows associating images (avatars)
+ to IRC users. The protocol definition is simple:
+
+ - CTCP AVATAR QUERY:
+ :<source> PRIVMSG <target> :<0x01>AVATAR<0x01>
+ Queries the avatar of the <target>.
+ - CTCP AVATAR REPLY:
+ :<source> NOTICE <target> :<0x01>AVATAR <avatar_url><0x01>
+ Asserts that the <source> user's avatar is located at <avatar_url>
+ that usually will be something like http://server.domain.top/avatarimage.jpg.
+
+ KVIrc supports also DCC based avatars that are simply "offered" to the
+ remote users. In this case the <avatar_url> does not contain the http://
+ prefix but is a simple file name. The remote users request the avatars
+ by issuing a DCC GET command. This is an useful but secondary extension
+ and can be ignored by simple implementations. If you need more informations
+ about this method please write to pragma at kvirc dot net.
+
+
+4.11 The log files seem to be saved randomly, when I open a log
+ I can see only a part of the text that actually should be there
+
+ KVIrc does not explicitly flush the log files while writing them. The OS
+ (or the underlying C library) does the flush operation when necessary.
+ This means that blocks of the log file will be added to the file on disk
+ only once in a while. If you really need to see the logs in real time
+ then you can explicitly flush the log files by scripting.
+ Just add a script like this to your OnKVIrcStartup event:
+
+ timer(flushlogfiles,30000)
+ {
+ foreach(%x,$window.list(all,any))
+ {
+ if($log.file(%x))
+ {
+ echo -w=%x "Flushing log file...";
+ log.flush -w=%x;
+ }
+ }
+ }
+
+ The script above will flush all the log files every 30 seconds. You may
+ remove the echo statement if you're annoyed by the output :)
+
+
+4.12 The DCC transfers seem to be interrupted after the first few bytes:
+ KVIrc says that the remote end has closed the connection.
+
+ Make sure that you don't have activated the "Send ACK for byte 0"
+ option in "Options->DCC->File Transfer->Advanced".
+ This option should be used ONLY IF you have problems without.
+
+
+
+
+-------------------------------------------------------------------------------
+5. ADVANCED IRC FEATURES
+-------------------------------------------------------------------------------
+
+
+5.1 How do I connect to an SSL-enabled IRC server ?
+
+ Use /server -s <servername>
+ It should work also over IPV6.
+ If it doesn't work then your executable might have no SSL support compiled in.
+ To find it out type
+
+ /echo $features
+
+ in the KVIrc commandline. If "SSL" is not in the list then you must go back
+ to the compilation phase and see what went wrong.
+
+
+5.1 How do I use DCC over SSL ?
+
+ /dcc.chat -s <nickname> should work
+
+
+5.3 Do I need a SSL certificate ?
+
+ No you shouldn't need it, but you can use it if you want.
+
+
+5.4 How do I create a SSL certificate ?
+
+ A test self-signed certificate can be created by using the CA.pl perl script included
+ in the OpenSSL distribution. It will be something like CA.pl -newcert
+
+
+5.5 I can't get KVIrc to use my SSL certificate in a DCC, what's wrong ?
+
+ The SSL protocol doesn't require the "client" to send the certificate: it is
+ sent only if the "server side" requests it (it is not the KVIrc case).
+ The server side may have a certificate and you can set it in the SSL options page.
+ If your Private Key is stored in the certificate file pass the same filename
+ to both Certificate and PrivateKey option.
+ Remember to set the password if needed.
+
+
+5.6 KVIrc crashes when a certificate is used under Windows, what's wrong ?
+
+ This is probably a bug of the SSL dll shipped with the windows version of KVIrc.
+ You might try with a different version of this dll.
+
+
+5.7 Can I encrypt my messages?
+(or: How do I enable mircryption (encryption in general) for a specific channel?)
+
+ KVIrc supports encryption for channels, queries and dcc chats by the means
+ of text transformation engines. You can access the list of the engines
+ by clicking the button with the yellow lock in the upper right corner
+ of the window. In the pane that will appear select "use text transformation"
+ and then choose one of the available engines.
+ The Mircryption engine is an implementation of the mircryption protocol and
+ supports both ECB and CBC mode. There is also a wide variety of Rijndael based encryption
+ engies as well as some funky other text transform tricks.
+ Most of the engines will need a pair of keys to encrypt and decrypt text
+ and in most cases you will use the same key for both encrypting and
+ decrypting. In the particular case of Mircryption you can enable
+ CBC mode by prefixing your key(s) with the "cbc:" string.
+ Once you have entered the keys just click on OK and start "talking" in the
+ window. Any encrypted text will have a "lock" overlay in his icon.
+ If you want to avoid encrypting a particular text line (maybe because
+ you want to allow everyone on a channel to read it) you can start
+ the line with a CTRL+P character.
+
+
+5.8 How do I execute a process and send its output to a channel ?
+
+ The straight way to do this is
+
+ /exec("your command here"){ say $1; }
+
+ Since it is not too much "user friendly", you can alias it in
+ the following way:
+
+ alias(runandsay)
+ {
+ exec($0-){ say $1; }
+ }
+
+ Then you would simply run
+
+ /runandsay cat /proc/cpuinfo
+
+ in the channel window you want the output sent to.
+
+ Keep in mind that this is a "brute" approach and I'm sure that after
+ reading some documentation (start from /help exec) you will be able to
+ find more elaborate and nice ways to send a process output to a channel/query.
+
+
+5.9 How do I keep channels and queries open after a disconnect ?
+
+ KVIrc can keep your channels and queries open when the connection terminates
+ unexpectedly. This will probably make sense only if you plan to
+ reconnect to the same server or at least the same network (either manually
+ or automatically).
+
+ An "unexpected disconnect" is a connection termination not explicitly caused by
+ the KVIrc user. This means that the connection is interrupted, either
+ by the networking stack or by the remote server, without the user
+ having sent a QUIT message (by the means of the /quit command or by pressing
+ the "disconnect" button in the toolbar).
+
+ All this because the normal behaviour of a /QUIT command is, yes, to quit
+ your current connection without leaving traces of it.
+
+ To keep the channels and queries open you just need to select the
+ relative options in the "Connection" page of the options dialog
+ (on unexpected disconnect: "Keep channels open" an/or "Keep queries open").
+
+ Then you might also select "Automatically reconnect", "Rejoin channels
+ after reconnect" and "Reopen queries after reconnect" to bring your
+ "dead windows" to life again :)
+
+ Finally, you can simulate an "unexpected disconnection" by using the -u switch
+ of the /quit command. This might be useful when you want to explicitly
+ quit your connection while leaving the channels and queries open... maybe
+ because you need to renew the connection to your ISP before reconnecting ;)
+
+
+5.10 I have an unreliable ISP connection but KVIrc takes a really long
+ time to detect a disconnection and reconnect.
+
+ KVIrc doesn't detect itself that the connection has dropped until your
+ kernel explicitly times out. KVIrc measures lag, instead, that will
+ probably grow up a lot when the connection has dropped.
+ You can write a handler for the OnLagCheck event that will detect
+ the lag growing over a certain threshold and reconnect.
+ This involves opening the event editor, selecting OnLagCheck
+ and choosing "Add handler" from the right mouse menu.
+ In the handler write:
+
+ if($1 > 30000){ quit -f -u; }
+
+ 30000 is just a sample threshold (it means 30000 milliseconds!), replace
+ it with a value of your choice.
+ quit -f -u will close the current connection immediately (-f = force)
+ and will simulate an "unexpected disconnection" condition (-u = unexpected).
+ If you then enable automatic reconnection (see answer for question 5.9)
+ in the options dialog, KVIrc will automatically reconnect and rejoin channels.
+
+
+5.11 I'm in a LAN and KVIrc uses a wrong IP address in dcc transfers
+
+ KVIrc supports a couple of methods for guessing the right IP address for
+ DCC transfers: you only have to guide it a bit :)
+
+ The first thing to try is "Guess address from IRC when unroutable" (Options->DCC).
+ This will perform a lookup on your own IRC mask once you connect
+ to an IRC server and use the address as source in DCC transfers.
+ (You need to reconnect to the server to make this option work!)
+ This trick will fail when your hostmask is cloaked (mode +x on recent IRC servers):
+ KVIrc will tell you that it couldn't look up the hostname and give up.
+
+ In this case you might try to set a fixed address to be sent as source
+ in the DCC transfers: you just need to fill in the *IP address* of your
+ router in the option field. This field doesn't support hostname lookups
+ and it won't update automatically when you router's IP changes.
+ However, if you router's IP has a dns entry, you can ask KVIrc to fill
+ this field with a simple script to be performed at every connection.
+
+ event(OnIRCConnectionEstabilished,updatedccsource)
+ {
+ ahost(yourrouterhostname.dyndns.org)
+ {
+ option boolDCCSendFakeAddressByDefault 1
+ if($1)option stringDefaultDCCFakeAddress $2
+ else echo "Couldn't look up the router's hostname"
+ }
+ }
+
+ When transferring files to other KVIrc clients you may also try the
+ DCC RSEND protocol instead of DCC SEND. It will ask the remote end
+ to listen instead.
+
+-------------------------------------------------------------------------------
+6. APPAREANCE
+-------------------------------------------------------------------------------
+
+6.1 On Windows KVIrc seems to slow-down sometimes, what's wrong ?
+
+ This is usually caused by the heavy graphics: try removing some graphic effects like the
+ pseudo-transparency. I have experimented that it happens almost always on 32-bit displays.
+ Switching to 16 or 24 bits may also help.
+
+
+6.2 I don't see the channel popup menus anymore, what's wrong ?
+
+ If something went wrong with KVIrc settings (a crash when the script settings
+ were saved ?) or if you have messed with the scripting options and you
+ want to get back the original behaviour (default script) you can choose
+ "Scripting/Restore default script" from the KVIrc menu.
+ (WARNING: It will erase any script modification you have made!)
+ Update: starting with the cvs of 2005.01.17, KVIrc should be able to
+ detect such situations and automatically suggest the re-installation of the
+ default script.
+
+6.3 Does KVIrc support Themes?
+
+ Yes, KVIrc now has introduced a Theme Manager. You can find it in the Option dialog.
+ From there you can change the way KVIrc looks: fonts, colors, windows behaviour,
+ icons, taskbars, and so on.
+ Once you have changed the theme, you can save it, archive it (tar.bz2 or zip) and share with your friends,
+ or send it to the KVIrc staff to see it published on the web site.
+
+
+6.4 I hate all that colors, what can I do about it ?
+
+ By fiddling with the options you can make KVIrc appear even monochromatic.
+ Go to Options/Theme and select the minimalist theme: it will set white text
+ on black background and will disable the displaying of a lot of icons.
+ This is a good starting point for you console addicted hackerz :D
+
+
+6.5 On Windows, how do I use firefox/opera/any_other_browser to open links instead of explorer ?
+
+ Go to the "URL Handlers" options page and set
+
+ run "C:\\path\\to\\your\\browser.exe" "$0"
+
+ as url handler for the protocol you're interested in (maybe in all).
+
+ Suepahfly suggests to use
+
+ rundll32 url.dll,FileProtocolHandler "$0"
+
+ as url handler to open the url in the default windows browser.
+
+
+-------------------------------------------------------------------------------
+7. CRASH
+-------------------------------------------------------------------------------
+
+7.1 KVIrc crashes when the multiline text input is opened (obsolete)
+
+ If you have installed a new version of KVIrc over a previous installation
+ br if you have changed the Qt libraries that KVIrc is linked to then
+ it might be caused by a broken multiline text editor config.
+ Try removing $HOME/.kvircssexeditorrc and starting KVIrc again.
+ Update: this problem has been completely removed during late 2004 developments
+ by completely rewriting the multiline input.
+
+
+7.2 What the heck is a gdb stack trace and how do I get it ?
+
+ A gdb stack trace is a "photography" of the state of the KVIrc internals
+ taken when a certain event has occured. The most common event
+ is a program crash (Segmentation Fault).
+ The stack trace helps (or even allows) the developers to locate the
+ crash cause in the program sources.
+ To obtain a gdb stack trace you must:
+
+ - Compile KVIrc with the --enable-debug ./configure option.
+ Without this switch the stack trace is USELESS.
+ - Have a working installation of gdb (the gnu debugger)
+ This is usually available on your distribution cd
+ and you may already have it installed.
+ - Run KVirc:
+ # gdb kvirc
+ When the gdb prompt appears write:
+ # (gdb) run -f
+ Make KVIrc crash: gdb will tell something about
+ a signal received by the program. Write then:
+ # (gdb) bt
+ The text you see is the stack trace you wanted :)
+ Copy+Paste+Send it to pragma at kvirc dot net or the mailing list.
+
+
+7.3 KVIrc hangs up, but doesn't crash. How do i report debug informations ?
+
+ Use gdb to get a stack trace as in answer to question 7.2.
+ Since your KVIrc doesn't crash you will have to interrupt the execution
+ manually while it is hung up. You can do it by pressing CTRL+C in gdb.
+
+
+7.4 KVIrc exits by itself or simply "disappears" without any apparent reason.
+
+ Yes. It probably crashed but you haven't noticed that.
+ We NEED a gdb stack trace or a working procedure to reproduce the
+ behaviour in order to hunt it.
+
+
+7.5 KVIrc dies randomly and "Alarm Clock" is printed in the console
+
+ Try recompiling kvirc by adding the --with-ignore-sigalarm switch to
+ ./configure. (Note: the reason of the incoming SIGALARM signals
+ on certain systems is acually unknown. Please send hints to pragma at kvirc dot net).
+
+
+7.6 KVIrc dies when using alias(identify){ identify password; };
+
+ This is infinite recursion: a programming error.
+ Take a look at http://en.wikipedia.org/wiki/Infinite_loop , learn
+ that once for all and fix your script.
+
diff --git a/doc/README b/doc/README
new file mode 100644
index 000000000..f0689bb66
--- /dev/null
+++ b/doc/README
@@ -0,0 +1,396 @@
+Currently this is the bleeding-edge development version of KVIrc.
+If you need stable software you'd better look at http://www.kvirc.net for
+the latest stable source packages.
+
+See the INSTALL file for installation instructions.
+
+###############################################################################
+
+
+23.03.2008: Release 3.4.0 "Virgo"
+###############################################################################
+
+Here we go with another release :)
+
+This one took a very long time but, well, finally it's here.
+
+Notable new features of this release include:
+
+ - improved themeing support
+ - better desktop integration
+ - nicer support for many different IRC servers
+ - a totally revised option layout
+ - basic support for script "addons"
+ - improved help subsystem
+ - new nice statusbar applets
+ - improved scripting engine
+ - improved windows and macosx support
+ - ....
+
+There is also a lot of small new details that you will
+find out by yourself while playing around and finally
+we obviously also have a huge number of bugfixes.
+
+This will be the last stable release of the 3.* series and also the last
+one using Qt3. From now on we'll be working on major version 4 and
+switching completly to Qt4. This release actually contains a preliminary
+Qt4 support and if you feel brave you might test it by passing
+the "hidden" --enable-qt swtich to configure.
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+
+
+
+
+
+###############################################################################
+General notes for the 3.4.0 release of the KVIrc IRC client
+###############################################################################
+
+- Installation
+
+The detailed installation instructions for the unix source distribution
+are in the INSTALL file.
+
+The Windows version needs no installation: you just need to run the
+installer executable and follow the proposed steps.
+
+Other documentation can be found in the doc subdirectory.
+
+- Reporting problems
+
+You are encouraged to "mess" with all the KVIrc options and features,
+and to report bugs and misbehaviours to the author.
+Anyway , before reporting a bug , ask yourself if it can be caused
+by some other part of your system: KVIrc uses many external libraries
+and (as all programs) relies on a correct system behaviour.
+Make sure that the libraries you use are the correct ones (!!!).
+
+When you encounter a problem please read the FAQ that is found
+in the distribution and also take a look at http://www.kvirc.net
+for a more recent version. If nothing helps to solve your problem
+then you might consider issuing a bug report.
+
+The best way to report a bug is to use the bugtrack system at
+http://svn.kvirc.de/kvirc/. Another way is to subscribe
+to the kvirc mailing list (see http://www.kvirc.net for instructions)
+and report the problem there. In both cases your bug report
+should be written in english and should contain most informations
+possible about the problem. If you have encountered a crash
+on an unix platform you should include a gdb backtrace (stack dump).
+The more gdb info you send, the biggest is the possibility for us
+to find the problem and maybe a solution. There is a FAQ entry
+that explains how to produce a suitable gdb backtrace.
+If you can't obtain a gdb backtrace (maybe because you're on
+a platform where gdb is not available) or if the problem
+is not related to a program crash then you should include
+a detailed procedure that leads to the manifestation of your problem.
+You should always include a short description of the platform you
+are running on: the operating system, the cpu (if not an x86),
+the version of the Qt library and the KDE environment (if relevant).
+You should also mention the relevant version of KVIrc and where
+you got it from (cvs, kvirc site, other sites).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+###############################################################################
+# Historic entries : just for the curious
+###############################################################################
+
+
+22.02.2005: Release 3.2.0 "Realia"
+###############################################################################
+
+Here we go again: 3.2.0 is out!
+
+The long road to stability has reached an important milestone. The previous
+releases of the 3.* series were the first ones after a huge codebase rewrite.
+3.2.0 is a result of several months of testing, debugging and improving.
+You will surely find it more stable, fast and user friendly.
+
+The old scripting toolbars have been replaced by the new "action" based
+approach. Besides the scripting flexibility of the actions we have also
+gained "drag & drop" toolbar editing. Just select "Settings -> Toolbars
+-> Customize" from the menu and drag your favorite actions (buttons!) to the
+toolbars you wish. You can obviously create new toolbars on the fly and destroy
+old ones. There is a set of builtin actions and new ones can be added
+by the means of the action editor (another new feature) accessible from
+the Scripting menu. Play with it :)
+
+The UNICODE support has been improved yet more. Now you can set global,
+per-network, per-server and per-window encodings! There is also a new
+set of "smart" encoding engines that first try to decode the text as UTF8
+and in case of failure fallback to your standard encoding.
+
+The translators did a really good (and hard) job: we actually have KVIrc
+translated in 14 languages. I'm really happy about that.
+
+There is a new nice Instant-Messager-like notifier window that pops up when
+a query message arrives and KVIrc is not the active application. Yes,
+you can disable it, but I'm sure you will not. The notifier is also fully
+scriptable and we're working on a simple skinning engine for it.
+
+We also have perl support: now you can use perl from KVS and
+KVS from perl. The engine is still quite essential but with some hacking
+you can obtain really good results from it.
+
+The small IRC-Context-Display has been removed from the toolbar and has been
+replaced by a real status bar that is capable of displaying the same
+informations in a much cleaner way. The IRC-Context-Display is still
+available as an action so you can just drag it back in its place
+and hide the status bar to return to the previous release configuration.
+The statusbar also supports applets that can be added/dragged/removed by the
+means of the mouse: just try the right click.
+
+The scripting engine has been improved and there are several new object
+classes. An interesting new feature here is the $tr() function that allows
+your scripts to be translated with the standard gettext mechanism. The
+widely requested DCOP communication function has been implemented too.
+
+Out-of-the-box mircryption support has been added. The KVIrc's mircryption
+engine supports the standard ECB mode and the new CBC mode
+
+The DCC transfers have been improved and seveal related bugs have been
+fixed. It is also possible to limit the bandwidth for each transfer.
+
+There is a lot of minor new features that will make your IRC sessions funnier
+and more exciting: some of them are described in the ChangeLog file and
+other can be found by exploring the user interface.
+
+The small one-man-project has grown to the level of a small community.
+People from around the world have joined our development efforts and are
+constantly donating their time, eyes and bandwidth in order to make KVIrc
+a really good IRC client. Besides of simply giving you a free (as in freedom!)
+and nice program for chatting, they are giving you the great opportunity to see
+what's behind the scenes: you have the source code for the whole application.
+In practical terms this means more or less 300.000 lines of tested, debugged and
+commented C++ code, several perl scripts, dozens of makefiles and all the means
+that you need to produce a working KVIrc executable on all the supported platforms.
+There is a lot of knowledge (some people call it "technology" because it sells better)
+inside, ready to be acquired by an attentive reader. Don't forget that the freedom of
+building your own executable from the sources gives you the opportunity
+of verifying the source itself: for example you might be interested in verifying
+that KVIrc will not run any malware code on your machine nor will collect
+your private data and sell it to someone while you're happily chatting with a friend.
+We call it freedom, please respect it :)
+
+Our community is contantly growing and this release was possible thanks to the
+contribution of really many people. There are new mighty developers, new addicted
+fans and we have seen a lot of new users. The list of the major contributors
+can be found on the KVIrc site, in the about dialog and all around the sources.
+If you want to meet them please join the #kvirc channel on your favorite
+IRC network or subscribe to our mailing list.
+
+Ah, I was going to forget it: you might have noticed that there is
+a version bump from 3.0.1 to 3.2.0. It's a typo that we arbitrairly
+decided not to fix :)
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+
+
+
+31.05.2004: Release 3.0.1 "System Virtue"
+###############################################################################
+
+Here we go again: 3.0.1 is out!
+
+3.0.1 is mainly a bugfix release. 3.0.0 was the first public release
+after long time and even if we have tested it for a very long time
+some bugs didn't miss to jump out. 3.0.1 contains the fixes for these
+problems and adds some minor functionality. The detailed list of
+changes is in the ChangeLog file.
+
+The bugs for this release should be reported by using the bugtrack system available
+at http://bugtrack.kvirc.omnikron.net
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+
+17.04.2004: Release 3.0.0 "Awakening"
+###############################################################################
+
+After a couple of years from the last stable release, here we go again :)
+
+Since the 2.* releases the KVIrc source code has been almost completely
+rewritten. The major differences are summarized in the following list:
+
+ - Multiserver: you can have multiple IRC connections in a single window
+ - IPV6 support, also for DCC transfers
+ - SSL support (also over IPV6)
+ - UNICODE support for the user interface
+ - Better scripting language
+ - A basic Theme Engine
+
+The first major goal of the rewrite was "user-friendliness": you should be
+able to start an IRC session by selecting a server and clicking "Connect Now"
+just after the installation.
+The second major goal was "extreme-flexibility": you can customize the way KVIrc
+looks and the scripting language allows you to implement complex responses
+to IRC generated events.
+
+There is a lot of minor new features that will make your IRC sessions funnier
+and more exciting: some of them are described in the ChangeLog file and
+other can be found by exploring the user interface.
+
+This release was possible thanks to the contribution of many people.
+The list includes but is not limited to: Triskelios, Jan Wagner (spion),
+Juanjo Alvarez (Kane), Andrea Parrella (Yap), Luk De Ketelaere (Balboy),
+Sara D'Alia (Sbrokka), Ted Podgurski (alch3m1st), Ciro Guariglia (d3vah),
+Christoph Thielecke (Crissi), Eva Schaller (Penny), Niklas Luerßen (Tequila)
+Olle Hallnas (Crocodile), Francesco Meloni (Princo), Alessandro Rossini (Aronnax),
+Alex Grijalba Martinez (SuD), SuperbepS, Thilo Schulz (Thilo), Dworf,
+Jorma Tuomainen (Wiza), Michele Pinassi (O-Zone), Paolo Sammicheli (XDatap1),
+Ahinu, xevilstar, The Siena Linux Users Group, cyco & samweis,
+The Firenze Linux Users Group, all the subscribers of the KVIrc public mailing
+list and finally all the people from #kvirc on IRCNet and Freenode.
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+###############################################################################
+General notes for the 3.0.0 release of the KVIrc IRC client
+###############################################################################
+
+- Installation
+
+The detailed installation instructions for the unix source distribution
+are in the INSTALL file.
+
+The Windows version needs no installation: just unzip the archive in
+a suitable directory (such as C:\Program Files\) and run kvirc.exe from there.
+
+Other documentation can be found in the doc subdirectory.
+
+- Reporting problems
+
+In this release , the changes are so huge that it was not possible
+to test them in all the possible conditions. A 'normal' irc session
+should give you no problems.
+You are encouraged to "mess" with all the KVIrc options and features,
+and to report bugs and misbehaviours to the author.
+Anyway , before reporting a bug , ask yourself if it can be caused
+by some other part of your system: KVIrc uses many external libraries
+and (as all programs) relies on a correct system behaviour.
+Make sure that the libraries you use are the correct ones (!!!).
+
+- Contents of a good bug report:
+
+- A gdb backtrace in case of a segfault.
+ The more gdb info you send , the biggest is the possibility
+ for me to find the problem and maybe a solution.
+- A detailed description (read : procedure) to reproduce the bug
+ Obviously if possible...
+- All informations on your system that you think that may be
+ related to KVIrc and to the problem itself.
+
+To enable the gdb debugging you must compile kvirc with
+the --enable-debug configure option.
+
+
+
+03.01.2003: Release 3.0.0 beta2
+###############################################################################
+
+
+Here we go again!
+Yes , this is still called "beta" , but it should be stable on most machines.
+We're simply still missing some features planned for the final 3.0.0.
+
+Beta2 is being released as a source package.
+Binary packages (for windows and other platforms) might be available soon
+so check out the download section once in a while.
+
+90% of the 2.* branch features have been already re-implemented and there are
+many new things to play with.
+
+There is a preliminary UNICODE port: KVIrc UI starts to "speak" foreign (non Latin1) based languages.
+IRC character set mapping has been implemented (with 8 commonly used codepages for now).
+You should be able to use the Euro sign (ISO-8859-15), write Cyrillic (KOI-8-R , CP-1251 , ISO-8859-5),
+Greek (ISO-8859-7) and even use ideograms with the UTF-8 encoding.
+Character mapping selection is window based thus you should be able to write Cyrillic on #russian,
+Greek on #athens and write plain English on #kvirc in the same IRC session.
+
+Some modules have been removed from the main distribution. This is because the source
+tree has been growing too much: we are removing the non-strictly-necessary features
+and we will release them as separate packages.
+
+On the CVS you can already find the "nap" module that allows chatting (no file sharing yet)
+on OpenNap networks.
+
+The scriptcenter dialog has been splitted in smaller "pieces" and a GUI toolbar editor has been added.
+
+Finally there are tons of bugfixes and improvements: just play with it :)
+
+The bugs for this release should be reported by using the bugtrack system available
+at http://bugtrack.kvirc.omnikron.net.
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+###############################################################################
+
+
+
+25.06.2002
+###############################################################################
+
+3.0.0 beta1 (Codename: "Eve's Avatar")
+
+This release is "floating around" since a couple of months...
+Well... finally... here we go :)
+This is not stable yet, but many people use it and we get a really small number of
+critical reports: this means that you probably can use it for your daily chatting.
+
+Beta1 is being released as a source package and a binary distro for the windows platform.
+Binary packages for other platforms might be available soon so check out the download section once in a while.
+
+If you had previous KVIrc installations and you experience problems (missing menus for example)
+try to remove (or better just rename) the old local configuration directory (locaed
+in your home dir probably) and to restart KVIrc.
+
+80% of the 2.* branch features have been already re-implemented and there is a whole
+bunch of new things to play with. One of the greates "ChangeLog" entries is the preliminary
+SSL support that works for IRC and DCC CHAT (both over IPv4 and IPv6).
+CTCP PAGE support has been added and there were some major changes to the variable
+management in the scripting language (added "real" array support and changed the syntax for the dictionaries).
+Those of you that like colors can now enable the icon-like display of emoticons
+and play with icons in the text sent through the server (a new escape code).
+The documentation has been reworked a little bit more, there are some new modules and
+a lot of new options to try.
+
+The windows version is not completely in sync with the linux one thus you might find
+that it lacks some features (mainly advanced scripting language, sound support etc...).
+We hope to have a completely synchronized versions on both platforms for the time
+of 3.0.0 final.
+
+The bugs for this release should be reported by using our new shiny bugtrack system available
+at http://bugtrack.kvirc.omnikron.net.
+
+Well..
+That's all folks!
+
+Have fun :)
+Szymon Stefanek and The KVIrc Development Team
+
+###############################################################################
+
diff --git a/doc/scriptexamples/antiidle/antiidle.kvs b/doc/scriptexamples/antiidle.kvs
index a4b59cca2..a4b59cca2 100644
--- a/doc/scriptexamples/antiidle/antiidle.kvs
+++ b/doc/scriptexamples/antiidle.kvs
diff --git a/doc/scriptexamples/antiidle/.svnignore b/doc/scriptexamples/antiidle/.svnignore
deleted file mode 100644
index f114d6865..000000000
--- a/doc/scriptexamples/antiidle/.svnignore
+++ /dev/null
@@ -1,25 +0,0 @@
-Makefile.in
-Makefile
-*.ssexwsp
-config.log
-core
-config.cache
-config.status
-acinclude.m4
-configure
-aclocal.m4
-config.status
-libtool
-stamp-h
-stamp.h.in
-stamp-h.in
-config.h
-stamp-gc-h
-*.tar.gz
-*.spec
-*.rpm
-*.deb
-.pics
-.mospics
-build_flags
-build_number \ No newline at end of file
diff --git a/doc/scriptexamples/antiidle/Makefile.am b/doc/scriptexamples/antiidle/Makefile.am
deleted file mode 100644
index 840a6b4ea..000000000
--- a/doc/scriptexamples/antiidle/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-###############################################################################
-# KVirc IRC client Makefile - 16.12.98 Szymon Stefanek <stefanek@tin.it>
-###############################################################################
-
-EXTRA_DIST = antiidle.kvs
diff --git a/doc/scriptexamples/minesweeper/minesweeper.kvs b/doc/scriptexamples/minesweeper.kvs
index 24f3b0cb0..24f3b0cb0 100644
--- a/doc/scriptexamples/minesweeper/minesweeper.kvs
+++ b/doc/scriptexamples/minesweeper.kvs
diff --git a/doc/scriptexamples/minesweeper/.svnignore b/doc/scriptexamples/minesweeper/.svnignore
deleted file mode 100644
index f114d6865..000000000
--- a/doc/scriptexamples/minesweeper/.svnignore
+++ /dev/null
@@ -1,25 +0,0 @@
-Makefile.in
-Makefile
-*.ssexwsp
-config.log
-core
-config.cache
-config.status
-acinclude.m4
-configure
-aclocal.m4
-config.status
-libtool
-stamp-h
-stamp.h.in
-stamp-h.in
-config.h
-stamp-gc-h
-*.tar.gz
-*.spec
-*.rpm
-*.deb
-.pics
-.mospics
-build_flags
-build_number \ No newline at end of file
diff --git a/doc/scriptexamples/minesweeper/Makefile.am b/doc/scriptexamples/minesweeper/Makefile.am
deleted file mode 100644
index 914e38231..000000000
--- a/doc/scriptexamples/minesweeper/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-###############################################################################
-# KVirc IRC client Makefile - 16.12.98 Szymon Stefanek <stefanek@tin.it>
-###############################################################################
-
-EXTRA_DIST = *.kvs
diff --git a/doc/scriptexamples/objectsdumptree/obdumptree.kvs b/doc/scriptexamples/objectsdumptree.kvs
index 336bfdf12..336bfdf12 100644
--- a/doc/scriptexamples/objectsdumptree/obdumptree.kvs
+++ b/doc/scriptexamples/objectsdumptree.kvs
diff --git a/doc/scriptexamples/runmenu/runmenu.kvs b/doc/scriptexamples/runmenu.kvs
index dea6a27d3..dea6a27d3 100644
--- a/doc/scriptexamples/runmenu/runmenu.kvs
+++ b/doc/scriptexamples/runmenu.kvs
diff --git a/doc/scriptexamples/runmenu/.svnignore b/doc/scriptexamples/runmenu/.svnignore
deleted file mode 100644
index f114d6865..000000000
--- a/doc/scriptexamples/runmenu/.svnignore
+++ /dev/null
@@ -1,25 +0,0 @@
-Makefile.in
-Makefile
-*.ssexwsp
-config.log
-core
-config.cache
-config.status
-acinclude.m4
-configure
-aclocal.m4
-config.status
-libtool
-stamp-h
-stamp.h.in
-stamp-h.in
-config.h
-stamp-gc-h
-*.tar.gz
-*.spec
-*.rpm
-*.deb
-.pics
-.mospics
-build_flags
-build_number \ No newline at end of file
diff --git a/doc/scriptexamples/runmenu/Makefile.am b/doc/scriptexamples/runmenu/Makefile.am
deleted file mode 100644
index d91889eab..000000000
--- a/doc/scriptexamples/runmenu/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-###############################################################################
-# KVirc IRC client Makefile - 16.12.98 Szymon Stefanek <stefanek@tin.it>
-###############################################################################
-
-EXTRA_DIST = runmenu.kvs
diff --git a/doc/scriptexamples/simplehttp/simplehttp.kvs b/doc/scriptexamples/simplehttp.kvs
index 8c49014ae..8c49014ae 100644
--- a/doc/scriptexamples/simplehttp/simplehttp.kvs
+++ b/doc/scriptexamples/simplehttp.kvs
diff --git a/doc/scriptexamples/simplehttp/.svnignore b/doc/scriptexamples/simplehttp/.svnignore
deleted file mode 100644
index f114d6865..000000000
--- a/doc/scriptexamples/simplehttp/.svnignore
+++ /dev/null
@@ -1,25 +0,0 @@
-Makefile.in
-Makefile
-*.ssexwsp
-config.log
-core
-config.cache
-config.status
-acinclude.m4
-configure
-aclocal.m4
-config.status
-libtool
-stamp-h
-stamp.h.in
-stamp-h.in
-config.h
-stamp-gc-h
-*.tar.gz
-*.spec
-*.rpm
-*.deb
-.pics
-.mospics
-build_flags
-build_number \ No newline at end of file
diff --git a/doc/scriptexamples/simplehttp/Makefile.am b/doc/scriptexamples/simplehttp/Makefile.am
deleted file mode 100644
index 540ab61ca..000000000
--- a/doc/scriptexamples/simplehttp/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-###############################################################################
-# KVirc IRC client Makefile - 16.12.98 Szymon Stefanek <stefanek@tin.it>
-###############################################################################
-
-EXTRA_DIST = simplehttp.kvs