Use the command M-x irc to connect using the defaults. See Configuration, if you want to change the defaults.
Use C-u M-x irc if you don’t want to use the defaults, e.g., if you want to connect to a different network, or connect to the same network using a different nick. This will prompt you for four things:
What server do you want to connect to? All the servers in a particular
network are equivalent. Some networks use a round-robin system where
a single server redirects new connections to a random server in the
irc.libera.chat is such a server for the Libera.Chat
network. Libera.Chat’s purpose is “to provide services such as a
community platform for free open-source software and peer directed
projects on a volunteer basis,” and was chosen as the official home
of the GNU Project and the Free Software Foundation’s IRC channels in
June 2021 in the aftermath of the changes in governance and policies
of the Freenode IRC network. GNU and FSF’s announcements about this
All network connections require a port. Just as web servers and clients use port 80 per default, IRC uses port 6667 per default. You rarely have to use a different port.
Every users needs a handle on-line. You will automatically be assigned
a slightly different nick if your chosen nick is already in use. If
alex, and this nick is already
in use, you might for example get assigned the nick
A space separated list of channels you want to join when connecting.
You don’t need to join any channels, if you just want to have one-to-one
conversations with friends on the same network. If you’re new to the
Libera.Chat network, join
#emacs, the channel about all things
Emacs, or join
#rcirc, the channel about
When you have answered these questions,
rcirc will create a server
buffer, which will be named something like *irc.libera.chat*,
and a channel buffer for each of the channels you wanted to join.
To talk in a channel, just type what you want to say in a channel buffer, and press RET.
If you want to paste multiple lines, such as source code, you can use C-c C-c to edit your message in a separate buffer. Use C-c C-c to finish editing. You still need to press RET to send it, though. Generally, IRC users don’t like people pasting more than around four lines of code, so use with care.
Once you are connected to multiple channels, or once you’ve turned you attention to other buffers in Emacs, you probably want to be notified of any activity in channels not currently visible. All you need to do is switch channel tracking on using M-x rcirc-track-minor-mode. To make this permanent, add the following to your init file:
Use C-c C-SPC to switch to these buffers.
If the user wishes to ignore events in the server buffer, set
rcirc-track-ignore-server-buffer-flag to a non-nil value.