Skip to content
jorgenschaefer edited this page Oct 6, 2012 · 26 revisions

Circe

Circe is a Client for IRC in Emacs. It's one of several IRC clients for the versatile editor. It includes lui.el, a line-oriented user interface that can be used by other packages to create a similar user experience.

Lui, the Linwise User Interface

A major part of Circe is the user interface, called Lui, which abstracts away the typical line-based interaction. It is designed to be usable for other software projects.

Features

Circe supports most standard features one would expect of an IRC client, like per-channel and per-query windows, nick highlighting, flood protection, etc. Some of the less common features include:

  • Channel activity is tracked in the mode line. C-c C-SPC cycles through channels with activity, and back to the buffer you came from.
  • A fools list complements the ignore list. Lines from fools are by default hidden, but can be shown temporarily with a keyboard command. This makes it possible to ignore some annoying person, but still figure out what is going on in case someone starts talking with them.
  • Both the ignore and fool features do not only ignore people, but try to be smart about ignoring also ignoring those who address the ignored person.
  • Special netsplit handling to avoid the resulting flood.
  • Time stamps do not get copied when chat text is copied using Emacs commands.
  • Lines sent to the server are split automatically to keep them below the maximum line length for IRC. This splitting happens at word boundaries.

Lacking Features

  • DCC has not been implemented.
  • /MODE, /KICK etc. commands. Use /QUOTE to send the verbatim code. Also, think twice before using those. They're often unnecessary.

Screenshot

It looks like Emacs. Except it has IRC.

Circe in a non-windowing Emacs

Installation

Clone the git repository, add the lisp/ directory to your load-path, (require 'circe) and then simply use M-x circe to connect to IRC.

Other Clients for Emacs

Clone this wiki locally