ERC (software)

IRC client for the Emacs text editor
title: "ERC (software)" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["free-irc-clients", "emacs-modes"] description: "IRC client for the Emacs text editor" topic_path: "general/free-irc-clients" source: "https://en.wikipedia.org/wiki/ERC_(software)" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0
::summary IRC client for the Emacs text editor ::
::data[format=table title="Infobox software"]
| Field | Value |
|---|---|
| name | ERC |
| screenshot | Erc-screenshot.png |
| caption | ERC running on GNU Emacs 24.3 |
| author | Alexander L. Belikoff |
| Sergey Berezin | |
| developer | Amin Bandali, F. Jason Park, and other GNU Emacs developers and contributors |
| programming language | Emacs Lisp |
| size | 944 KB |
| genre | IRC client |
| license | GPL-3.0-or-later |
| website | |
| :: |
| name = ERC | logo = | screenshot = Erc-screenshot.png | caption = ERC running on GNU Emacs 24.3 | author = Alexander L. Belikoff Sergey Berezin | developer = Amin Bandali, F. Jason Park, and other GNU Emacs developers and contributors | programming language = Emacs Lisp | size = 944 KB | language = | genre = IRC client | license = GPL-3.0-or-later | website =
ERC is an Internet Relay Chat (IRC) client integrated into GNU Emacs. It is written in Emacs Lisp. | url = http://www.linux.com/archive/articles/59542 | title = Chat it up in Emacs with IRC modes | access-date = 2009-10-12 | last = Stutz | first = Michael | date = 2007-01-15 | publisher = Linux.com | url = https://lwn.net/Articles/216456/ | title = The Grumpy Editor's Guide to graphical IRC clients | access-date = 2009-10-12 | author = Jonathan Corbet | date = 2007-01-16 | work = The LWN Grumpy Editor series | publisher = LWN.net
Features
ERC includes message timestamping, automatic channel joining, flood control,{{cite book |title=Malicious Mobile Code: Virus Protection for Windows |first=Roger A. |last= Grimes |year=2001 |publisher=O'Reilly Media |page=240 |chapter=Flooding |isbn=9781565926820 |url=https://archive.org/details/maliciousmobilec00grim |url-access=registration |quote=irc flood control. ERC can highlight nicks and text for conversation tracking, highlight and optionally remove control characters, and allows URLs, nicknames and text to be converted to buttons. It provides input history, and separate buffers per server and channel. Notifications include channel activity on the Emacs mode-line, user online status, and channel tracking of hidden conversations. ERC is multi-lingual, and provides auto-script loading at startup.{{cite web | url = http://www.linuxlinks.com/article/20090830123141514/ERC.html | title = ERC | access-date = 2009-10-12 | date = 2009-09-13 | work = 10 of the Best Free Linux IRC Clients | publisher = LinuxLinks
ERC has a modular design, with many features implemented in "more than two dozen loadable modules" included in the default setup, such as autoaway, fill (splits long lines), log (saves chat buffers), spelling, bbdb, which connects ERC to Emacs' BBDB for contact management, and replace, which auto-replaces given text in messages. ERC supports SSL/TLS for encrypted IRC communication.
History
According to the GNU project, ERC was first developed by Alexander L. Belikoff and Sergey Berezin.{{cite web |title=History |publisher=GNU |work=Emacs Manual |url=https://www.gnu.org/software/emacs/manual/html_node/erc/History.html}} Berezin wrote that ERC was "originally written by Alexander L. Belikoff, then I improved it in many ways and promoted to version 2.0".{{cite web |first=Sergey |last=Berezin |title=Projects |url=http://www.sergeyberezin.com/project.php |access-date=2011-07-13 |archive-date=2012-03-27 |archive-url=https://web.archive.org/web/20120327155135/http://www.sergeyberezin.com/project.php |url-status=dead |url = http://snow.he.net/~mlang/emacs/erc.html |title = ERC -- The Emacs IRC Client |access-date = 2009-10-12 |last = Lang |first = Mario |date = 2003-03-14 |publisher = Mario Lang (ERC dev) personal website |url-status = dead |archive-url = https://web.archive.org/web/20110514234131/http://snow.he.net/~mlang/emacs/erc.html |archive-date = 2011-05-14 | url = https://www.gnu.org/software/erc/ | title = ERC - an IRC client for Emacs | access-date = 2009-10-12 | publisher = GNU |url=https://erc.sourceforge.net/ |title=ERC Project |publisher=SourceForge.net and ERC was officially incorporated into Emacs release 22.1 on June 3, 2007.{{cite mailing list | url = http://lists.gnu.org/archive/html/info-gnu-emacs/2007-06/msg00000.html | title = Emacs 22.1 released | date = 2007-06-03 | access-date = 2009-10-16 | mailing-list = info-gnu-emacs | last = Stallman | first = Richard | author-link = Richard Stallman
Related work
ERC is one of two IRC clients included in the Emacs distribution; rcirc is the other. Circe and the "ascetic" ZenIRC are also Emacs-based IRC clients. According to its author, Circe incorporates ideas from ERC such as its activity tracker and others; it was developed as ERC became "difficult to debug and improve."{{cite web | url = http://www.nongnu.org/circe/ | title = Circe - Yet Another Client for IRC in Emacs | access-date = 2009-10-12 | last = Schäfer | first = Jorgen | date = 2005-10-21 | quote = The best feature of Circe is the activity tracker, which many will know from ERC. | publisher = nongnu.org
References
- {{cite web |url = http://xtalk.msk.su/~ott/ru/emacs/emacs-im/EmacsERC.html |title = Emacs: ERC |access-date = 2009-10-16 |last = Ott |first = Alex |language = ru |publisher = xtalk.msk.su |archive-url = https://web.archive.org/web/20090401055945/http://xtalk.msk.su/~ott/ru/emacs/emacs-im/EmacsERC.html |archive-date = 2009-04-01 |url-status = dead
References
- [http://www.emacswiki.org/emacs/ErcSSL "ERC SSL"]. Emacswiki.org.
::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::