File: rcirc.el.html

Internet Relay Chat (IRC) is a form of instant communication over the Internet. It is mainly designed for group (many-to-many) communication in discussion forums called channels, but also allows one-to-one communication.

Rcirc has simple defaults and clear and consistent behavior. Message arrival timestamps, activity notification on the mode line, message filling, nick completion, and keepalive pings are all enabled by default, but can easily be adjusted or turned off. Each discussion takes place in its own buffer and there is a single server buffer per connection.

Open a new irc connection with: M-x irc RET

Defined variables (137)

rcirc-acked-capabilitiesA list of capabilities that the server supports.
rcirc-activityList of buffers with unviewed activity.
rcirc-activity-functionsHook to be run when there is channel activity.
rcirc-activity-stringString displayed in mode line representing ‘rcirc-activity’.
rcirc-activity-typesList of symbols designating kinds of activities in a buffer.
rcirc-always-use-server-buffer-flagNon-nil means messages without a channel target will go to the server buffer.
rcirc-authenticate-before-joinNon-nil means authenticate to services before joining channels.
rcirc-authenticated-hookHook run after successfully authenticated.
rcirc-authinfoList of authentication passwords.
rcirc-auto-authenticate-flagNon-nil means automatically send authentication string to server.
rcirc-batch-attributesAlist mapping batch IDs to parameters.
rcirc-batched-messagesAlist mapping batch IDs to deferred messages.
rcirc-bridge-bot-alistAlist for handling bouncers by ‘rcirc-markup-bridge-bots’.
rcirc-bright-nicksList of nicks to be emphasized.
rcirc-buffer-alistAlist of (TARGET . BUFFER) pairs.
rcirc-buffer-maximum-linesThe maximum size in lines for rcirc buffers.
rcirc-channel-filterFunction applied to channels before displaying.
rcirc-client-commandsA list of user commands defined by IRC client rcirc.
rcirc-coding-system-alistAlist to decide a coding system to use for a channel I/O operation.
rcirc-color-codesVector of colors for each IRC color code.
rcirc-connectingFlag indicating if the connection is being established.
rcirc-connection-infoInformation about the current connection.
rcirc-current-lineThe current number of responses printed in this channel.
rcirc-cycle-completion-flagNon-nil means to use cycling for completion in rcirc buffers.
rcirc-debug-bufferBuffer name for debugging messages.
rcirc-debug-flagNon-nil means write information to ‘rcirc-debug-buffer’.
rcirc-decode-coding-systemCoding system used to decode incoming irc messages.
rcirc-default-full-nameThe full name sent to the server when connecting.
rcirc-default-nickYour nick.
rcirc-default-part-reasonThe default reason to send when parting from a channel.
rcirc-default-portThe default port to connect to.
rcirc-default-quit-reasonThe default reason to send when quitting a server.
rcirc-default-user-nameYour user name sent to the server when connecting.
rcirc-dim-nicksList of nicks to be deemphasized.
rcirc-display-server-bufferNon-nil means the server buffer should be shown on connecting.
rcirc-encode-coding-systemCoding system used to encode outgoing irc messages.
rcirc-failed-attemptsNumber of times reconnecting has failed.
rcirc-fill-columnColumn beyond which automatic line-wrapping should happen.
rcirc-fill-flagNon-nil means line-wrap messages printed in channel buffers.
rcirc-fill-prefixText to insert before filled lines.
rcirc-finished-saslCheck whether SASL authentication has completed.
rcirc-ignore-buffer-activity-flagNon-nil means ignore activity in this buffer.
rcirc-ignore-listList of ignored nicks.
rcirc-ignore-list-automaticList of ignored nicks added to ‘rcirc-ignore-list’ because of renaming.
rcirc-implemented-capabilitiesA list of capabilities that rcirc supports.
rcirc-input-ringRing object for input.
rcirc-input-ring-indexCurrent position in the input ring.
rcirc-input-ring-sizeSize of input history ring.
rcirc-keepalive-timerTimer for sending KEEPALIVE message.
rcirc-keywordsList of keywords to highlight in message text.
rcirc-kill-channel-buffersWhen non-nil, kill channel buffers when the server buffer is killed.
rcirc-last-connect-timeThe last time the buffer was connected.
rcirc-last-post-timeTimestamp indicating last user action.
rcirc-last-server-message-timeTimestamp for the last server response.
rcirc-log-alistAlist of lines to log to disk when ‘rcirc-log-flag’ is non-nil.
rcirc-log-directoryDirectory to keep IRC logfiles.
rcirc-log-filename-functionA function to generate the filename used by rcirc’s logging facility.
rcirc-log-flagNon-nil means log IRC activity to disk.
rcirc-log-process-buffersNon-nil if rcirc process buffers should be logged to disk.
rcirc-log-time-formatDescribes how timestamps are printed in the log files.
rcirc-low-priority-flagNon-nil means activity in this buffer is considered low priority.
rcirc-markup-text-functionsList of functions used to manipulate text before it is printed.
rcirc-max-message-lengthMessages longer than this value will be split.
rcirc-message-tagsAlist of parsed message tags.
rcirc-mode-hookHook run when setting up rcirc buffer.
rcirc-mode-mapKeymap for rcirc mode.
rcirc-multiline-major-modeMajor-mode function to use in multiline edit buffers.
rcirc-multiline-minor-modeNon-nil if Rcirc-Multiline minor mode is enabled.
rcirc-multiline-minor-mode-hookHook run after entering or leaving ‘rcirc-multiline-minor-mode’.
rcirc-multiline-minor-mode-mapKeymap for multiline mode in rcirc.
rcirc-nickThe nickname used for the current connection.
rcirc-nick-away-alistAlist from nicks to away messages.
rcirc-nick-completion-formatFormat string to use in nick completions.
rcirc-nick-filterFunction applied to nicknames before displaying.
rcirc-nick-name-historyHistory variable for M-x rcirc call.
rcirc-nick-prefix-charsList of junk characters to strip from nick prefixes.
rcirc-nick-syntax-tableSyntax table which includes all nick characters as word constituents.
rcirc-nick-tableHash table mapping nicks to channels.
rcirc-omit-modeNon-nil if Rcirc-Omit mode is enabled.
rcirc-omit-mode-hookHook run after entering or leaving ‘rcirc-omit-mode’.
rcirc-omit-responsesResponses which will be hidden when ‘rcirc-omit-mode’ is enabled.
rcirc-omit-thresholdLines since last activity from a nick before ‘rcirc-omit-responses’ are omitted.
rcirc-omit-unless-requestedList of commands to only be requested if preceded by a command.
rcirc-parent-bufferMessage buffer that requested a multiline buffer.
rcirc-pending-requestsList of pending requests.
rcirc-print-functionsHook run after text is printed.
rcirc-processNetwork process for the current connection.
rcirc-process-outputPartial message response.
rcirc-process-regexpRegular expression used for parsing server response.
rcirc-promptPrompt string to use in IRC buffers.
rcirc-prompt-end-markerMarker indicating the end of the message prompt.
rcirc-prompt-start-markerMarker indicating the beginning of the message prompt.
rcirc-pseudo-nicksList of virtual nicks detected in a channel.
rcirc-read-only-flagNon-nil means make text in IRC buffers read-only.
rcirc-receive-message-functionsHook functions run when a message is received from server.
rcirc-recent-quit-alistAlist of nicks that have recently quit or parted the channel.
rcirc-reconnect-attemptsNumber of times a reconnection should be attempted.
rcirc-reconnect-delayThe minimum interval in seconds between reconnect attempts.
rcirc-reconnection-timerTimer used for reconnecting.
rcirc-requested-capabilitiesA list of capabilities that client has requested.
rcirc-response-formatsAn alist of formats used for printing responses.
rcirc-responses-no-activityResponses that don’t trigger activity in the mode-line indicator.
rcirc-scroll-show-maximum-outputNon-nil means scroll to keep the point at the bottom of the window.
rcirc-sentinel-functionsHook functions called when the process sentinel is called.
rcirc-serverServer provided by server.
rcirc-server-alistAn alist of IRC connections to establish when running ‘rcirc’.
rcirc-server-bufferThe server buffer associated with this channel buffer.
rcirc-server-commandsA list of user commands by IRC server.
rcirc-server-nameServer name given by 001 response.
rcirc-server-name-historyHistory variable for M-x rcirc call.
rcirc-server-parametersList of parameters received from the server.
rcirc-server-port-historyHistory variable for M-x rcirc call.
rcirc-short-buffer-nameGenerated abbreviation to use to indicate buffer activity.
rcirc-startup-channelsList of channel names to join after authenticating.
rcirc-supported-batch-typesList of recognized batch types.
rcirc-tag-regexpRegular expression used for destructing a tag.
rcirc-targetThe channel or user associated with this buffer.
rcirc-time-formatDescribes how timestamps are printed.
rcirc-timeout-secondsKill connection after this many seconds if there is no activity.
rcirc-timeout-timerTimer for determining a network timeout.
rcirc-topicTopic of the current channel.
rcirc-track-abbrevate-flagNon-nil means ‘rcirc-track-minor-mode’ should abbreviate names.
rcirc-track-abbreviate-flagNon-nil means ‘rcirc-track-minor-mode’ should abbreviate names.
rcirc-track-ignore-server-buffer-flagNon-nil means activities in the server buffer are not traced.
rcirc-track-minor-modeNon-nil if Rcirc-Track minor mode is enabled.
rcirc-track-minor-mode-hookHook run after entering or leaving ‘rcirc-track-minor-mode’.
rcirc-track-minor-mode-mapKeymap for rcirc track minor mode.
rcirc-trap-errors-flagNon-nil means Lisp errors are degraded to error messages.
rcirc-update-activity-string-hookHook run whenever the activity string is updated.
rcirc-url-max-lengthMaximum number of characters in displayed URLs.
rcirc-url-regexpRegexp matching URLs. Set to nil to disable URL features in rcirc.
rcirc-urlsList of URLs seen in the current buffer and their start positions.
rcirc-user-authenticatedFlag indicating if the user is authenticated.
rcirc-user-disconnectFlag indicating if the connection was broken.
rcirc-user-name-historyHistory variable for M-x rcirc call.
rcirc-visible-buffersList of visible IRC buffers.
rcirc-window-configurationWindow configuration before creating multiline buffer.

Defined functions (196)

defun-rcirc-command(COMMAND ARGUMENTS &rest BODY)
irc(ARG)
rcirc(ARG)
rcirc--connection-open-p(PROCESS)
rcirc--electric-pair-inhibit(CHAR)
rcirc--make-new-nick(NICK LENGTH)
rcirc-abbreviate(PAIRS)
rcirc-activity-string(BUFFERS)
rcirc-add-face(START END NAME &optional OBJECT)
rcirc-add-or-remove(SET &rest ELEMENTS)
rcirc-any-buffer(PROCESS)
rcirc-authenticate()
rcirc-browse-url(&optional ARG)
rcirc-buffer-nick(&optional BUFFER)
rcirc-buffer-process(&optional BUFFER)
rcirc-bury-buffers()
rcirc-change-major-mode-hook()
rcirc-channel-nicks(PROCESS TARGET)
rcirc-channel-p(TARGET)
rcirc-check-auth-status(PROCESS SENDER ARGS TEXT)
rcirc-clean-up-buffer(REASON)
rcirc-clear-activity(BUFFER)
rcirc-clear-unread(BUFFER)
rcirc-cmd-bright(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-ctcp(ARGS &optional PROCESS TARGET)
rcirc-cmd-dim(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-ignore(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-invite(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-join(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-keyword(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-kick(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-list(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-me(ARGS PROCESS TARGET)
rcirc-cmd-mode(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-msg(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-names(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-nick(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-oper(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-part(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-query(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-quit(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-quote(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-reconnect(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-topic(ARGLIST &optional PROCESS TARGET)
rcirc-cmd-whois(ARGLIST &optional PROCESS TARGET)
rcirc-color-attributes(SENDER RESPONSE)
rcirc-completion-at-point()
rcirc-condition-filter(PRED SEQUENCE)
rcirc-connect(SERVER &optional PORT NICK USER-NAME FULL-NAME STARTUP-CHANNELS PASSWORD ENCRYPTION SERVER-ALIAS CERTFP)
rcirc-ctcp-sender-PING(PROCESS TARGET REQUEST)
rcirc-ctcp-wrap(&rest ARGS)
rcirc-debug(PROCESS TEXT)
rcirc-define-command(COMMAND ARGUMENTS &rest BODY)
rcirc-disconnect-buffer(&optional BUFFER)
rcirc-edit-multiline()
rcirc-elapsed-lines(PROCESS NICK TARGET)
rcirc-facify(STRING FACE)
rcirc-fill-paragraph(&optional JUSTIFY)
rcirc-filter(PROCESS OUTPUT)
rcirc-float-time(&optional SPECIFIED-TIME)
rcirc-format(PRE &optional REPLACE)
rcirc-format-bold(REPLACE)
rcirc-format-fixed-width(REPLACE)
rcirc-format-italic(REPLACE)
rcirc-format-response-string(PROCESS SENDER RESPONSE TARGET TEXT)
rcirc-format-strike-through(REPLACE)
rcirc-format-strike-trough(REPLACE)
rcirc-format-underline(REPLACE)
rcirc-generate-log-filename(PROCESS TARGET)
rcirc-generate-new-buffer-name(PROCESS TARGET)
rcirc-get-buffer(PROCESS TARGET &optional SERVER)
rcirc-get-buffer-create(PROCESS TARGET)
rcirc-get-server-cert(SERVER)
rcirc-get-server-method(SERVER)
rcirc-get-server-password(SERVER)
rcirc-get-tag(KEY &optional DEFAULT)
rcirc-get-temp-buffer-create(PROCESS CHANNEL)
rcirc-handler-001(PROCESS SENDER ARGS TEXT)
rcirc-handler-005(PROCESS SENDER ARGS TEXT)
rcirc-handler-301(PROCESS SENDER ARGS TEXT)
rcirc-handler-317(PROCESS SENDER ARGS TEXT)
rcirc-handler-332(PROCESS SENDER ARGS TEXT)
rcirc-handler-333(PROCESS SENDER ARGS TEXT)
rcirc-handler-353(PROCESS SENDER ARGS TEXT)
rcirc-handler-366(PROCESS SENDER ARGS TEXT)
rcirc-handler-433(PROCESS SENDER ARGS TEXT)
rcirc-handler-477(PROCESS SENDER ARGS TEXT)
rcirc-handler-900(PROCESS SENDER ARGS TEXT)
rcirc-handler-AUTHENTICATE(PROCESS CMD ARGS TEXT)
rcirc-handler-BATCH(PROCESS SENDER ARGS TEXT)
rcirc-handler-CAP(PROCESS SENDER ARGS TEXT)
rcirc-handler-CTCP(PROCESS TARGET SENDER TEXT)
rcirc-handler-CTCP-response(PROCESS TARGET SENDER MESSAGE)
rcirc-handler-ERROR(PROCESS SENDER ARGS TEXT)
rcirc-handler-FAIL(PROCESS SENDER ARGS TEXT)
rcirc-handler-INVITE(PROCESS SENDER ARGS TEXT)
rcirc-handler-JOIN(PROCESS SENDER ARGS TEXT)
rcirc-handler-KICK(PROCESS SENDER ARGS TEXT)
rcirc-handler-MODE(PROCESS SENDER ARGS TEXT)
rcirc-handler-NICK(PROCESS SENDER ARGS TEXT)
rcirc-handler-NOTE(PROCESS SENDER ARGS TEXT)
rcirc-handler-NOTICE(PROCESS SENDER ARGS TEXT)
rcirc-handler-PART(PROCESS SENDER ARGS TEXT)
rcirc-handler-PART-or-KICK(PROCESS RESPONSE CHANNEL SENDER NICK ARGS)
rcirc-handler-PING(PROCESS SENDER ARGS TEXT)
rcirc-handler-PONG(PROCESS SENDER ARGS TEXT)
rcirc-handler-PRIVMSG(PROCESS SENDER ARGS TEXT)
rcirc-handler-QUIT(PROCESS SENDER ARGS TEXT)
rcirc-handler-TAGMSG(PROCESS SENDER ARGS TEXT)
rcirc-handler-TOPIC(PROCESS SENDER ARGS TEXT)
rcirc-handler-WALLOPS(PROCESS SENDER ARGS TEXT)
rcirc-handler-WARN(PROCESS SENDER ARGS TEXT)
rcirc-handler-ctcp-ACTION(PROCESS TARGET SENDER MESSAGE)
rcirc-handler-ctcp-KEEPALIVE(PROCESS TARGET SENDER MESSAGE)
rcirc-handler-ctcp-TIME(PROCESS TARGET SENDER MESSAGE)
rcirc-handler-ctcp-VERSION(PROCESS TARGET SENDER MESSAGE)
rcirc-handler-generic(PROCESS RESPONSE SENDER ARGS TEXT)
rcirc-ignore-update-automatic(NICK)
rcirc-insert-next-input()
rcirc-insert-prev-input()
rcirc-join-channels(PROCESS CHANNELS)
rcirc-join-channels-post-auth(PROCESS)
rcirc-jump-to-first-unread-line()
rcirc-keepalive()
rcirc-kill-buffer-hook()
rcirc-last-line(PROCESS NICK TARGET)
rcirc-last-quit-line(PROCESS NICK TARGET)
rcirc-log(PROCESS SENDER RESPONSE TARGET TEXT)
rcirc-log-write()
rcirc-looking-at-input()
rcirc-make-trees(PAIRS)
rcirc-markup-attributes(SENDER RESPONSE)
rcirc-markup-bridge-bots(SENDER RESPONSE)
rcirc-markup-bright-nicks(SENDER RESPONSE)
rcirc-markup-fill(SENDER RESPONSE)
rcirc-markup-keywords(SENDER RESPONSE)
rcirc-markup-my-nick(SENDER RESPONSE)
rcirc-markup-timestamp(SENDER RESPONSE)
rcirc-markup-urls(SENDER RESPONSE)
rcirc-maybe-remember-nick-quit(PROCESS NICK CHANNEL)
rcirc-mode(PROCESS TARGET)
rcirc-multiline-minor-cancel()
rcirc-multiline-minor-mode(&optional ARG)
rcirc-multiline-minor-submit()
rcirc-next-active-buffer(ARG)
rcirc-nick(PROCESS)
rcirc-nick-channels(PROCESS NICK)
rcirc-nick-remove(PROCESS NICK)
rcirc-nickname<(S1 S2)
rcirc-omit-mode(&optional ARG)
rcirc-prev-input-string(ARG)
rcirc-print(PROCESS SENDER RESPONSE TARGET TEXT &optional ACTIVITY)
rcirc-process-command(COMMAND ARGS LINE)
rcirc-process-input-line(LINE)
rcirc-process-list()
rcirc-process-message(LINE)
rcirc-process-server-response(PROCESS TEXT)
rcirc-process-server-response-1(PROCESS TEXT)
rcirc-prompt-for-encryption(SERVER-PLIST)
rcirc-put-nick-channel(PROCESS NICK CHANNEL &optional LINE)
rcirc-rebuild-tree(TREE)
rcirc-reconnect(PROCESS &optional QUIET)
rcirc-record-activity(BUFFER &optional TYPE)
rcirc-remove-markup-codes(SENDER RESPONSE)
rcirc-remove-nick-channel(PROCESS NICK CHANNEL)
rcirc-reschedule-timeout(PROCESS)
rcirc-send-ctcp(PROCESS TARGET REQUEST &optional ARGS)
rcirc-send-input()
rcirc-send-message(PROCESS TARGET MESSAGE &optional NOTICEP SILENT)
rcirc-send-privmsg(PROCESS TARGET STRING)
rcirc-send-string(PROCESS &rest PARTS)
rcirc-sentinel(PROCESS SENTINEL)
rcirc-server-name(PROCESS)
rcirc-server-parameter-value(PARAMETER)
rcirc-set-changed(OPTION VALUE)
rcirc-short-buffer-name(BUFFER)
rcirc-sort-nicknames-join(INPUT SEP)
rcirc-split-activity(ACTIVITY)
rcirc-split-message(MESSAGE)
rcirc-switch-to-server-buffer()
rcirc-target-buffer(PROCESS SENDER RESPONSE TARGET TEXT)
rcirc-toggle-ignore-buffer-activity()
rcirc-toggle-low-priority()
rcirc-track-minor-mode(&optional ARG)
rcirc-unformat()
rcirc-update-activity-string()
rcirc-update-prompt(&optional ALL)
rcirc-update-short-buffer-names()
rcirc-user-nick(USER)
rcirc-view-log-file()
rcirc-visible-buffers()
rcirc-when()
rcirc-window-configuration-change()
rcirc-window-configuration-change-1()
with-rcirc-process-buffer(PROCESS &rest BODY)
with-rcirc-server-buffer(&rest BODY)

Defined faces (16)

rcirc-bridged-nickFace used for pseudo-nick .
rcirc-bright-nickRcirc face for nicks matched by ‘rcirc-bright-nicks’.
rcirc-dim-nickRcirc face for nicks in ‘rcirc-dim-nicks’.
rcirc-keywordRcirc face used to highlight keywords.
rcirc-monospace-textFace used for monospace text in messages.
rcirc-my-nickRcirc face for my messages.
rcirc-nick-in-messageRcirc face for instances of your nick within messages.
rcirc-nick-in-message-full-lineRcirc face for emphasizing the entire message when your nick is mentioned.
rcirc-other-nickRcirc face for other users’ messages.
rcirc-promptRcirc face for prompts.
rcirc-serverRcirc face for server messages.
rcirc-server-prefixRcirc face for server prefixes.
rcirc-timestampRcirc face for timestamps.
rcirc-track-keywordRcirc face used in the mode-line when keywords are mentioned.
rcirc-track-nickRcirc face used in the mode-line when your nick is mentioned.
rcirc-urlRcirc face used to highlight urls.