aboutsummaryrefsloggraphtreecommitdiffstats

kirc

KISS for IRC, a tiny IRC client written in POSIX C99.

Packaging status Codacy status

Features

  • Excellent cross-platform compatibility.
  • Asynchronous user input and server messager handling.
  • No dependencies other than a C99 compiler.
  • Simple Authentication and Security Layer (SASL) procotol support.
  • Client-to-client protocol (CTCP) support.
  • Transport Layer Security (TLS) protocol support (via external utilities).
  • Full chat history logging.
  • Multi-channel joining at server connection.
  • Simple command aliases and full support for all RFC 2812 commands.
  • Easy color scheme definition via ANSI 8-bit colors.

Fork-specific features

  • Uses current username as nick if no nick is specified.
  • Prints a count of names returned from the /NAMES command instead of dumping them all to the screen.
  • Clear screen using ctrl-l
  • Better coloring for input prompt and CTCP ACTION messages

Installation & Usage

Building and installing on KISS Linux using the Community repository:

kiss b kirc
kiss i kirc

Building and installing on Arch and Arch-based distros using the AUR:

git clone https://aur.archlinux.org/kirc-git.git
cd kirc
makepkg -si

Building and installing from source (works on Raspbian, Debian, Ubuntu and many other Unix distributions):

git clone https://github.com/mcpcpc/kirc.git
cd kirc
make
make install

Usage

Consult man kirc for a full list and explanation of available kirc arguments.

kirc [-s hostname] [-p port] [-c channels] [-n nickname] [-r realname] [-u username] [-k password] [-a token] [-x command] [-o logfile] [-e|v|V]

Command Aliases

<message>                  Send a PRIVMSG to the current channel.
@<channel|nick> <message>  Send a message to a specified channel or nick 
@@<channel|nick> <message> Send a CTCP ACTION message to a specified channel or nick 
/<command>                 Send command to IRC server (see RFC 2812 for full list).
/#<channel>                Assign new default message channel.

User Input Key Bindings

  • CTRL+B or LEFT ARROW moves the cursor one character to the left.
  • CTRL+F or RIGHT ARROW moves the cursor one character to the right.
  • CTRL+E moves the cursor to the end of the line.
  • CTRL+A or HOME moves the cursor to the start of the line.
  • CTRL+W deletes the previous word.
  • CTRL+U deletes the entire line.
  • CTRL+K deletes the from current character to end of line.
  • CTRL+C Force quit kirc.
  • CTRL+D deletes the character to the right of cursor.
  • CTRL+T swap character at cursor with previous character.
  • CTRL+H equivalent to backspace.
  • CTRL+L clear screen.

Support Documentation

Please refer to the official Support Documention for examples, troubleshooting and use cases.

Contact

For any further questions or concerns, feel free to reach out to me, mcpcpc, on #kirc or #kisslinux Freenode IRC channels.