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

Hacking on Circe

Release Process

See RELEASE.md.

Emacs Compatibility

Circe should work best on the current major release of Emacs. It should work at all with the last major release of Emacs.

As of 2016-06-19, this means:

  • Emacs 24 (latest release) should work flawlessly and have sane defaults. This is the main concern.
  • Emacs git should also work.

Older versions (23 and earlier) are simply not relevant to Circe anymore.

Extension Modules

To extend Circe for other purposes than those features in the core you have to write an extension module.

There are only few requirements for extension modules. A hypothetical grovel module should be provided in a circe-grovel.el file. This file needs to provide the circe-grovel feature, and two commands, named enable-circe-grovel and disable-circe-grovel. What those commands do is up to you.

It is also advisable that the enable function be annotated with an autoloads line.

The extension modules should not use minor modes. When a number of modules are loaded, any major mode help buffer is croweded with those useless minor modes which add no information. The enable/disable convention of Circe does not clutter the minor mode list.

Clone this wiki locally