summary refs log tree commit diff stats
path: root/plugins/fishlim
AgeCommit message (Collapse)Author
2015-02-11Better project files.Arnavion
- Output directly to rel\ instead of to bin\ and then copying files over. - Deduped Win32 vs x64 configs - Moved some common properties to hexchat.props - All build intermediates (except htm's intermediates) are no longer emitted in the source directory
2014-12-28Fix building as c89TingPing
2014-12-28Use glib for allocations in all pluginsTingPing
Continuation of 83032b1aa
2014-12-17More consistently include config.hTingPing
2014-12-15Don't require glib 2.40TingPing
2014-12-15fishlim: Handle server-timeTingPing
2014-12-15fishlim: Use proper filesystem encoding for filesTingPing
2014-12-15fishlim: Use standard keyfile save functionTingPing
2014-12-15fishlim: Strip whitespace when deleting keysTingPing
This fixes a personal annoyance when you tab complete a channel to delete
2014-12-15fishlim: Use hexchat_nickcmp()TingPing
2014-12-15fishlim: Improve string handlingTingPing
2014-12-15configure: Improve various build flagsTingPing
- Store openssl flags in own vars - Share some common flags for plugins - Fix building plugins on win32 - Store all glib flags in one var - Don't link against every lib for each plugin - Don't hardcode ldflags for sysinfo
2014-07-18Fix formatting warningsTingPing
Found by #1059
2014-06-02fishlim: Fix filename in error messagesTingPing
2014-06-02Handle a special character before "+OK", e.g. identify-msg + or -Samuel Lidén Borell
2014-06-02Use path to HexChat instead of XChat in the test programSamuel Lidén Borell
Note that this affects the test program only. It doesn't affect users of FiSHLiM. The reason for this change is that XChat doesn't seem to be maintained any longer.
2014-06-02Add missing include in the test programSamuel Lidén Borell
2014-06-02Fix memory leak in the test programSamuel Lidén Borell
2014-06-02Fix undefined behaviour in left shiftSamuel Lidén Borell
This is not a problem with a usual compiler configuration, but LLVM/clang detects it when compiled with: -fsanitize=undefined-trap -fsanitize-undefined-trap-on-error -ftrapv
2014-01-29osx: Silence openssl deprecated warningsTingPing
2014-01-20configure: Clean up EXTRA_DISTTingPing
2013-09-15plugins: fishlim: VS2013 comes with a working stdbool.hArnavion
2013-09-15Convert project files to vs2013Eustachy Kapusta
2013-07-24Move optimization settings from all subsequent projects to hexchat.propsEustachy Kapusta
2013-04-28Don't hardcode "plugins" as the subdirectory for plugins in manyChristoph J. Thompson
places. modified: config-win32.h modified: configure.ac modified: plugins/checksum/Makefile.am modified: plugins/doat/Makefile.am modified: plugins/fishlim/Makefile.am modified: plugins/perl/Makefile.am modified: plugins/python/Makefile.am modified: plugins/sysinfo/Makefile.am modified: plugins/xdcc/Makefile.am modified: src/common/plugin.c modified: src/fe-text/fe-text.c
2013-04-25win32: Moved PlatformToolset configuration to individual project files. It ↵Arnavion
should be set before setting other properties or importing other props. This fixes the broken GUI Platform Toolset indicator, as well as VS compilation itself if another version such as 2010 was also installed.
2013-04-01Remove another bunch of obsolete junkBerke Viktor
2012-11-04Use configdir instead of *xchatdir*Berke Viktor
2012-10-30Now some final cleanup (I hope)Berke Viktor
2012-10-30Some final rebrandingBerke Viktor
2012-10-30Rebrand get_info(xchatdir) but remain compatible for Perl and PythonBerke Viktor
2012-10-30Rebranding for the rest of plugin*Berke Viktor
2012-10-30Rebranding for XCHAT_EAT_*Berke Viktor
2012-10-30Rebranding for XCHAT_PRI_*Berke Viktor
2012-10-30Remove hexchat-plugin.h duplicateBerke Viktor
2012-10-28Further doc relocations and conversionsBerke Viktor
2012-10-24A lot more rebrandingBerke Viktor
2012-10-21Move warning level to property sheetBerke Viktor
2012-10-13Compatibility for Automake 1.12.4+Berke Viktor
2012-10-03Revert to VS2010 part4Berke Viktor
2012-10-02Use explicit project names, output filenames depend on themBerke Viktor
2012-10-02Oops, wrong find'n'replaceBerke Viktor
2012-10-02Remove hardcoding as much as possibleBerke Viktor
2012-10-02Change platform toolset to Visual Studio 2012Berke Viktor
2012-10-02Add XP (WDK) solution as a fallback optionBerke Viktor
2012-07-26Make FiSHLiM consistent with recent naming changesBerke Viktor
2012-07-21Add _AMD64_ definition for x64 builds, make Visual Studio even happierBerke Viktor
2012-07-21Add trailing backslashes to Output and Intermediate directories, make Visual ↵Berke Viktor
Studio happy
2012-07-18Prepare FiSHLiM to use the plugin config APIBerke Viktor
2012-07-18Add make support for FiSHLiM on UnixBerke Viktor
ght .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>XCHAT FAQ</title>
<style type="text/css">
<!--
body {
font-family: sans-serif;
background-color: #FFFBF0;
}
h2 { color: #336701;
background-color: #F4F0E5;
}
h3 { color: #005A9C;
background-color: #F0EAE1;
}
a:link { color: blue; }
p { margin: 3% }
-->
</style>
</head>
<body>

<h1>X-Chat 2.8 Frequently Asked Questions</h1>

<h2>1. Section One: Compiling and Installing.</h2>
<p>
<a href="#q11">1. I get this error: /bin/sh: no: command not found</a>
<br><br>
<a href="#q12">2. How do I compile X-Chat on my Sun OS system?</a>
<br><br>
</p>

<h2>2. Section Two: Using X-Chat.</h2>
<p>
<a href="#q21">1. How do I enable identd in X-Chat? (How do I get rid of the ~ in front of my username?)</a>
<br><br>
<a href="#q22">2. How do I auto join more than one channel with keys?</a>
<br><br>
<a href="#q23">3. How do I autoconnect and join a channel when X-Chat loads?</a>
<br><br>
<a href="#q24">4. How do I cut and paste in X-Chat?</a>
<br><br>
<a href="#q25">5. How do I connect through a proxy?</a>
<br><br>
<a href="#q26">6. How do I show @ and + in front of nicknames that are Op and Voice when they talk?</a>
<br><br>
<a href="#q27">7. How do I change the Op and Voice userlist icons and Tree View icons?</a>
<br><br>
<a href="#q28">8. How do I set different ban types?</a>
<br><br>
<a href="#q29">9. Why can't I see accented-letters/umlauts/upper-ascii-chars in X-Chat?</a>
<br><br>
<a href="#q210">10. Why does the timestamp overlap some nicknames?</a>
<br><br>
<a href="#q211">11. How do I turn on Conference mode where I will not see join or part messages?</a>
<br><br>
<a href="#q212">12. How can I run the /dccserver command?</a>
<br><br>
<a href="#q213">13. Why doesn't DCC send work behind a router (IPNat/ADSL)?</a>
<br><br>
<a href="#q214">14. How do I execute multiple commands in one line?</a>
<br><br>
<a href="#q215">15. How do I enable Emacs key bindings in XChat?</a>
<br><br>
<a href="#q216">16. I get this error: "Unknown file type abc.yz. Maybe you need to install the Perl or Python plugin?"</a>
<br><br>
<a href="#q217">17. How do I play sound files on certain events?</a>
<br><br>
<a href="#q218">18. How do I auto-load scripts at startup?</a>
<br><br>
<a href="#q219">19. How do I minimize X-Chat to the System Tray (Notification Area)?</a>
<br><br>
<a href="#q220">20. Can I select and copy text with the time stamps?</a>
<br><br>
<a href="#q221">21. What's the deal with opening URLs in XChat on Linux/Unix?</a>
<br><br>
<a href="#q222">22. Where are the log files saved to?</a>
<br><br>
<a href="#q223">23. How do I rotate log files every so often?</a>
<br><br>
<a href="#q224">24. How do I enable graphical smilies (emoticons)?</a>
<br><br>
</p>

<h2>3. Section Three: Contributions, Development and Bugs.</h2>
<p>
<a href="#q31">1. Why does X-Chat leak so much memory?</a>
<br><br>
<a href="#q32">2. My copy of X-Chat crashes, what can I do?</a>
<br><br>
<a href="#q33">3. Can I write a new language translation for X-Chat?</a>
</p>

<br><br>

<h2>1. Section One: Compiling and Installing.</h2>

<br><h3><a name="q11">1. I get this error: /bin/sh: no: command not found</a></h3>
<p>
If you get an error something like:
</p>
<blockquote><pre>
Making all in po
make[2]: Entering directory `/home/zed/xchat/files/xchat-1.8.7/po'
file=./`echo ca | sed 's,.*/,,'`.gmo \
  &amp;&amp; rm -f $file &amp;&amp; PATH=../src:$PATH no -o $file ca.po
/bin/sh: no: command not found
make[2]: *** [ca.gmo] Error 127
make[2]: Leaving directory `/home/zed/xchat/files/xchat-1.8.7/po'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/zed/xchat/files/xchat-1.8.7'
make: *** [all-recursive-am] Error 2
</pre></blockquote>
<p>
It means you don't have GNU gettext installed. There are two solutions:
</p>
<ul>
<li>Install GNU gettext and try again.</li>
<li>Use <i>./configure --disable-nls</i>. This will disable foreign
language support and all menus and GUI will be in English only.</li>
</ul>

<br><h3><a name="q12">2. How do I compile X-Chat on my Sun OS system?</a></h3>
<p>
   X-Chat uses GNU gettext which in turn requires gmake, either install that
   and or use ./configure --disable-nls with Sun's own make.
</p>

<br><h2>2. Section Two: Using X-Chat.</h2>

<br><h3><a name="q21">1. How do I enable identd in X-Chat?</a></h3>
<p>
<u>UNIX:</u><br>
    Identd isn't actually apart of X-Chat. You will need to download and install 
    your own ident server. Most distributions, including Fedora, come with an 
    ident server program called oidentd. Make sure it is enabled in
    /etc/xinetd.conf or read you distribution's documentation.

    As an alternative, you can try this experimental identd server: <a href="http://xchat.org/auth/">xchat_auth</a>

<br><br><u>WINDOWS:</u><br>
    The win32 version of X-Chat comes with a built-in identd server. It is
    enabled by default, but can be disabled with <i>/set identd 0</i>.
</p>

<br><h3><a name="q22">2. How do I auto join more than one channel with keys?</a></h3>
<p>
   In the Server list's channel column enter multiple channels and separate 
   them by commas, eg:  "#linux,#warez,#chat". Do not put spaces between the
   channels. If the channels also have keys (passwords), then the syntax is:
   "#channel1,#channel2,#channel3 key1,key2,key3"
</p>
<p>
   Example: If you want to join #abc and #talk without keys, but #linux with
   a key of "secret", you would enter: "#linux,#abc,#talk secret".
</p>

<br><h3><a name="q23">3. How do I autoconnect and join a channel when X-Chat loads?</a></h3>
<p>
In the Server list, select the Network you want to auto-connect to, click Edit
and turn ON the "Auto connect to this network at startup" checkbox.
</p>

<br><h3><a name="q24">4. How do I cut and paste in X-Chat?</a></h3>
<p>
It's exactly the same as any other X application. You simply mark the text
you want, and then press middle mouse button to paste (if you only have a
2 button mouse, press left and right buttons at once).
</p>

<br><h3><a name="q25">5. How do I connect through a proxy?</a></h3>
<p>
Go to the menus, Settings -> Preferences -> Network Setup and fill in the requested
information there. Authentication (using a username and password) is
only supported for HTTP and Socks5.
</p>

<br><h3><a name="q26">6. How do I show @ and + in front of nicknames that are Op and Voice when they talk?</a></h3>
<p>
To display @ and + characters next to nicknames as they talk, do the following:
</p>
<p>
In the menus, open up Settings -> Advanced -> Text Events. Find the
<i>Channel Message</i> event in the list. The $3 code can be inserted to
print the user's mode-character (e.g. @ or +). For example, you might want
to change the default:

<br><br>%C18%H&lt;%H$4$1%H>%H%O$t$2<br><br>To:
<br><br>%C18%H&lt;%H$4<b>$3</b>$1%H>%H%O$t$2
<br><br>Don't forget to press Enter, so the changes take effect in the
list at the top of the window.
</p>

<br><h3><a name="q27">7. How do I change the Op and Voice userlist icons and Tree View icons?</a></h3>
<p>
<u>Unix/Linux</u>
<br>The default icons are hard coded (compiled) in. You can override them by creating
some PNG files in ${PREFIX}/share/xchat. ${PREFIX} is usually /usr, so that
would translate to /usr/share/xchat. If you compiled from source tarball without
specifying a prefix, it will be /usr/local instead.
<br>
<br>
<u>Windows</u>
<br>Your own custom icons can be placed in C:\Program Files\XChat\Icons. Image format
may be PNG or ICO. PNG support on Windows 2000 may require installing GDI+, but it's
standard on XP or newer.
</p>

<blockquote>
<table border="1" cellpadding="3" rules="all">
<tr bgcolor="#dddddd"><td>Name</td><td>Description</td></tr>
<tr><td>op.png</td><td>Userlist: Op</td></tr>
<tr><td>hop.png</td><td>Userlist: Half-Op</td></tr>
<tr><td>voice.png</td><td>Userlist: Voice</td></tr>
<tr><td>red.png</td><td>Userlist: Owner</td></tr>
<tr><td>purple.png</td><td>Userlist: Founder</td></tr>
<tr><td></td><td></td></tr>
<tr><td>server.png</td><td>Tree: Server</td></tr>
<tr><td>channel.png</td><td>Tree: Channel</td></tr>
<tr><td>dialog.png</td><td>Tree: Dialog/Query</td></tr>
<tr><td>util.png</td><td>Tree: Utility (Channel List, DCC etc)</td></tr>
<tr><td></td><td></td></tr>
<tr><td>message.png</td><td>Tray: Message</td></tr>
<tr><td>highlight.png</td><td>Tray: Highlighted Message</td></tr>
<tr><td>fileoffer.png</td><td>Tray: DCC</td></tr>
<tr><td></td><td></td></tr>
<tr><td>xchat.png</td><td>Main XChat icon</td></tr>
</table>
</blockquote>

<br><b>Tree View icons</b>: Type <b>/set tab_icons 1</b> to enable them and then restart XChat.
<br>

<br><h3><a name="q28">8. How do I set different ban types?</a></h3>
<p>
   Three ways:
</p>
<ul>
<li>
      Right click the nickname in the userlist, and choose a ban type from the
      "Kick/Ban" submenu.
</li>
<li>
		You can also do it manually:

         /ban &lt;nick> &lt;ban type>

      where the &lt;ban type> is a number from 0 to 3.
</li>

<li>
           /set irc_ban_type &lt;ban type>
      sets the default ban type to use for all bans. The different types are:

<ul>
<li>0 *!*@*.host</li>
<li>1 *!*@domain</li>
<li>2 *!*user@*.host</li>
<li>3 *!*user@domain</li>
</ul>

</li>
</ul>

<br><h3><a name="q29">9. Why can't I see accented-letters/umlauts/upper-ascii-chars in X-Chat?</a></h3>
<p>
Refer to <a href="http://xchat.org/encoding/">http://xchat.org/encoding/</a>.<br>
Note: Log files are always written in UTF-8/Unicode.
</p>

<br><h3><a name="q210">10. Why does the timestamp overlap some nicknames?</a></h3>
<p>
Some networks allow very long nicknames (up to 32 letters). It can be annoying to have
the separator bar move too far to the right, just for one long nick. Therefore, it has
a set limit for the distance it will move to the right. If you use a large font, you
may need to adjust this distance. It is set in pixels, for example:
</p>
<blockquote><pre>
      /set text_max_indent 320
</pre></blockquote>

<p>
Once you adjust this setting high enough, overlapping timestamps and nicknames should
not occur. The adjustment will not take effect immediately, a restart may be needed.
</p>

<br><h3><a name="q211">11. How do I turn on Conference mode where I will not see join or part messages?</a></h3>
<p>
Right-click on the tab you want to change. In the submenu of the channel
name, there's a toggle-item "Show join/part messages", simply turn this off.
</p><p>If you want to turn this option on globally, type:</p>
<blockquote><pre>/set irc_conf_mode 1</pre></blockquote>
<p>Then all channels you join after setting this will start with "Show join/part messages" turned off.</p>

<br><h3><a name="q212">12. How can I run the /dccserver command?</a></h3>
<p>
In short you can not do this (easily). This is a mIRC only proprietary feature
that is quite nonstandard. There is no code for doing this, mainly because
/dccserver runs on port 59 which in turn would require running X-Chat as
root. Why do you need this anyway? Just use normal DCC.
<br><br>
Unofficial unix <a href="http://dfx.at/xchat/">patches are available here</a>.
<br><br><u><b>Update</b></u>: DCC Server feature has been added in the official Windows release 2.4.1b.
</p>

<br><h3><a name="q213">13. Why doesn't DCC send work behind a router (IPNat/ADSL)?</a></h3>
<p>
   If you are behind a IP-NAT or ADSL router, you will most likely have
   an address like 192.168.0.1. This address is not usable on the Internet, and
   must be translated.
</p><p>
   When offering a DCC file, xchat will tell the receiver your address. If it says
   192.168.0.1, the receiver will not be able to connect. One way to make it send
   your "real" address is to enable the "Get my IP from IRC Server" option in xchat.
   This option is available in Preferences -> File Transfers. When you turn it
   ON, you will have to re-login to the server before it'll take effect.
</p><p>
	You will also need to forward some ports for use in DCC send. You may pick almost
	any port range you wish, for example, in xchat set:
</p>
<pre>		<b>First DCC send port</b>: 4990
		 <b>Last DCC send port</b>: 5000
</pre>
<p>
	This will allow you to send up to ten files at the same time, which should be plenty
	for most people. Lastly, configure your router/modem to forward ports 4990-5000 to
	your PC's address. You'll have to consult your router/modem's manual on how to do this.
</p>

<br><h3><a name="q214">14. How do I execute multiple commands in one line?</a></h3>
<p>
   There are three ways to do this:
</p>
<ul>
<li>/LOAD -e &lt;textfile>, where &lt;textfile> is a full pathname to a file
containing commands on each line.</li>
<li>
Separate your commands with CTRL-SHIFT-u-a (CTRL-SHIFT-a on older GTK+ and Windows). This will appear as a little box with numbers on it.</li>
<li>You can create two UserCommands, with the same name, and then execute
the UserCommand. It will be executed in the same order as it's written
in the UserCommands GUI.</li>
</ul>

<br><h3><a name="q215">15. How do I enable Emacs key bindings in XChat?</a></h3>
<p>
The standard Emacs key bindings, such as CTRL-w, CTRL-u etc, are supported by
GTK+ 2.0, but normally disabled. If you run Gnome 2, you can re-enable them in
your Gnome menu under: Preferences -> Keyboard Shortcuts.
</p>
<p>
<i>Note</i>: This doesn't work in the latest Gnome (2.8 and newer). In this case, you need
to run "gconf-editor", and directly change the key /desktop/gnome/interface/gtk_key_theme
from "Default" to "Emacs". Then you need to re-start XChat.
</p>
<p>
If you don't use Gnome 2, but still want Emacs key bindings, it's beyond the
scope of this document. You might find some hints here:
<a href="http://www.gtk.org/gtk-2.4.0-notes.html">GTK+ 2.4.0 release notes</a>.
</p>

<br><h3><a name="q216">16. I get this error: "Unknown file type abc.yz. Maybe you need to install the Perl or Python plugin?"</a></h3>
<p>
If you get this error when trying to load a Perl or Python script, it means
the plugin for running those scripts isn't loaded.
</p>
<ul>
<li>The Perl, Python and TCL plugins come with XChat in the same archive.</li>
<li>During ./configure, it will check for Perl, Python and TCL libs and headers, you should check if it failed there.</li>
<li>The plugins directory can be found by issuing the shell command
	<pre>xchat -p</pre>
</li>
<li>All *.so files are auto-loaded at startup (*.dll on Windows).</li>
<li>If you downloaded a binary package, maybe the packager decided to exclude the Perl or Python plugins.</li>
</ul>

<br><h3><a name="q217">17. How do I play sound files on certain events?</a></h3>
<p>
In the menus, go to: Settings > Preferences > Sound.
Select the event you want to make a sound on, then type in a
sound filename (or use the Browse button).
</p>

<br><h3><a name="q218">18. How do I auto-load scripts at startup?</a></h3>
<p>
You just have to place the scripts into XChat's data directory. XChat
will auto-load scripts if they have the right extension .e.g If a filename
ends in .pl, it will be loaded as a Perl script.
This data directory is different on each platform:
<br><br>
<u>Windows</u>
<br><br>
It depends on your version of Windows and where it stores the
<i><b>Application Data</b></i> folder. On Windows XP it is usually:
<br><br>
C:\Documents and Settings\<i><b>username</b></i>\Application Data\X-Chat 2\
<br><b>or simply:</b>
<br>
C:\Program Files\XChat\Plugins\
<br><br><br>
<u>UNIX</u>
<br><br>
~/.xchat2/
Where "~" represents your home directory i.e.: $HOME/.xchat2/
</p>

<br><h3><a name="q219">19. How do I minimize X-Chat to the System Tray (Notification Area)?</a></h3>
<p>
There are two plugins available that allow this:
<br>Unix: <a href="http://www.blight.tk/">SysTray Plugin</a>
<br>Windows: <a href="http://www.sinisterdevelopments.com/">xTray</a>
</p>
<p>
Note that XChat 2.8.0+ has its own tray feature, but you can disable it
in <b>Settings &gt; Preferences &gt; Alerts</b> and still run these plugins, if you prefer.
</p>

<br><h3><a name="q220">20. Can I select and copy text with the time stamps?</a></h3>
<p>
Yes, but this requires at least XChat 2.6.3. Simply hold down SHIFT while marking
the text and the time stamps will be included.
</p>

<br><h3><a name="q221">21. What's the deal with opening URLs in XChat on Unix/Linux?</a></h3>
<p>
Right-clicking on a URL and selecting <i>Open Link in Browser</i> will open the link
in your "preferred browser". In Gnome, your preferred browser can be changed in System > Preferences > More Preferences > Preferred Applications.
<br><br>
<b><u>Notes for 2.8.0 or newer:</u></b>
<br><br>
Everything should just work automatically without any changes from you. Here's how the current
logic works:
</p>

<ul>
<li>First, it tries to run xdg-open, which is a universal URL handler from freedesktop.org. Most modern Linux desktops will have this now, or in the near future.</li>
<li>If xdg-open doesn't exist, it will try to detect a running Gnome or KDE desktop. This is done via the environment variables GNOME_DESKTOP_SESSION_ID and KDE_FULL_SESSION.</li>
<li>If Gnome is detected, it will execute: gnome-open &lt;url></li>
<li>If KDE is detected, it will execute: kfmclient exec &lt;url></li>
</ul>

<p>
<b><u>Notes for 2.6.8 or older:</u></b>
<br><br>
If you're not using Gnome, e.g KDE or some other desktop environment, you're fresh out of luck!
<br><u>Note for Debian and Ubuntu</u>: Integration with Gnome is broken on this distro! Please set
<i>sensible-browser</i> instead. We have no control over what the Debian packagers do, so complain
to them for this screw up. Example:
<i>sudo update-alternatives --set x-www-browser /usr/bin/firefox</i>

<br><br>
<b><u>More details</u></b>
<br><br>
While holding down CTRL you can single left-click a URL to open it in your preferred browser. If you really want to change this to plain left-click you can type: <b>/set gui_url_mod 0</b>, provided you have XChat 2.6.6 or newer.
<br><br>
You can also add more items to the right-click menu in XChat: <b>Settings &gt; Advanced &gt; URL Handlers</b>.
<br>For example, you could add an entry like <b>!firefox -a firefox -remote 'openURL(%s,new-tab)'</b>
<br>But this kind of messing around shouldn't be necessary, it just works automatically in Gnome, KDE and Windows with 2.8.0+!
</p>

<br><h3><a name="q222">22. Where are the log files saved to?</a></h3>
<p>
<u>UNIX</u>
<br>
<br>~/.xchat2/xchatlogs/
<br>where ~ represents your home directory.
<br>
<br>
<br><u>Windows</u>
<br>
<br><b>Windows XP/2000</b>: C:\Documents and Settings\<i><b>username</b></i>\Application Data\X-Chat 2\xchatlogs
<br><b>Windows Vista/7</b>: C:\Users\<i><b>username</b></i>\AppData\Roaming\X-Chat 2\xchatlogs
</p>

<br><h3><a name="q223">23. How do I rotate log files every so often?</a></h3>
<p>
Requires: 2.6.1+
<br><br>
By default settings, no rotation occurs, your log files will just keep getting larger.
<br><br>
Go to <b>Settings</b> &gt; <b>Preferences</b> &gt; <b>Logging</b> and change the log filename to any one of these:
</p>
<blockquote>
<table border="1" cellpadding="6" rules="all">
<tr><td><b>Setting</b></td><td><b>Example filename that would be written</b></td></tr>
<tr><td>%Y-%m-%d/%n-%c.log&nbsp;</td><td>2006-12-30/FreeNode-#channel.log</td></tr>
<tr><td>%n/%Y-%m-%d/%c.log</td><td>FreeNode/2006-12-30/#channel.log</td></tr>
<tr><td>%n/%c.log</td><td>FreeNode/#channel.log (no rotation)</td></tr>
</table>
</blockquote>
<p>
%Y, %m and %d represents the current year, month and day respectively. %n is the
network name, e.g. "FreeNode" or "UnderNet", and finally, %c is the channel. In these
examples, a new log filename and folder would be created after midnight.
<br><br>
You can find more possibilities at <a href="http://xchat.org/docs/log/">http://xchat.org/docs/log/</a>.
</p>

<br><h3><a name="q224">24. How do I enable graphical smilies (emoticons)?</a></h3>
<p>
This feature is only available in the official Windows XChat release. You have to
TICK this feature during installation. If you didn't do this, you can simply run
the installer again, and TICK the "<b>Eye Candy Theme</b>" when given the option.
</p><p>
If you want to use the graphical theme, but disable it just for smilies (i.e leave
it ON for things like Join/Part, Modes etc only), type this command and restart:
<br><br>
<b>/set text_emoticons off</b>
</p>

<br><h2>3. Section Three: Contributions, Development and Bugs.</h2>

<br><h3><a name="q31">1. Why does X-Chat leak so much memory?</a></h3>
<p>
The simple answer is, it doesn't! There are some GTK+ pixmap based themes around that
leak a lot of memory. Please try using a different theme and see if that resolves the
problem. X-Chat itself only allocates about 40kb of memory through malloc()!
</p>

<br><h3><a name="q32">2. My copy of X-Chat crashes, what can I do?</a></h3>
<p>
Firstly, make sure it's the latest stable version of X-Chat. Stable versions have
an EVEN middle number, e.g.: 2.8.0 or 2.8.1. Often late fixes are placed in this
directory: <a href="http://xchat.org/files/source/2.8/patches/">2.8.x patches</a>
</p><p>
   If you still experience crashes, you should consider running it through GDB. This
   will help us find a fix quickly, and it's easy to do! See <a href="http://xchat.org/gdb/">here</a>.
</p>

<br><h3><a name="q33">3. Can I write a new language translation for X-Chat?</a></h3>
<p>
You sure can, but I don't accept translations directly. They must be done through the
<a href="http://translationproject.org/domain/xchat.html">Translation Project</a>.
All the relevant information should be on that page.
</p>

</body>
</html>