# X-Chat 2.4 Frequently Asked Questions

## 1. Section One: Compiling and Installing.

1. I get this error: /bin/sh: no: command not found
2. How do I compile X-Chat on my Sun OS system?

## 2. Section Two: Using X-Chat.

1. How do I enable identd in X-Chat? (How do I get rid of the ~ infront of my username?)
2. How do I auto join more than one channel with keys?
3. How do I autoconnect and join a channel when X-Chat loads?
4. How do I cut and paste in X-Chat?
5. How do I connect through a proxy?
6. How do I show @ and + infront of nicknames that are Op and Voice when they talk?
7. How do I change the Op and Voice icons in the userlist?
8. How do I set different ban types?
9. Why can't I see accented-letters/umlauts/upper-ascii-chars in X-Chat?
10. Why does the timestamp overlap some nicknames?
11. How do I turn on Conference mode where I will not see join or part messages?
12. How can I run the /dccserver command?
13. Why doesn't DCC send work behind IPNat or IPMasq?
14. How do I execute multiple commands in one line?
15. How do I enable Emacs keybindings in XChat?
16. I get this error: "Unknown file type abc.yz. Maybe you need to install the Perl or Python plugin?"
17. How do I play sound files on certain events?
18. How do I auto-load scripts at startup?
19. Where are the log files saved to?

## 3. Section Three: Contributions, Development and Bugs.

1. Why does X-Chat leak so much memory?
2. My copy of X-Chat crashes, what can I do?
3. Can I write a new language translation for X-Chat?

## 1. Section One: Compiling and Installing.

### 1. I get this error: /bin/sh: no: command not found

If you get an error something like:

>     Making all in po
>     make[2]: Entering directory `/home/zed/xchat/files/xchat-1.8.7/po'
>     file=./`echo ca | sed 's,.*/,,'`.gmo \
>       && rm -f $file && 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

It means you don't have GNU gettext installed. There are two solutions:

- Install GNU gettext and try again.
- Use ./configure --disable-nls. This will disable foreign language support and all menus and GUI will be in english only.

### 2. How do I compile X-Chat on my Sun OS system?

X-Chat uses GNU gettext which in turn requires gmake, either install that and or use ./configure --disable-nls with Sun's own make.

## 2. Section Two: Using X-Chat.

### 1. How do I enable identd in X-Chat?

UNIX:
Identd isn't actually apart of X-Chat. You will need to download and install your own ident server. Most distributions, including RedHat, come with an ident server program called pidentd. 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: xchat_auth
WINDOWS:
The win32 version of X-Chat comes with a builtin identd server. It is enabled by default, but can be disabled with /set identd 0.

### 2. How do I auto join more than one channel with keys?

In the Serverlist'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"

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".

### 3. How do I autoconnect and join a channel when X-Chat loads?

In the Serverlist, select the Network you want to auto-connect to, click Edit and turn ON the "Auto connect to this network at startup" checkbox.

### 4. How do I cut and paste in X-Chat?

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).

### 5. How do I connect through a proxy?

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.

### 6. How do I show @ and + infront of nicknames that are Op and Voice when they talk?

To display @ and + characters next to nicknames as they talk, do the following:

In the menus, open up Settings -> Advanced -> Text Events. Find the Channel Message 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:
%C2<%O$1%C2>%O$t$2%O
To:
%C2<%O$3%O$1%C2>%O$t$2%O
Don't forget to press Enter, so the changes take effect in the list at the top of the window.

### 7. How do I change the Op and Voice icons in the userlist?

The default icons are hardcoded (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.
Call the files op.png, hop.png, voice.png, red.png and purple.png. Red and Purple are used for Channel Owner and Founder. They will be loaded at the next startup.

### 8. How do I set different ban types?

Three ways:

- Right click the nickname in the userlist, and choose a bantype from the "Kick/Ban" submenu.
- You can also do it manually: /ban <nick> <bantype> where the <bantype> is a number from 0 to 3.
- /set irc_ban_type <bantype> sets the default ban type to use for all bans. The different types are:
  - 0 *!*@*.host
  - 1 *!*@domain
  - 2 *!*user@*.host
  - 3 *!*user@domain

### 9. Why can't I see accented-letters/umlauts/upper-ascii-chars in X-Chat?

Refer to http://xchat.org/encoding.html.
Note: Log files are always written in UTF-8/Unicode.

### 10. Why does the timestamp overlap some nicknames?

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:

>           /set text_max_indent 320

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.

### 11. How do I turn on Conference mode where I will not see join or part messages?

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.

### 12. How can I run the /dccserver command?

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.
Unofficial patches are available here.

### 13. Why doesn't DCC send work behind IPNat or IPMasq?

If you are behind a IP-NAT or IP-Masqeraude system, you will most likely have an address like 192.168.0.0. This address is not useable on the internet, and must be translated.

When offering a DCC file, xchat will tell the receiver your address. If it says 192.168.0.0, 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. In version 2, it's available in Prefereces -> File Transfers. When you turn this option ON, you will have to relogin to the server before it'll take effect.

### 14. How do I execute multiple commands in one line?

There are three ways to do this:

- 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.
- /LOAD -e <textfile>, where <textfile> is a full pathname to a file containing commands on each line.
- Separate your commands with CTRL-SHIFT-a. This will appear as a little box with numbers on it (doesn't work on Windows).

### 15. How do I enable Emacs keybindings in XChat?

The standard Emacs keybindings, such as ctrl-w, ctrl-u etc, are supported by GTK+ 2.0, but normally disabled. If you run Gnome 2, you can reenable them in your Gnome menu under: Preferences -> Keyboard Shortcuts.

If you don't use Gnome 2, but still want Emacs keybindings, it's beyond the scope of this document. You might find some hints here: GTK+ 2.4.0 release notes.

### 16. I get this error: "Unknown file type abc.yz. Maybe you need to install the Perl or Python plugin?"

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.

- The Perl, Python and TCL plugins come with XChat in the same archive.
- During ./configure, it will check for Perl, Python and TCL libs and headers, you should check if it failed there.
- The plugins directory can be found by issuing the shell command

      strings `which xchat` | grep plugins

  Be sure to use the correct quotes.
- All *.so files are autoloaded at startup (*.dll on Windows).
- If you downloaded a binary package, maybe the packager decided to exclude the Perl or Python plugins.

### 17. How do I play sound files on certain events?

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).

### 18. How do I auto-load scripts at startup?

You just have to place the scripts into XChat's data directory. XChat will auto-load scripts if they have the right extention .e.g If a filename ends in .pl, it will be loaded as a Perl script. This data directory is different on each platform:
Windows
It depends on your version of Windows and where it stores the Application Data folder. On Windows XP it is usually:
C:\Documents and Settings\username\Application Data\X-Chat 2\
UNIX
~/.xchat2/ Where "~" represents your home directory i.e.: $HOME/.xchat2/

### 19. Where are the log files saved to?

UNIX
~/.xchat2/xchatlogs/
where ~ represents your home directory.
Windows
Windows 95/98/Me: C:\Windows\Application Data\X-Chat 2\xchatlogs
Windows XP/2000: C:\Documents and Settings\username\Application Data\X-Chat 2\xchatlogs

## 3. Section Three: Contributions, Development and Bugs.

### 1. Why does X-Chat leak so much memory?

The simple answer is, it doesn't! There are some GTK+ pixmap based themes around that leak alot 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()!

### 2. My copy of X-Chat crashes, what can I do?

Firstly, make sure it's the latest stable version of X-Chat. Stable versions have an EVEN middle number, e.g.: 2.4.1 or 2.4.2. Often late fixes are placed in this directory: 2.4.x patches

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 here.

### 3. Can I write a new language translation for X-Chat?

You sure can, but I don't accept translations directly. They must be done through the Translation Project. All the relevant information should be on that page.