# The &kmyapplication; Handbook

Gary
R.
Cramblitt
garycramblitt@comcast.net
2003
Gary R. Cramblitt
&FDLNotice;
2004-06-09
0.14

&kmyapplication; is a user-friendly &irc; client for the K Desktop Environment.

KDE
kdeextragear-2
Konversation
irc
internet relay chat
chat
communications

## Introduction

&kmyapplication; is an &irc; client for KDE 3.0.3 or later. It offers the following features:

- User-friendy tabbed interface.

- Customizable Quick Buttons for often-used commands

- Automatic reconnect and rejoin.

- DCC send and receive.

- &nickname; watch list.

- Visual and auditory notifications for a wide variety of events, such as messages containing your &nickname;, or &nickname;s on your watch list going online or offline. (KDE 3.2 or later).

- Customizable highlighting of messages by &nickname;.

- &nickname; completion.

- Capture and save all &URL;s appearing in messages.

- On-screen display of messages, even when minimized.

- &nickname; ignore list.

- Flooding protection.

- Automatic logging and log management.

- Marking of lines in logs.

- Scripting.

Questions and answers for &kmyapplication; can be discussed on the Konversation-Users mailing list. Please subscribe to learn about new features, bug reports and the like. To stay informed of new releases, you can join our Konversation-Announce mailing list. This is a low volume mailing list only used to announce new releases or patches.

Developers for &kmyapplication; can often be contacted via &irc; at irc.kde.org channel #konversation.

## Using &kmyapplication;

### If you haven't used &irc; before...

Simply put, &irc; is a chat protocol, defined by official Internet standards, and capable of stealing many hours of your life. To use &irc;, you must connect to a server, and then join a channel (equivalent to a chat room) or just engage in private conversations.

To connect to a server and channel, open &kmyapplication;. The Server List screen appears.

The Server List screen. The Server List screen

Click here to select a server and channel.

Click here to define a new server and channel.

Click here to connect to the selected server and channel.

The Main screen will be displayed showing the messages sent by the server to the client. (If &kmyapplication; will not connect to the server, see Questions and Answers.) When the server messages have finished scrolling past, &kmyapplication; will join the channel chosen.

The Main screen. The Main screen

This is called the Input Line. To send a message to everyone in the channel, type the message here and press &Enter;. Your message, as well as everyone else's messages appear in the channel scroll above. Each message is preceded by the time and user's &nickname;.

You may join additional servers and channels. Each server, channel, channel list, and other screen gets a separate tab here. To display a list of available channels, see Listing available channels. To join a channel, type: ``/join` #channelname` in the Input Line. (The `#` is required.) You may also type ``/j`` as a shorthand to ``/join``. To leave a channel, just type ``/part``. To switch the display to a different server or channel, click the corresponding tab.

This is called the Nick Panel. It lists the &nickname;s of all the users who have joined the channel, including yourself.

That's the basics, for more detailed information, read on...

### Setting your identity

Before you start using &kmyapplication; regularly, you should set how you will be identified on the network in the preferences.

Click the Settings Button Configure &kmyapplication; button or choose Settings Configure Konversation on the main menu. The Edit Preferences screen will appear.

The Edit Preferences screen. The Edit Preferences screen

Click here to display the Identity screen.

Enter your real name here. &irc; is not intended to keep you hidden from your friends or enemies. Keep this in mind if you are tempted to behave maliciously. A fake "real name" can be a good way to mask your gender from all the nerds out there, but the PC you use can always be traced so you will never be truly anonymous.

Enter the name that will identify you to the server here. Spaces and other special characters are not allowed.

Enter your &nickname; here. This is the name that other users will know you by. You may enter any name you desire. The first character must be a letter, other characters may be letters, numbers, or the special characters `-[]\`_^{}|`.

Since &nickname;s must be unique across the entire server, your desired name may be rejected by the server because someone else is already using that &nickname;. Enter alternate nicknames for yourself in the boxes provided. If your first choice is rejected by the server, &kmyapplication; will try the alternate &nickname;s.

According to RFC 2812, the maximum &nickname; length is 9, but this is actually determined by the server. To determine the maximum for a server, connect to the server. In the Server Messages tab, look for a `[Support]` message. For example

`[18:51] *Eisfuchs* [21:45] [Support] Eisfuchs MODES=4 MAXCHANNELS=20 NICKLEN=16 USERLEN=10 HOSTLEN=63 TOPICLEN=450 KICKLEN=450 CHANNELLEN=30 KEYLEN=23 CHANTYPES=# PREFIX=@+ CASEMAPPING=ascii CAPAB IRCD=dancer`

The `NICKLEN` parameter specifies the maximum &nickname; length.

Check this box and enter a &nickname; that indicates you are away. Whenever you perform an ``/away` msg` command in any channel joined with this Identity, &kmyapplication; will automatically change your &nickname; to the Away nickname. It will also send the Away message to all channels joined with this Identity. `%s` is replaced with `msg`. Whenever you perform an ``/away`` command, your &nickname; will return to normal and the Return message will be displayed in all channels joined with this Identity.

Service and Password are used when connecting to certain servers that require registration after connecting. The service and password you enter here are translated into the command ``/msg` Service IDENTIFY Password`.

Click here to apply your changes. In order for all the changes to take effect, you must disconnect from the server and re-connect. The easiest way to do that is to quit &kmyapplication; and restart.

### Listing available channels

To display a list of available channels, choose Windows Channel List on the main menu. After a warning screen, a new tab is created called the Channel List.

The Channel List tab. The Channel List tab.

Enter a filter string here.

You can limit the channel list to those channels with a minimum or maximum number of users here. Choosing 0 disables the respective criteria.

Click here to retrieve the list of channels from the server and apply the filter.

The filtered list of channels is displayed here. Notice that if you don't use regular expressions, &kmyapplication; lists any channel whose name contains the filter string you entered. The channel name does not have to start with the string you entered.

Select a channel you want to join by clicking on it. Right click on the channel to get a list of all web addresses mentioned in the channel's topic.

Click here to join the channel. A new tab is created for the channel.

You should avoid clicking the Refresh List button. Most servers have thousands of channels, and performing this puts a high load on the server. Besides, it can require several minutes to complete, depending upon your network bandwidth. If your client is too slow, the server may even disconnect you.

Sometimes there are "secret" channels on servers. Such channels are not listed in the Channel List. You can still join these channels if you know their name. In any Input Line, type: ``/join` #channelname`. (The `#` is required.) A new tab is created for the channel. If you join a channel and the Nick Panel lists only your &nickname;, it means that the channel did not exist before. The server created the channel and you are the operator. In this case, you probably want to close the channel by typing: ``/part``.

### A tour of the main screen

Let's learn more about the Main screen. The screen is shown below with a channel tab selected.

The Main screen. The Main screen

This is called the Input Line. Input appears only when the current tab is a channel. To send a message to everyone in the channel, type the message here and press &Enter;. Your message, as well as everyone else's messages appear in the channel scroll above. Each message is preceded by the time and user's &nickname;.

You can also paste text from the clipboard. If the pasted text has more than one line (newlines), a dialog box appears. Edit the text as desired and click OK.

If the pasted text is longer than 256 characters, or it contains more than one line, a warning message appears advising you that large postings can cause connection resets and flooding. You can still proceed with the input, but doing so is a bad idea, as flooding will annoy other users in the channel, or you may be disconnected from the server. It is better to send the message in shorter chunks.

A convention used in many channels is to precede messages directed at one user with their &nickname;. &kmyapplication; provides a convenient &nickname; completion feature. Start typing the user's &nickname;, then press &Tab;. &kmyapplication; will complete the rest of the user's &nickname; followed by a colon.

You can also enter an &irc; command here by first typing ``/`` followed by a valid &irc; command. See Frequently-used &irc; commands. On some servers, you can type ``/help`` for a list of available commands, or type ``/help` command` for help on a specific command.

You may join additional servers and channels. Each server and each channel gets a separate tab here. To display a list of available channels, see Listing available channels. To join a channel, type: ``/join` #channelname` in the Input Line. (The `#` is required.) To leave a channel, just type ``/part``. Tabs also appear here if you open a Channel List, participate in a private conversation (query), open the URL Catcher, or open one or more Konsoles. To switch the display to a different screen, click the corresponding tab, or use the mouse wheel to cycle through the tabs.

These &led;s will blink when there is something you haven't seen in that tab. The &led; will blink slower when the only unseen messages are `join`, `part`, `quit`, or &nickname; changes. They blink faster if there are unseen regular messages. The colors are as follows:

- Channel

- Server Messages, Channel List, or URL catcher

- Konsole or DCC Status.

- Private Message (Query).

Click here to close the tab. Closing a Channel tab will leave the channel. Closing a Server Messages tab will leave all channels you've joined, close all open queries at that server and disconnect from the server.

Click this button to change your own &nickname;. It appears only when the current tab is a channel.

If you are a channel operator, or the channel mode "Topic protection (+t)" is not set, you can change the topic of the channel here.

These buttons display the current state of channel modes. A button is down if that mode is on. If you have the correct privileges, you can also change channel modes by clicking on these buttons.

This is called the Nick Panel. It is displayed whenever the current tab is a channel. It lists the &nickname;s of all the users who have joined the channel, including yourself. The colors of the &led;s next to each nickname are as follows:

- normal user

- voiced user

- channel halfop

- channel operator

- channel owner

- channel admin

Click with the &RMB; on any &nickname; to display a context menu of operations you can perform with that &nickname;. For example, you can send a file to the &nickname;.

These are called the Quick Buttons. You can change their definitions or make them disappear using the Edit Preferences screen.

This is the toolbar. You can hide or show it using the Settings menu.

Note: Channel names sometimes begin with `&`, `&plus;`, or `!`. The first character of a channel name determines the type of channel (RFC 2811) as follows:

- `#` - Regular channels.

- `!` - Regular channels.

- `&` - Local. Channels that can only be joined from the server hosting the channel. All other channels can be joined from any server in the network.

- `&plus;` - Channels that do not support channel modes. This means that all the modes are unset, with the exception of the 't' channel flag which is set.

Channel names are up to 200 characters long and may contain any characters except for space, comma, and Ctrl-G.

### Quick Connect

Sometimes you want to connect to a server without going through the trouble of creating a new server in the Server List.

Click the Quick Connect Button Quick Connect button or choose File Quick Connect on the main menu. The Quick Connect screen will appear.

The Quick Connect screen. The Quick Connect screen

Enter the server address in the Server URL box, your desired &nickname; in the Nick box, and click the Connect button. When &kmyapplication; has connected to the server, enter command ``/join` #channelname` to join a channel.

### Frequently-used &irc; commands

The following is a short list of frequently-used &irc; commands. See RFC 2812 for a complete list of all commands, or visit irchelp.org. For a list of commands parsed by &kmyapplication;, see Konversation commands.

``/help``

  Lists commands available on the current server. Not supported by all servers.

``/help` cmd`

  Provides help for `cmd`. Not supported by all servers.

``/join #channel``

  Joins `#channel`. If the channel does not already exist, it is created and you are the channel operator.

``/part``

  Leaves the current channel and closes the channel tab.

``/part` #channel`

  Leaves `#channel` and closes the corresponding channel tab. Synonym for ``/leave``

``/me` msg`

  Sends `msg` to the channel preceded by your &nickname;. For example, if your &nickname; were `Tux`, typing `/me brews a cup a tea.` displays the message Tux brews a cup of tea. Unless they've filtered against these types of messages, all users see it. This kind of message is typically used to convey non-verbal information, such as your current emotional state, or what you are physically doing. If you are leaving your workstation for a short time, use the /away command instead.

``/away` msg`

  If anyone tries to send you a private message or invite you to a channel, they will be told that you are away from your workstation with `msg`.

``/away``

  Cancels an ``/away` msg` command.

``/query` nick`

  Creates a new tab with the user's `nick` for private conversation, commonly known on IRC as a Query. Everything written here is only visible to you and your query partner.

``/msg` nick msg`

  Sends `msg` to the user with &nickname; `nick`. Only `nick` sees the message. Use ``/query`` for longer conversations.

``/invite` nick`

  Invites the user with &nickname; `nick` to join a channel. This command is especially useful if the channel is invite-only.

### Private conversations (queries)

A private conversation is one that only you and one other person can see. Private conversations are called "queries" in &kmyapplication;. To initiate a private conversation, type ``/query` nick` in any input line, where nick is the &nickname; of the person you want to talk with. You can also click with the &RMB; on the person's &nickname; in the Nick Panel and choose Open Query A new tab will be created. Announce yourself by sending a message.

Queries are just like channels, except that only you and the other person can participate in the channel.

To leave the query, just close the tab. Note however, that if the other person sends you another message in the query, the tab will open again.

To leave all queries, choose Actions Close All Open Queries on the main menu.

When someone else initiates a query with you, &kmyapplication; creates a new tab with their &nickname;. If you don't wish to talk with the person, close the tab.

### Setting notifications

Notifications are actions that &kmyapplication; will perform whenever an event occurs. Suppose you have &kmyapplication; running, but minimized or hidden behind other application windows on your desktop. If someone wants to communicate with you, or your buddy joins a channel, you'd like to be alerted. Notifications will accomplish this.

To configure notifications, choose Settings Configure Notifications on the main menu. The Notification Settings screen will appear.

Immediately click the More Options button.

The Notification Settings screen. The Notification Settings screen

Click here to select an event.

Check the types of notifications you'd like to happen when the event occurs. (Mark taskbar entry causes the entry in the taskbar to flash when the event occurs.)

Repeat by selecting another event and checking the notifications desired. When you've configured all the desired notifications, click the Apply button.

Once you've set up your notifications, you can enable or disable all notification actions here. For example, you can choose to play a sound whenever your &nickname; is mentioned in a message. When you are at your workstation, you can disable the sounds, but while you are away from your workstation but nearby, you can enable the sounds in order to get your attention.

### Monitoring who is online

&kmyapplication; will keep you informed when your buddies are connected to the server or not.

To activate this feature, choose Windows Watched Nicks Online on the main menu. The Watched Nicks Online screen will appear.

The Watched Nicks Online screen The Watched Nicks Online screen

Click the Edit button. The Nick Watch List screen appears.

The Nick Watch List screen. The Nick Watch List screen

Check this box to activate the nick watch feature.

The &nickname;s of the users you want to monitor are listed here.

Click these buttons to add or remove &nickname;s from the list.

The Watched Nicks Online feature works by periodically polling the server. This box sets how often that occurs. Avoid numbers less than 20 seconds because it places excessive load on the server.

Click the OK button when you have finished adding or removing &nickname;s.

Note: Whenever you display the Watched Nicks Online screen, it may take a while before any &nickname;s are displayed until &kmyapplication; has polled the server. Normally, you leave the Watched Nicks Online screen running.

&kmyapplication; also displays a message in all the channels whenever a user in your Nick Watch List connects or disconnects from the server. The message looks like this:

`[17:52] [Notify] psn is online (irc.kde.org).`

### Configuring OnScreen Display (&osd;)

OnScreen Display (&osd;) is a unique feature of &kmyapplication;. With &osd; turned on, channel messages will appear on your desktop screen, even if &kmyapplication; is minimized. Here's an example of &osd; in action. The message in the upper lefthand part of the screen is from &kmyapplication;, which is running minimized in the system tray.

Example of OnScreen Display Example of OnScreen Display

To activate &osd;, choose Settings Configure &kmyapplication; on the main menu. The Edit Preferences screen will appear.

The OnScreen Display screen. The OnScreen Display screen

Click here to expand the Chat item.

Click here to select the OnScreen Display screen.

Check this box to activate &osd;.

Click this button to choose a font for &osd;. (Note: Not all fonts work. Luxi Sans 22 and Impact 22 are known to work.)

Check the boxes here to select the types of messages you'd like to appear on screen, then click the Apply button.

### Sending colorful messages

You can add color to the messages you send in any channel. In the Input Line of any channel, start typing your message. Click the Insert IRC Color Button Insert IRC Color button or choose Actions Insert IRC Color on the main menu. The IRC Color Chooser screen will appear.

The IRC Color Chooser screen. The IRC Color Chooser screen

Choose a color and click OK. Continue typing your message in the Input Line. To change the color again, click the Insert IRC Color button. Choose a different color and click OK.

### Defining new servers and channels

To add new servers or channels to the Servers List screen, choose File Server List on the main menu. The Server List screen will appear. Click New to define a new server and channel, or click on any server to select it and click Edit. The Edit Server screen appears.

The Edit Server screen. The Edit Server screen

Enter anything you like here. It is used to organize the entries in the Server List screen.

The name or IP number of the server. irchelp.org maintains a list of servers.

Enter the port number required to connect to the server. For most servers, this should be `6667`.

If you want to automatically connect to a channel on the server, enter the channel name here. Most require the `#`. To connect to a server without joining a channel, leave blank. To connect to multiple channels, enter the channel names separated by spaces.

Choose your identity here, which among other things, determines your starting &nickname; See Setting your identity.

If the server requires a password in order to connect, enter it here, otherwise leave blank.

If the channel requires a password in order to join, enter it here, otherwise leave blank. This password will apply to all channels listed in the Channel name box.

This command will be sent to the server after connecting. The example shown here is for the freenode network, which requires users to register their &nickname; with a password and login when connecting. `konvirocks` is the password for the nickname given in Default Identity. You may enter more than one command by separating them with semicolons.

Click OK to complete defining the server and channel.

### Configuring Quick Buttons

Whenever a channel tab is selected on the Main screen, eight Quick Buttons appear. The buttons may be customized to your liking for performing often-used &irc; commands. To customize the Quick Buttons, choose Settings Configure Konversation on the main menu. The Edit Preferences screen will appear. Click Appearance to expand it, then click Quick Buttons to display the Quick Buttons screen.

The Quick Buttons screen The Quick Buttons screen

There are 8 Quick Buttons. Click on an entry to change it. The Button name column is the name that will appear on the button in the Main screen. Keep the names short. The Button Action column is the action that will be performed when you click the Quick Button. Tips for creating actions are given on the screen.

Click OK to complete the changes.

Example:

Button Name: `Msg`

  Button Action: `Msg %u` (there is a space after `%u`)

To use this button in the Main screen, click on a &nickname; in the Nick Panel, then click the button. `/MSG` will appear in the Input Line followed by the chosen &nickname;. Type a message you want to send to that person and press &Enter;. The message will be sent to the user. Only that user will see the message.

Note: You cannot add or delete Quick Buttons, however there is an option to hide all of them in the Settings Configure Konversation Appearance General screen.

### Sending and receiving files

You may send files via &irc; to other users online, or they may send you files.

WARNING: Never open a file someone sends you unless they are a trusted source. It could be a virus.

To send a file to someone in a channel, click with the &RMB; on the &nickname; of the person in the Nick Panel of the Main screen. Choose Send File A dialog appears for you to choose a file to send. Next, a new DCC Status tab appears.

The DCC Status tab. The DCC Status tab.

The &nickname; of the recipient and file name appear here.

The Status column indicates the status of the file send or receive as follows:

Offering

  You are trying to send a file to the recipient. &kmyapplication; is waiting for the recipient to accept the file.

Connecting

  &kmyapplication; is trying to establish a connection with the other end.

Sending

  &kmyapplication; is sending the file to the other end.

Receiving

  &kmyapplication; is receiving the file from the other end.

Done

  The file has been successfully transfered.

Stalled

  The transfer was started but is not currently progressing.

Aborted

  Either you clicked the Abort button, or the other person aborted the transfer.

Failed

  An error occurred and the transfer was not successful..

Queued

  The transfer has been accepted and will begin when the software on the receiving end acknowledges.

Lookup

  &kmyapplication; is trying to get the IP number of the sender.

Resuming

  When a transfer begins but the file already exists on the user's system, the user will be prompted File already exists. Resume transfer? This status indicates the user resumed the transfer.

When someone wants to send you a file, the DCC Status tab will be created (if not already created). Click the DCC Status tab to display it. Click the file to select it, then click this button to accept the file and the transfer will begin. Note: You may configure &kmyapplication; to automatically accept sends from other people by choosing Settings Configure Konversation DCC Settings on the main menu.

If you have trouble sending or receiving files, your firewall or router may be blocking DCC ports. See Questions and Answers.

### Capturing &URL;s from messages.

In any channel, users sometimes post the &URL;s of interesting websites or other resources on the web. You can double-click any such &URL; and &kmyapplication; will launch the application associated with the &URL;. The application launched depends upon the &MIME; type of the &URL;. For example, a &URL; beginning with http: will activate your default KDE web browser and display the web page. (You can also specify the web browser to use.) If the &URL; scrolls off the screen, you might have trouble finding it again. &kmyapplication; can keep a convenient list of all &URL;s for you. To activate this feature, choose Windows URL Catcher on the main menu. A new tab called URL Catcher is created.

The URL Catcher tab. The URL Catcher tab.

This is the list of &URL;s seen since you started &kmyapplication;. The Nick column is the &nickname; of the person who posted the &URL;. If the &nickname; is blank, the URL appeared in a Server Messages tab. (&URL;s appearing in join and leave messages are not listed.) Click on a &URL; to select it.

Click here to activate the application associated with the selected &URL;. The application launched depends upon the &MIME; type of the &URL;. For example, a &URL; beginning with http: will activate your default web browser and display the web page. For web pages, you can also specify the web browser to use.

Click here to copy the selected &URL; to the &kde; clipboard..

Click here to delete the selected &URL; from the list.

Click here to save the list of &URL;s to a file.

Click here to clear the list.

### Setting your preferred web browser.

When you click on a highlighted &URL; anywhere in &kmyapplication;, it will launch the default KDE application associated with the &MIME; type of the &URL;. For example, when clicking on a &URL; beginning with http, &konqueror; is launched to display the web page. You can specify an application different from the KDE default. For example, you can use Mozilla instead.

To choose a different web browser, choose Settings Configure &kmyapplication; on the main menu. The Edit Preferences screen will appear.

The Web Browser screen The Web Browser screen

Click here to display the Web Browser screen.

Click here to specify that you want to use a custom web browser.

Enter the command to launch your desired web browser. When you click on a &URL; `%u` will be replaced with the &URL;.

Tip: (&UNIX; systems only) The default command is `mozilla '%u'`, which will start a new instance of Mozilla each time you click on a &URL;. If you prefer that Mozilla display the web page in a new tab of an already-running instance, create a file containing the following:

    #!/bin/sh
    mozilla -remote "openURL($@, new-tab)" || exec mozilla "$@";

Name the file `moz`, place it in the PATH, and make it executable (`chmod a+x moz`). Then enter `moz '%u'` for the web browser command in the screen above.

Note: The Web Browser setting does not apply to mailto: &URL;s. mailto: &URL;s always launch the default KDE mailer.

Click Apply to save your changes. You must reconnect to each server and channel for the changes to take effect. The easiest way to do this is to quit and restart &kmyapplication;.

### Marking Channel and Query Logs

You can insert a marker into channel and query screens to help you quickly locate information. To do this, choose Actions Insert Remember Line on the main menu. A line will appear at the bottom of the text on the screen. The line will scroll with the rest of the text in the screen.

### &kmyapplication; commands

The following commands are interpreted by &kmyapplication; and may differ from standard &irc; commands. Items inside square brackets are optional. Items separated by bar (|) are alternate forms of the command. Commands not listed here are sent to the server as entered.

``/me` msg`

  Sends `msg` to the channel preceded by your &nickname;. For example, if your &nickname; were `Tux`, typing `/me brews a cup a tea.` displays the message Tux brews a cup of tea. Unless they've filtered against these types of messages, all users see it. This kind of message is typically used to convey non-verbal information, such as your current emotional state, or what you are physically doing. If you are leaving your workstation for a short time, use the /away command instead.

``/ame` msg`

  Like the ``/me`` command above except that the message is sent to all the channels and queries you have open on all the servers you have connected in &kmyapplication;.

``/join` channel [pwd]`

  Joins `channel`. If the server permits it, and if the channel does not already exist, it is created and you are the channel operator. If the channel requires a password in order to join, specify as `pwd`. Most channel names begin with `#`

``/j` channel [pwd]`

  Same as ``/join`` above.

``/part` [channel] [reason]`

  Leaves `channel` with `reason` and closes the corresponding channel tab. Within a &kmyapplication; channel or query tab, you can just enter ``/part`` which closes that channel or query with your default reason as given in the Settings.

``/leave` [channel] [reason]`

  Same as ``/part`` above.

``/quit``

  When entered in any channel, query, or DCC tab, disconnects from the corresponding server and closes all channel, query, or DCC tabs open on that server.

``/notice` nick|channel msg`

  Sends `msg` to the user with &nickname; `nick` or to everyone in `channel`. The following is an example of what appears to you in the channel tab

  `[17:14] [Notice] Sending notice "I think I understand" to #konversation`

  And this is what the recipients see

  `[17:15] [Notice] -Eisfuchs- I think I understand`

``/query` nick`

  Creates a new tab with the user's `nick` for private conversation, commonly known on IRC as a Query. Everything written here is only visible to you and your query partner. You may enter more than one &nickname; separated by spaces and a query tab will be opened for each &nickname;. Each such query tab will be private between you and the query partner.

``/msg` nick|channel` `message`

  Sends a private message to the user with &nickname; `nick` or to all users in `channel`. Unlike ``/query``, does not open a new tab. If `message` begins with ``/me`` , the message is formatted in the same manner as a ``/me`` command.

  Examples

  `/msg Eisfuchs I need some help with the msg command`

  `/msg #konversation New version of Konvi is online!`

  `/msg Eisfuchs /me is compiling the Handbook right now.`

``/smsg` nick|channel` `message`

  Same as ``/msg`` except the message is not displayed on your screen. This is useful for preventing passwords and other sensitive information from remaining exposed on your screen or being logged.

``/amsg` nick|channel` `message`

  Like the ``/msg`` command above except that the message is sent to all the channels and queries you have open on all the servers you have connected in &kmyapplication;.

``/op` nick`

  When entered into a channel tab, attempts to give `nick` operator privilege for the channel. May not work if you lack sufficient privilege in the channel (you must be a channel operator yourself). You may enter more than one &nickname; separated by spaces.

``/deop` nick`

  When entered into a channel tab, takes away channel operator privilege from `nick`. You may enter more than one &nickname; separated by spaces.

``/oper` [nick]`

  Grants the user with &nickname; `nick` IRC-Op (Administrator) privilege. This only works if the &nickname; is listed in the server's O: line. IRC-Ops have the privilege to ``/kill`` &nickname;s, ``/connect`` servers to the &irc; network, and more. If `nick` is not entered, attempts to grant yourself IRC-Op privilege. You will be prompted for your IRC-Op user name and password in either case.

``/voice` nick`

  In certain channels (with +m flag), users cannot send messages unless they have voice privilege. This command attempts to give `nick` voice privilege. You must have channel operator privilege to execute this command. This command is mostly used when you are an operator for a moderated channel.

``/unvoice` nick`

  Takes away voice privilege from `nick` in the channel.

``/topic` [channel] [message]`

  Attempts to set the topic of `channel` to `message`. When entered in a channel tab, `channel` may be omitted and defaults to the channel active in the tab. If `message` is omitted, displays the current topic of the channel. Changing a channel topic may fail if you lack sufficient privilege.

``/away` reason`

  If anyone tries to send you a private message or invite you to a channel, they will be told that you are away from your workstation for `reason`. To change your state back to normal, enter ``/away`` without a reason.

``/aaway` reason`

  Like the ``/away`` command above except that the command is sent to all the servers you have connected in &kmyapplication;.

``/invite` nick [channel]`

  Invites the user with &nickname; `nick` to join `channel`. This command is especially useful if the channel is invite-only. When entered in a channel tab, `channel` may be omitted.

``/exec` script [parameters]`

  Executes the &kmyapplication;-compatible shell script named `script`, passing it `parameters`. See Scripting for more information on using and writing scripts.

  Examples:

  `/exec kdeversion`

  Sends your system's KDE and Qt version numbers to the channel.

  `/exec cmd uname -a`

  Sends your Linux version string to the channel.

``/notify` [nick]`

  Adds or removes `nick` from your Watched Nicks Online list. If the &nickname; is already in the list, it is removed. If it is not in the list, it is added. If `nick` is omitted, displays the current list of watched &nickname;s.

``/prefs` [`list`|group] [`list`|option] [value]`

  Displays or sets &kmyapplication; settings without using the Settings screen. If a parameter contains spaces, surround it with quotes.

  Examples:

  `/prefs list`

  lists the available option groups.

  `/prefs "General Options" list`

  lists the options available in group `General Options` along with their current values

  `/prefs "General Options" ShowTrayIcon`

  Displays the current value of the setting for displaying the &kmyapplication; icon in the system tray.

  `/prefs "General Options" ShowTrayIcon false`

  Turns off the &kmyapplication; icon in the sytem tray.

``/kick` nick reason`

  When entered in a channel tab, attempts to kick the user with &nickname; `nick` from the channel with `reason`. If `reason` is not entered, defaults to the reason in the Settings. This command may only be used in a channel tab.

``/ban` [`-host`|`-domain`| `-userhost`|`-userdomain`] [channel] user|mask`

  Attempts to ban the `user` or `mask` from `channel`. When entered in a channel tab, `channel` may be omitted. For more information on hosts, domains, and masks, see the documents at irchelp.org. Too get the current ban list for a channel, enter ``/mode` channel `b``.

``/unban` [channel] pattern`

  Reverts a previous banning from a channel. When entered in a channel tab, `channel` may be omitted.

``/ignore` [`-all`] nick`

  Adds `nick` to your Ignore list. You may specify more than one &nickname; separated by spaces. Channel messages from users on your Ignore list are not displayed. In addition, if you enter ``-all``, all message types (queries, notices, CTCP, DCC, and Exceptions) from the user are ignored as well as channel messages.

``/quote` cmd`

  Sends `cmd` to the server.

``/say` msg`

  When entered in a channel tab, sends `msg` to the channel. This is the same as entering `msg` in the channel Input Line. Useful for sending &irc; commands when you don't want to execute the command. Two command characters (//) in a row does the same thing as ``/say``. Also used by scripts to send messages.

``/raw` [`open`|`close`]`

  Places the server log in raw mode (`open`) or stops raw mode (`close`). If neither `open` or `close` is entered, defaults to `open`. In raw mode, the log displays every message received from the server in native &irc; format.

``/konsole``

  Opens a new tab running a KDE Konsole.

``/server` [url] [pwd]`

  Connects to the server at address `url`. If `url` is omitted, connects to the server associated with the tab where you enter the command. This is useful for re-connecting to a server when disconnected. If the server requires a password in order to connect to it, enter it for `pwd`. If the server requires a port number other than the default (6667), enter the `url` like this: irc.kde.org:6665.

``/dcc` `SEND` nick [filename]`

  Sends `filename` to the user with &nickname; `nick`. If `filename` is omitted, a dialog appears for you to select a file.

``/dcc``

  Opens a DCC Status tab.

``/ctcp` nick|channel `ping``

  Sends a PING message to `nick` or `channel`. This is useful for determining if someone you are talking with has a high network lag, or (when sent to a channel) if your system has a high lag.

``/ctcp` nick|channel msg`

  Sends a message to `nick` or all users in `channel`. This is similar to the ``/msg`` command above, except that the message is sent using the CTCP protocol. The response on the other end depends on the &irc; client program the user is running. For example, when conversing with another &kmyapplication; user, `/ctcp Eisfuchs TIME` will return the system time on Eisfuch's computer. `/ctcp Eisfuchs VERSION` will return the &kmyapplication; version number from Eisfuch's computer.

### Scripting

&kmyapplication; comes with some handy scripts you can run from the program. To run a script, in a channel, query, DCC, or server tab, type a command of the form

``/exec` script [parameters]`

which executes the script named `script` passing it (optional) `parameters`.

For example, type the following command in a channel tab

`/exec kdeversion`

to send your KDE and Qt version numbers to the channel.

`/exec cmd uname -a`

executes the `cmd` script, passing it `uname -a`. This sends your Linux version string to the channel.

To get a list of all available scripts, type the following command in a Konsole screen.

`ls $KDEDIR/share/apps/konversation/scripts`

You can write your own scripts. Scripts are shell scripts and can be written in any shell language, such as bash, perl, or python. When &kmyapplication; runs a script, the first three parameters sent to the script are:

- The port number for the &irc; server of the tab where the ``/exec`` command was entered.

- The address of the server.

- The channel name.

Here is a sample bash script (cmd).

    #!/bin/bash

    # Executes a command and prints the output into Konversation.

    PORT=$1;
    SERVER=$2;
    TARGET=$3;
    shift;shift;shift;

    $@ | while read line; do dcop $PORT Konversation say $SERVER "$TARGET" "$@: $line"; done

Notice that the script uses DCOP to communicate with &kmyapplication;. The `say` command causes the output to be sent to the channel as a normal message. To display something in the tab without sending it to other users, use `info` instead. Look at the existing script files for more examples of writing scripts.

To be able to run a script you have written, you must install it by copying it to $KDEDIR/share/apps/konversation/scripts or to $HOME/.kde/share/apps/konversation/scripts. You must also give the file execute privilege, for example `chmod a+x myscript`.

## Command Reference

### The main &kmyapplication; window

#### The File Menu

File Server List

  Displays the list of servers and channels.

File Quick Connect

  Displays the Quick Connect screen for connecting to a server.

&Ctrl;Q File Quit

  Quits &kmyapplication;

#### The Actions Menu

Actions Find Text

  Searches for text strings in the current screen.

Actions Insert IRC Color

  See Sending colorful messages.

Actions Insert Remember Line

  See Marking Channel and Query Logs.

Actions Clear Window

  Clears the current screen.

Actions Previous Tab

  Displays the screen corresponding to the previous tab.

Actions Next Tab

  Displays the screen corresponding to the next tab.

Actions Close Tab

  Closes the current screen. If closing a channel, leaves the channel. If closing a Server Messages tab, closes all open channels on that server and disconnects from the server.

F11 Actions Close all Open Queries

  Leaves all query (private conversation) channels. See Private conversations.

#### The Windows Menu

Windows Watched Nicks Online

  Displays the Watched Nicks Online screen. See Monitoring who is online.

Windows Channel List

  Displays a list of channels available on the server.

Windows URL Catcher

  Displays the URL Catcher screen.

Windows New Konsole

  Displays a terminal screen. You may open as many Konsole tabs as you like.

Windows Open Logfile

  Displays a screen with the log of messages from the current tab. Only works for Channel and Server Messages tabs. Logging must be enabled in Settings Configure Konversation Log Settings on the main menu.

#### The Settings Menu

Settings Hide Menubar

  Hides the main menu. Hit &Ctrl;M to display it again.

Settings Hide Toolbar

  Hides the toolbar.

Settings Hide Statusbar

  Hides the status bar at the bottom of the main screen.

Settings Configure Shortcuts

  Allows you to change keyboard shortcuts for &kmyapplication;.

Settings Configure Toolbars

  Allows you to add or remove buttons from the &kmyapplication; toolbar.

Settings Configure Notifications

  Displays the Notifications Settings screen.

Settings Configure &kmyapplication;

  Displays the Edit Preferences screen.

#### The Help Menu

&help.menu.documentation;

## Questions and Answers

&reporting.bugs; &updating.documentation;

When I start &kmyapplication;, I'd like to automatically join more than one channel on a single server. How do I do that?

In the Edit Server screen, type the names of the channels separated by spaces in the Channel name box.

When I start &kmyapplication;, I'd like to connect to a server without joining any channels. How do I do that?

In the Edit Server screen, leave the Channel name box empty.

&kmyapplication; won't connect to any servers. What is wrong.?

There are several things that could be wrong.

1. Make sure that you have entered the correct Server name and the correct Port in the Server List screen.

2. Check the output in the Server Messages screen for any error messages. Did the server reject the connection because of a bad password? Did the server reject the connection because it requires IDENTD and your computer did not respond to the IDENT request?

3. If you are behind a firewall, make sure the correct ports are enabled. &kmyapplication; needs the following ports enabled:

   - Outgoing TCP 6667 (or the port of the server you connect to)

   - Incoming TCP 113 (if the server requires IDENTD)

   For more information on IRC connection problems, see irchelp.org.

## Credits and License

&kmyapplication;

Program copyright 2002,2003 by the Konversation team.

konversation.sourceforge.net

Contributors:

- Dario Abatianni eisfuchs@tigress.com

- Matthias Gierlings gismore@users.sourceforge.net

- Alex Zepeda garbanzo@hooked.net

- Stanislav Karchebny berkus@users.sourceforge.net

- Mickael Marchand marchand@kde.org

- Peter Simonsson psn@linux.se

- Christian Muehlhaeuser chris@chris.de

Thanks to:

- Frauke Oster frauke@frsv.de

  System tray patch.

- Lucijan Busch lucijan@kde.org

  Bug fixes.

- Sascha Cunz mail@sacu.de

  Extended user modes patch.

- Steve Wollkind steve@njord.org

  Close visible tab without shortcut patch.

- Thomas Nagy thomas.nagy@eleve.emn.fr

  Cycle tabs with mouse scroll wheel.

- Tobias Olry tobias.olry@web.de

  Channel ownership mode patch.

- Ruud Nabben r.nabben@gawab.com

  Option to enable IRC color filtering.

- Michael Goettsche mail@tuxipuxi.de

  Various bugfixes

- Ismail Donmez kde@myrealbox.com

  Bugfixes and features

Documentation Copyright © 2003 Gary R. Cramblitt garycramblitt@comcast.net

&underFDL;

&underGPL;

## Installation

### How to obtain &kmyapplication;

&install.intro.documentation;

The latest versions of &kmyapplication;, including source code and build instructions can also be obtained from the &kmyapplication; home page.

### Requirements

In order to successfully use &kmyapplication;, you need &kde; 3.0.3 or later and a network connection. On earlier &kde; versions some features may be missing. If you will be running &kmyapplication; from behind a firewall, see Questions and Answers.

&documentation.index;