![]() ERC running on GNU Emacs 24.3 | |
Original author(s) | Alexander L. Belikoff Sergey Berezin |
---|---|
Developer(s) | Amin Bandali, F. Jason Park, and other GNU Emacs developers and contributors |
Stable release | ERC improvements are now released as part of Emacs. [±] |
Repository | |
Written in | Emacs Lisp |
Size | 944 KB |
Type | IRC client |
License | GPL-3.0-or-later |
Website | www |
ERC is an Internet Relay Chat (IRC) client integrated into GNU Emacs. It is written in Emacs Lisp. [1] [2]
ERC includes [3] message timestamping, automatic channel joining, flood control, [4] and auto-completion of nicks and commands. 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. [3]
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. [1] ERC supports SSL/TLS for encrypted IRC communication. [5]
According to the GNU project, ERC was first developed by Alexander L. Belikoff and Sergey Berezin. [6] Berezin wrote that ERC was "originally written by Alexander L. Belikoff, then I improved it in many ways and promoted to version 2.0". [7] The pair stopped development in 1999. [6] Mario Lang wrote that as of 2001 ERC had been "apparently abandoned", so he and Alexander Schroeder adopted it and created the ERC SourceForge project. [8] Berezin responded positively to news of the renewed effort and bestowed stewardship to the new developers; in the ensuing years, versions 2.1, 3, 4, 5, and 5.1 were released. [6] ERC development moved from SourceForge to GNU in May 2006, [9] [10] and ERC was officially incorporated into Emacs release 22.1 on June 3, 2007. [11] ERC development now takes place inside the Emacs source-code tree.
ERC is one of two IRC clients included in the Emacs distribution; rcirc is the other. [1] Circe and the "ascetic" ZenIRC are also Emacs-based IRC clients. [1] 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." [12]
BitchX is a free IRC client that has been regarded as the most popular ircII-based IRC client. The initial implementation, written by "Trench" and "HappyCrappy", was a script for the IrcII chat client. It was converted to a program in its own right by panasync. BitchX 1.1 final was released in 2004. It is written in C and is a TUI application utilizing ncurses. GTK+ toolkit support has been dropped. It works on all Unix-like operating systems, and is distributed under a BSD license. It was originally based on ircII-EPIC, and eventually it was merged into the EPIC IRC client. It supports IPv6, multiple servers and SSL, and a subset of UTF-8 with an unofficial patch.
Internet Relay Chat (IRC) is a text-based chat system for instant messaging. IRC is designed for group communication in discussion forums, called channels, but also allows one-on-one communication via private messages as well as chat and data transfer, including file sharing.
Bersirc is a discontinued open-source Internet Relay Chat client for the Microsoft Windows operating system. Linux and Mac OS X versions were "in development". Bersirc uses the Claro toolkit, which aims to provide an interface to native windowing systems and widgets on all operating systems. Microsoft .NET and Qt toolkit ports were also planned. The final version of Bersirc was 2.2.14.
A BNC is a piece of software that is used to relay traffic and connections in computer networks, much like a proxy. Using a BNC allows a user to hide the original source of the user's connection, providing privacy as well as the ability to route traffic through a specific location. A BNC can also be used to hide the true target to which a user connects.
GnuTLS is a free software implementation of the TLS, SSL and DTLS protocols. It offers an application programming interface (API) for applications to enable secure communication over the network transport layer, as well as interfaces to access X.509, PKCS #12, OpenPGP and other structures.
The following tables compare general and technical information between a number of notable IRC client programs which have been discussed in independent, reliable prior published sources.
Crypto API is a cryptography framework in the Linux kernel, for various parts of the kernel that deal with cryptography, such as IPsec and dm-crypt. It was introduced in kernel version 2.5.45 and has since expanded to include essentially all popular block ciphers and hash functions.
GNU Bazaar is a distributed and client–server revision control system sponsored by Canonical.
ircII is a free, open-source Unix IRC and ICB client written in C. Initially released in the late 1980s, it is the oldest IRC client still maintained.
GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement. Its tag line is "the extensible self-documenting text editor."
Mibbit is a web-based client for web browsers that supports Internet Relay Chat (IRC), Yahoo! Messenger, and Twitter. It is developed by Jimmy Moore and is designed around the Ajax model with a user interface written in JavaScript. It is the IRC application setup by default on Firefox.
rcirc is an Internet Relay Chat (IRC) client written in Emacs Lisp. It is one of two IRC clients included in GNU Emacs since release 22.1, alongside ERC.
WeeChat is a free and open-source Internet Relay Chat client that is designed to be light and fast. It is released under the terms of the GNU GPL-3.0-or-later and has been developed since 2003.
Smuxi is a cross-platform IRC client for the GNOME desktop inspired by Irssi. It pioneered the concept of separating the frontend client from the backend engine which manages connections to IRC servers inside a single graphical application.
Konversation is an Internet Relay Chat (IRC) client built on the KDE Platform and is free software released under the terms of the GNU GPL-2.0-or-later. Konversation is currently maintained in the KDE Extragear Network module, which means that it has its own release cycle which is independent from the main KDE applications. It is the default IRC client in many prominent Linux distributions, such as openSUSE, the KDE spin of Fedora, and Kubuntu.
Ayttm is a multi-protocol instant messaging client. It is the heir of the EveryBuddy project.
KVIrc is a graphical IRC client for Linux, Unix, Mac OS and Windows. The name is an acronym of K Visual IRC in which the K stands for a dependency to KDE, which became optional from version 2.0.0. The software is based on the Qt framework and its code is released under a modified GNU General Public License.
Quassel IRC, or Quassel, is a graphical, distributed, cross-platform IRC client, introduced in 2008. It is released under the GNU General Public License version 2 and version 3, for GNU and Unix-like operating systems, macOS, and Microsoft Windows. It has also been ported to OS/2 Warp due to its cross-platform nature. Since the release of Kubuntu 9.04 Quassel is Kubuntu's default IRC client. Quassel uses the Qt application framework.
LeafChat is a free IRC client for Microsoft Windows and Unix-like operating systems, licensed under the GNU GPL-3.0-or-later. A donation is requested.
irc flood control.
The best feature of Circe is the activity tracker, which many will know from ERC.