Skip to content
Vasilij Schneidermann edited this page Jul 13, 2021 · 8 revisions

Circe Manual

Circe, a Client for IRC in Emacs, is a fully-featured IRC client for the Emacs text editor.

Connecting to IRC

Once Circe is installed according to the instructions on the Homepage, it is easy to connect to an IRC server. The command is M-x circe.

At the following prompt, you can either enter a server name or a network name. By default, the network Libera Chat is configured. Just hit TAB to expand it. If you use a server name, Circe will also ask you for a port number. Usually, that would be 6667.

If you connect to Libera Chat, you can visit us in the channel #emacs-circe. Just type /join #emacs-circe in the Circe server buffer. Another good channel to hang out in is #emacs.

Compiling Circe

Circe comes with a build.sh script to compile the lisp files and provide autoloads. This can speed up startup and run time.

The basic steps are the same as for the normal installation:

mkdir -d ~/.emacs.d/lisp/
cd ~/.emacs.d/lisp
git clone git://github.com/emacs-circe/circe.git

Then you run build.sh in the newly created directory

cd ~/.emacs.d/lisp/circe
./build.sh

This will create a new directory called build/ which contains all Circe files. To use it, simply add the following to your .emacs:

(add-to-list 'load-path "~/.emacs.d/lisp/circe/build")
(require 'circe-autoloads)

The command M-x circe should work as expected.

Concepts

When Circe connects to an IRC server, she creates a server buffer which is dedicated only to this server. Even though it is the first buffer available for a connection, it's the least important for day to day usage of the client.

As soon as you join a channel, Circe creates a channel buffer for you, which will contain all data received from or sent to this channel.

For private messages, Circe creates a query buffer, which is dedicated to the conversation with a single other individual. Circe tries to keep track of the nick of that individual.

The channel in channel buffers and the other nick in query buffers is usually called the target of this buffer.

Any text typed at the input line of any Circe buffer is sent as a message to the target. In a channel, this means you send this as a message to the channel; in a query, this is sent as a private message to the corresponding nick. But when the line starts with a slash, it is considered to be a command.

Further Reading

Clone this wiki locally