ERC (software)

Last updated
ERC
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.gnu.org/software/emacs/erc.html

ERC is an Internet Relay Chat (IRC) client integrated into GNU Emacs. It is written in Emacs Lisp. [1] [2]

Contents

Features

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]

History

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]

See also

Related Research Articles

<span class="mw-page-title-main">BitchX</span> Free IRC client

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.

<span class="mw-page-title-main">IRC</span> Protocol for real-time Internet chat and messaging

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.

<span class="mw-page-title-main">Bersirc</span> Former Internet Relay Chat client

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.

<span class="mw-page-title-main">GnuTLS</span> Free software library implementing TLS

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.

<span class="mw-page-title-main">GNU Bazaar</span>

GNU Bazaar is a distributed and client–server revision control system sponsored by Canonical.

ircII Oldest still active developed IRC-Client

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.

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

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."

<span class="mw-page-title-main">Mibbit</span> Web based IRC client

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 IRC client

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.

<span class="mw-page-title-main">WeeChat</span> IRC client

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.

<span class="mw-page-title-main">Smuxi</span> IRC client

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.

<span class="mw-page-title-main">Konversation</span> IRC client

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.

<span class="mw-page-title-main">Ayttm</span> Instant messaging client

Ayttm is a multi-protocol instant messaging client. It is the heir of the EveryBuddy project.

<span class="mw-page-title-main">KVIrc</span> IRC Client

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.

<span class="mw-page-title-main">Quassel IRC</span> Cross-platform IRC client

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.

<span class="mw-page-title-main">LeafChat</span> IRC client

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.

References

  1. 1 2 3 4 Stutz, Michael (2007-01-15). "Chat it up in Emacs with IRC modes". Linux.com . Retrieved 2009-10-12.
  2. Jonathan Corbet (2007-01-16). "The Grumpy Editor's Guide to graphical IRC clients". The LWN Grumpy Editor series. LWN.net . Retrieved 2009-10-12.
  3. 1 2 "ERC". 10 of the Best Free Linux IRC Clients. LinuxLinks. 2009-09-13. Retrieved 2009-10-12.
  4. Grimes, Roger A. (2001). "Flooding". Malicious Mobile Code: Virus Protection for Windows . O'Reilly Media. p.  240. ISBN   9781565926820. irc flood control.
  5. "ERC SSL". Emacswiki.org.
  6. 1 2 3 "History". Emacs Manual. GNU.
  7. Berezin, Sergey. "Projects". Archived from the original on 2012-03-27. Retrieved 2011-07-13.
  8. Lang, Mario (2003-03-14). "ERC -- The Emacs IRC Client". Mario Lang (ERC dev) personal website. Archived from the original on 2011-05-14. Retrieved 2009-10-12.
  9. "ERC - an IRC client for Emacs". GNU . Retrieved 2009-10-12.
  10. "ERC Project". SourceForge.net.
  11. Stallman, Richard (2007-06-03). "Emacs 22.1 released". info-gnu-emacs (Mailing list). Retrieved 2009-10-16.
  12. Schäfer, Jorgen (2005-10-21). "Circe - Yet Another Client for IRC in Emacs". nongnu.org. Retrieved 2009-10-12. The best feature of Circe is the activity tracker, which many will know from ERC.