MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.221.20.252
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/net/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/net/rcirc.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:34 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/net/rcirc.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312\313\314\315\316&\210\317\320\321\322\323\324\315\304&\210\317\325\326\327\323\330\315\304&\210\317\331\332\333\323\334\315\304&\210\317\335\336\337\307\340\323\334\315\304&	\210\317\341\342\343\307\340\323\334\315\304&	\210\317\344\345\346\323\347\315\304&\210\317\350\305\351\323\352\315\304&\210\317\353\305\354\323\355\315\304&\207" [require ring time-date custom-declare-group rcirc nil "Simple IRC client." :version "22.1" :prefix "rcirc-" :link (custom-manual "(rcirc)") :group applications custom-declare-variable rcirc-server-alist '(("irc.freenode.net" :channels ("#rcirc"))) "An alist of IRC connections to establish when running `rcirc'.\nEach element looks like (SERVER-NAME PARAMETERS).\n\nSERVER-NAME is a string describing the server to connect\nto.\n\nThe optional PARAMETERS come in pairs PARAMETER VALUE.\n\nThe following parameters are recognized:\n\n`:nick'\n\nVALUE must be a string.  If absent, `rcirc-default-nick' is used\nfor this connection.\n\n`:port'\n\nVALUE must be a number or string.  If absent,\n`rcirc-default-port' is used.\n\n`:user-name'\n\nVALUE must be a string.  If absent, `rcirc-default-user-name' is\nused.\n\n`:password'\n\nVALUE must be a string.  If absent, no PASS command will be sent\nto the server.\n\n`:full-name'\n\nVALUE must be a string.  If absent, `rcirc-default-full-name' is\nused.\n\n`:channels'\n\nVALUE must be a list of strings describing which channels to join\nwhen connecting to this server.  If absent, no channels will be\nconnected to automatically.\n\n`:encryption'\n\nVALUE must be `plain' (the default) for unencrypted connections, or `tls'\nfor connections using SSL/TLS." :type (alist :key-type string :value-type (plist :options ((:nick string) (:port integer) (:user-name string) (:password string) (:full-name string) (:channels (repeat string)) (:encryption (choice (const tls) (const plain)))))) rcirc-default-port 6667 "The default port to connect to." integer rcirc-default-nick (user-login-name) "Your nick." string rcirc-default-user-name "user" "Your user name sent to the server when connecting." "24.1" rcirc-default-full-name "unknown" "The full name sent to the server when connecting." rcirc-fill-flag t "Non-nil means line-wrap messages printed in channel buffers." boolean rcirc-fill-column "Column beyond which automatic line-wrapping should happen.\nIf nil, use value of `fill-column'.  If 'frame-width, use the\nmaximum frame width." (choice (const :tag "Value of `fill-column'") (const :tag "Full frame width" frame-width) (integer :tag "Number of columns")) rcirc-fill-prefix "Text to insert before filled lines.\nIf nil, calculate the prefix dynamically to line up text\nunderneath each nick." (choice (const :tag "Dynamic" nil) (string :tag "Prefix text"))] 12)
#@45 If non-nil, ignore activity in this buffer.
(defvar rcirc-ignore-buffer-activity-flag nil (#$ . 3389))
(make-variable-buffer-local 'rcirc-ignore-buffer-activity-flag)
#@65 If non-nil, activity in this buffer is considered low priority.
(defvar rcirc-low-priority-flag nil (#$ . 3562))
(make-variable-buffer-local 'rcirc-low-priority-flag)
#@99 Non-nil if Rcirc-Omit mode is enabled.
Use the command `rcirc-omit-mode' to change this variable.
(defvar rcirc-omit-mode nil (#$ . 3735))
(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\302\312\313\314\306\315\310\311&\210\302\316\317\320\306\321\310\311&\210\302\322\323\324\306\325\310\311&\210\302\326\317\327\306\321\310\311&\210\302\330\323\331\306\332\310\311&\210\302\333\317\334\306\321\310\311&\210\302\335\317\336\337\340\306\321\310\311&	\210\302\341\342\343\306\307\344\345\346\347\310\311&\210\302\350\323\351\306\352\310\311&\210\302\353\323\354\306\355\310\311&\207" [make-variable-buffer-local rcirc-omit-mode custom-declare-variable rcirc-time-format "%H:%M " "Describes how timestamps are printed.\nUsed as the first arg to `format-time-string'." :type string :group rcirc rcirc-input-ring-size 1024 "Size of input history ring." integer rcirc-read-only-flag t "Non-nil means make text in IRC buffers read-only." boolean rcirc-buffer-maximum-lines nil "The maximum size in lines for rcirc buffers.\nChannel buffers are truncated from the top to be no greater than this\nnumber.  If zero or nil, no truncating is done." (choice (const :tag "No truncation" nil) (integer :tag "Number of lines")) rcirc-scroll-show-maximum-output "If non-nil, scroll buffer to keep the point at the bottom of\nthe window." rcirc-authinfo "List of authentication passwords.\nEach element of the list is a list with a SERVER-REGEXP string\nand a method symbol followed by method specific arguments.\n\nThe valid METHOD symbols are `nickserv', `chanserv' and\n`bitlbee'.\n\nThe ARGUMENTS for each METHOD symbol are:\n  `nickserv': NICK PASSWORD [NICKSERV-NICK]\n  `chanserv': NICK CHANNEL PASSWORD\n  `bitlbee': NICK PASSWORD\n  `quakenet': ACCOUNT PASSWORD\n\nExamples:\n ((\"freenode\" nickserv \"bob\" \"p455w0rd\")\n  (\"freenode\" chanserv \"bob\" \"#bobland\" \"passwd99\")\n  (\"bitlbee\" bitlbee \"robert\" \"sekrit\")\n  (\"dal.net\" nickserv \"bob\" \"sekrit\" \"NickServ@services.dal.net\")\n  (\"quakenet.org\" quakenet \"bobby\" \"sekrit\"))" (alist :key-type (string :tag "Server") :value-type (choice (list :tag "NickServ" (const nickserv) (string :tag "Nick") (string :tag "Password")) (list :tag "ChanServ" (const chanserv) (string :tag "Nick") (string :tag "Channel") (string :tag "Password")) (list :tag "BitlBee" (const bitlbee) (string :tag "Nick") (string :tag "Password")) (list :tag "QuakeNet" (const quakenet) (string :tag "Account") (string :tag "Password")))) rcirc-auto-authenticate-flag "Non-nil means automatically send authentication string to server.\nSee also `rcirc-authinfo'." rcirc-authenticate-before-join "Non-nil means authenticate to services before joining channels.\nCurrently only works with NickServ on some networks." :version "24.1" rcirc-prompt "> " "Prompt string to use in IRC buffers.\n\nThe following replacements are made:\n%n is your nick.\n%s is the server.\n%t is the buffer target, a channel or a user.\n\nSetting this alone will not affect the prompt;\nuse either M-x customize or also call `rcirc-update-prompt'." :set rcirc-set-changed :initialize custom-initialize-default rcirc-keywords "List of keywords to highlight in message text." (repeat string) rcirc-ignore-list "List of ignored nicks.\nUse /ignore to list them, use /ignore NICK to add or remove a nick." (repeat string)] 12)
#@219 List of ignored nicks added to `rcirc-ignore-list' because of renaming.
When an ignored person renames, their nick is added to both lists.
Nicks will be removed from the automatic list on follow-up renamings or
parts.
(defvar rcirc-ignore-list-automatic nil (#$ . 7109))
(byte-code "\302\303\304\305\306\307\310\311&\210\302\312\304\313\306\314\310\311&\210\315\316\317\304#\210\320\304\211\203B	@\316N\203;\317N\204;\321\317\316N#\210	A\211\204$*\322\316\317\323#\210\302\317\304\324\306\325\310\311&\207" [prop --dolist-tail-- custom-declare-variable rcirc-bright-nicks nil "List of nicks to be emphasized.\nSee `rcirc-bright-nick' face." :type (repeat string) :group rcirc rcirc-dim-nicks "List of nicks to be deemphasized.\nSee `rcirc-dim-nick' face." (repeat string) defvaralias rcirc-print-hooks rcirc-print-functions (saved-value saved-variable-comment) put make-obsolete-variable "24.3" "Hook run after text is printed.\nCalled with 5 arguments, PROCESS, SENDER, RESPONSE, TARGET and TEXT." hook] 9)
#@44 Hook run after successfully authenticated.
(defvar rcirc-authenticated-hook nil (#$ . 8138))
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\311\312\304\313\306\307&\210\300\314\315\316\304\313\306\307&\210\300\317\302\320\304\321\306\307&\210\300\322\323\324\304\325\306\307&\210\300\326\327\330\331\332\304\333\306\307&	\210\300\334\302\335\331\336\304\305\306\307&	\207" [custom-declare-variable rcirc-always-use-server-buffer-flag nil "Non-nil means messages without a channel target will go to the server buffer." :type boolean :group rcirc rcirc-decode-coding-system 'utf-8 "Coding system used to decode incoming irc messages.\nSet to 'undecided if you want the encoding of the incoming\nmessages autodetected." coding-system rcirc-encode-coding-system 'utf-8 "Coding system used to encode outgoing irc messages." rcirc-coding-system-alist "Alist to decide a coding system to use for a channel I/O operation.\nThe format is ((PATTERN . VAL) ...).\nPATTERN is either a string or a cons of strings.\nIf PATTERN is a string, it is used to match a target.\nIf PATTERN is a cons of strings, the car part is used to match a\ntarget, and the cdr part is used to match a server.\nVAL is either a coding system or a cons of coding systems.\nIf VAL is a coding system, it is used for both decoding and encoding\nmessages.\nIf VAL is a cons of coding systems, the car part is used for decoding,\nand the cdr part is used for encoding." (alist :key-type (choice (string :tag "Channel Regexp") (cons (string :tag "Channel Regexp") (string :tag "Server Regexp"))) :value-type (choice coding-system (cons (coding-system :tag "Decode") (coding-system :tag "Encode")))) rcirc-multiline-major-mode 'fundamental-mode "Major-mode function to use in multiline edit buffers." function rcirc-nick-completion-format "%s: " "Format string to use in nick completions.\n\nThe format string is only used when completing at the beginning\nof a line.  The string is passed as the first argument to\n`format' with the nickname as the second argument." :version "24.1" string rcirc-kill-channel-buffers "When non-nil, kill channel buffers when the server buffer is killed.\nOnly the channel buffers associated with the server in question\nwill be killed." "24.3"] 10)
(defvar rcirc-nick nil)
(defvar rcirc-prompt-start-marker nil)
(defvar rcirc-prompt-end-marker nil)
(defvar rcirc-nick-table nil)
#@63 Alist of nicks that have recently quit or parted the channel.
(defvar rcirc-recent-quit-alist nil (#$ . 10531))
#@71 Syntax table which includes all nick characters as word constituents.
(defvar rcirc-nick-syntax-table (byte-code "\302!\303\304\305\"\210\306\307\310	#\210	)\207" [text-mode-syntax-table table make-syntax-table mapc #[(c) "\302\303	#\207" [c table modify-syntax-entry "w"] 4] "[]\\`_^{|}-" modify-syntax-entry 39 "_"] 4) (#$ . 10649))
(defvar rcirc-buffer-alist nil)
#@41 List of buffers with unviewed activity.
(defvar rcirc-activity nil (#$ . 11025))
#@62 String displayed in mode line representing `rcirc-activity'.
(defvar rcirc-activity-string "" (#$ . 11112))
(put 'rcirc-activity-string 'risky-local-variable t)
#@56 The server buffer associated with this channel buffer.
(defvar rcirc-server-buffer nil (#$ . 11279))
#@50 The channel or user associated with this buffer.
(defvar rcirc-target nil (#$ . 11386))
#@42 List of urls seen in the current buffer.
(defvar rcirc-urls nil (#$ . 11480))
(put 'rcirc-urls 'permanent-local t)
#@66 Kill connection after this many seconds if there is no activity.
(defvar rcirc-timeout-seconds 600 (#$ . 11601))
(defconst rcirc-id-string (concat "rcirc on GNU Emacs " emacs-version))
(defvar rcirc-startup-channels nil)
#@37 History variable for \[rcirc] call.
(defvar rcirc-server-name-history nil (#$ . 11828))
#@37 History variable for \[rcirc] call.
(defvar rcirc-server-port-history nil (#$ . 11922))
#@37 History variable for \[rcirc] call.
(defvar rcirc-nick-name-history nil (#$ . 12016))
#@37 History variable for \[rcirc] call.
(defvar rcirc-user-name-history nil (#$ . 12108))
#@167 Connect to all servers in `rcirc-server-alist'.

Do not connect to a server if it is already connected.

If ARG is non-nil, instead prompt for connection parameters.
(defalias 'rcirc #[(arg) "\203|\306\307	\310\211	\211@@)\311&\312	\"A\313\314\315\316\f\317\"\206$
!\320#5\313\321\316\f\322\"\20646\323#7\313\324\316\f\325\"\206C8\326#9\327\330\310\316\f\331\"#:\332\313\333\334\335\316\f\336\"\337#\"\340\341#;\342\f!<\343579=;:<&.\207\310>	\310?\211@\203F@@\211?@\316?A\322\"\206\2336\316?A\317\"\206\245
\316?A\325\"\206\2608\316?A\344\"\206\273=\316?A\336\"\316?A\331\"\316?A\345\"\310A<:;B957\211\203;\310C\346 \310D\211@\203\f@@D\347D!\230\203DC@A\211@\204\361*C\204\350\351\352\217\210\202:r\353C!q\210\354\355p!\356\"\211A;\2033A\2024>B>)).	@A\211@\204\211*>\205j\357\360>A\203f\334\335\361>!\362#\363\364>!@Q\202i>@\")\207" [arg rcirc-server-alist x server server-plist rcirc-default-port completing-read "IRC Server: " nil rcirc-server-name-history assoc-string read-string "IRC Port: " number-to-string plist-get :port rcirc-server-port-history "IRC Nick: " :nick rcirc-nick-name-history "IRC Username: " :user-name rcirc-user-name-history read-passwd "IRC Password: " :password split-string "IRC Channels: " mapconcat identity :channels " " "[, ]+" t rcirc-prompt-for-encryption rcirc-connect :full-name :encryption rcirc-process-list process-name e (byte-code "\306	\n\f
&\207" [server port nick user-name full-name channels rcirc-connect password encryption] 9) ((quit (message "Quit connecting to %s" server))) process-buffer process-contact get-buffer-process :host message "Already connected to %s" butlast ", " ", and " last port rcirc-default-nick nick rcirc-default-user-name user-name password channels encryption rcirc-default-full-name connected-servers c --dolist-tail-- contact full-name connected p] 11 (#$ . 12201) "P"])
(defalias 'irc 'rcirc)
(defvar rcirc-process-output nil)
(defvar rcirc-topic nil)
(defvar rcirc-keepalive-timer nil)
(defvar rcirc-last-server-message-time nil)
(defvar rcirc-server nil)
(defvar rcirc-server-name nil)
(defvar rcirc-timeout-timer nil)
(defvar rcirc-user-authenticated nil)
(defvar rcirc-user-disconnect nil)
(defvar rcirc-connecting nil)
(defvar rcirc-process nil)
(defalias 'rcirc-connect #[(server &optional port nick user-name full-name startup-channels password encryption) "\212\306\307\"\210\310\n\203\n;\203\311\n!\202\n\202
\206#89\206+:9;\2064<;==\312\310\f\313>\206F\314&?\315?\316\211#\210\317\320?\310\"!\210\321?p\"\210\322?\310\"\210\323?\324\"\210\325?\326\"\210\327\330!\210?\327\331!\210\327\332!\210\327\333!\210\310\327\334!\210\335\336\337\"\327\340!\210
 \327\341!\210\310!\327\342!\210=\"\327\343!\210\344 #\327\345!\210\310%\327\346!\210\310&\327\347!\210\310'\327\350!\210\351(\352\353\354\"\210\355@G!\204\350\356?\357@P\"\210\356?\360
P\"\210\356?\3619\362;R\"\210A\204\363\364B\365\245\366#A\306\367\"\210?.\207" [server inhibit-eol-conversion port rcirc-default-port port-number nick message "Connecting to %s..." nil string-to-number open-network-stream :type plain set-process-coding-system raw-text switch-to-buffer rcirc-generate-new-buffer-name set-process-buffer rcirc-mode set-process-sentinel rcirc-sentinel set-process-filter rcirc-filter make-local-variable rcirc-process rcirc-server rcirc-server-name rcirc-buffer-alist rcirc-nick-table make-hash-table :test equal rcirc-nick rcirc-process-output rcirc-startup-channels rcirc-last-server-message-time current-time rcirc-timeout-timer rcirc-user-disconnect rcirc-user-authenticated rcirc-connecting t add-hook auto-save-hook rcirc-log-write zerop rcirc-send-string "PASS " "NICK " "USER " " 0 * :" run-at-time 0 2 rcirc-keepalive "Connecting to %s...done" rcirc-default-nick user-name rcirc-default-user-name full-name rcirc-default-full-name startup-channels encryption process password rcirc-keepalive-timer rcirc-timeout-seconds] 7])
(defalias 'with-rcirc-process-buffer '(macro . #[(process &rest body) "\302\303D	BB\207" [process body with-current-buffer process-buffer] 3]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put with-rcirc-process-buffer lisp-indent-function 1 edebug-form-spec t] 4)
(defalias 'with-rcirc-server-buffer '(macro . #[(&rest body) "\301\302BB\207" [body with-current-buffer rcirc-server-buffer] 3]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put with-rcirc-server-buffer lisp-indent-function 0 edebug-form-spec t] 4)
(defalias 'rcirc-float-time #[nil "\300 \207" [float-time] 1])
#@101 Prompt the user for the encryption method to use.
SERVER-PLIST is the property list for the server.
(defalias 'rcirc-prompt-for-encryption #[(server-plist) "\304\305\306\307\"\206\n\310\311\312\313	\"\n\314\315\314\211\316	!&!+\207" [server-plist default choices msg "Encryption (default %s): " ("plain" "tls") plist-get :encryption plain intern completing-read format nil t symbol-name] 10 (#$ . 16880)])
#@126 Send keep alive pings to active rcirc processes.
Kill processes that have not received a server message since the
last ping.
(defalias 'rcirc-keepalive #[nil "\301 \203\302\303\301 \"\207\304!\210\305\211\207" [rcirc-keepalive-timer rcirc-process-list mapc #[(process) "r\303!q\210	?\205\304\n\305\306\307 \"#)\207" [process rcirc-connecting rcirc-nick process-buffer rcirc-send-ctcp format "KEEPALIVE %f" rcirc-float-time] 6] cancel-timer nil] 3 (#$ . 17300)])
(defalias 'rcirc-handler-ctcp-KEEPALIVE #[(process target sender message) "r\303!q\210\304\305\306 \307	!Z\"\211)\207" [process message header-line-format process-buffer format "%f" rcirc-float-time string-to-number] 5])
(defvar rcirc-debug-buffer "*rcirc debug*")
#@56 If non-nil, write information to `rcirc-debug-buffer'.
(defvar rcirc-debug-flag nil (#$ . 18043))
#@139 Add an entry to the debug log including PROCESS and TEXT.
Debug text is written to `rcirc-debug-buffer' if `rcirc-debug-flag'
is non-nil.
(defalias 'rcirc-debug #[(process text) "\205r\304	!q\210db\210\305\306\307!\310\n!\311\260c)\207" [rcirc-debug-flag rcirc-debug-buffer process text get-buffer-create "[" format-time-string "%Y-%m-%dT%T " process-name "] "] 5 (#$ . 18148)])
(byte-code "\302\303\304\305#\210\306\305\211\203,	@\303N\203%\304N\204%\307\304\303N#\210	A\211\204*\310\303\304\311#\207" [prop --dolist-tail-- defvaralias rcirc-sentinel-hooks rcirc-sentinel-functions nil (saved-value saved-variable-comment) put make-obsolete-variable "24.3"] 6)
#@118 Hook functions called when the process sentinel is called.
Functions are called with PROCESS and SENTINEL arguments.
(defvar rcirc-sentinel-functions nil (#$ . 18835))
#@40 Called when PROCESS receives SENTINEL.
(defalias 'rcirc-sentinel #[(process sentinel) "\306\307\310#\311	\312\313	#\"\210r\314	!q\210\315\316\317\n\"B\315\211\203L\f@r\206+pq\210\320	\321\322
\312\323\324	!\325	!$
?&\210\326 \210)\fA\211\204\"*\327\330	#*\207" [sentinel process rcirc-buffer-alist buffer --dolist-tail-- rcirc-target replace-regexp-in-string "\n" "" rcirc-debug format "SENTINEL: %S %S\n" process-buffer nil mapcar cdr rcirc-print "rcirc.el" "ERROR" "%s: %s (%S)" process-name process-status rcirc-disconnect-buffer run-hook-with-args rcirc-sentinel-functions] 12 (#$ . 19009)])
(defalias 'rcirc-disconnect-buffer #[(&optional buffer) "r\206pq\210\303\304\211)\207" [buffer rcirc-target mode-line-process nil ":disconnected"] 2])
#@35 Return a list of rcirc processes.
(defalias 'rcirc-process-list #[nil "\301\302\303\304 \"\210)\207" [ps nil mapc #[(p) "\303\304!!\205r\304!q\210	\305=\205\nB\211)\207" [p major-mode ps buffer-live-p process-buffer rcirc-mode] 3] process-list] 3 (#$ . 19781)])
(byte-code "\302\303\304\305#\210\306\305\211\203,	@\303N\203%\304N\204%\307\304\303N#\210	A\211\204*\310\303\304\311#\207" [prop --dolist-tail-- defvaralias rcirc-receive-message-hooks rcirc-receive-message-functions nil (saved-value saved-variable-comment) put make-obsolete-variable "24.3"] 6)
#@125 Hook functions run when a message is received from server.
Function is called with PROCESS, COMMAND, SENDER, ARGS and LINE.
(defvar rcirc-receive-message-functions nil (#$ . 20370))
#@38 Called when PROCESS receives OUTPUT.
(defalias 'rcirc-filter #[(process output) "\304	\"\210\305!\210r\306!q\210\307 	P\211\211GSH\310U\205,\311\312\313\314\315#\"\210\316\211)\207" [process output rcirc-last-server-message-time rcirc-process-output rcirc-debug rcirc-reschedule-timeout process-buffer current-time 10 mapc #[(line) "\302	\"\207" [process line rcirc-process-server-response] 3] split-string "[\n
]" t nil] 7 (#$ . 20558)])
(defalias 'rcirc-reschedule-timeout #[(process) "r\304!q\210	?\205\"r\304!q\210\n\203\305\n!\210\306\307\310$\211))\207" [process rcirc-connecting rcirc-timeout-timer rcirc-timeout-seconds process-buffer cancel-timer run-at-time nil rcirc-delete-process] 5])
(defalias 'rcirc-delete-process #[(process) "\301!\207" [process delete-process] 2])
(defvar rcirc-trap-errors-flag t)
(defalias 'rcirc-process-server-response #[(process text) "\203	\303\304\305\217\207\306	\n\"\207" [rcirc-trap-errors-flag process text err (rcirc-process-server-response-1 process text) ((error (byte-code "\303\304\305\306\307\310	\n#\311&\207" [process text err rcirc-print "RCIRC" "ERROR" nil format "\"%s\" %s" t] 9))) rcirc-process-server-response-1] 3])
(defalias 'rcirc-process-server-response-1 #[(process text) "\306\307\"\203g\310\311\"\312	!\310\313\"\310\314\"\315\316P!\306\317\f\"\210\310\320\f\"\310\311\f\"\321\322\323\324\325\326#C\"\"\327
!\204R\330\n\f%\210\202Z
\n\f$\210\331\332\n\f&.\207\333\334\"\207" [text user sender cmd args handler string-match "^\\(:\\([^ ]+\\) \\)?\\([^ ]+\\) \\(.+\\)$" match-string 2 rcirc-user-nick 3 4 intern-soft "rcirc-handler-" "^\\([^:]*\\):?\\(.+\\)?$" 1 delq nil append split-string " " t fboundp rcirc-handler-generic run-hook-with-args rcirc-receive-message-functions message "UNHANDLED: %s" args1 args2 process] 7])
#@67 Responses that don't trigger activity in the mode-line indicator.
(defvar rcirc-responses-no-activity '("305" "306") (#$ . 22416))
#@34 Generic server response handler.
(defalias 'rcirc-handler-generic #[(process response sender args text) "\305	\n\306\307\310A\311#\n\f\235?&\207" [process sender response args rcirc-responses-no-activity rcirc-print nil mapconcat identity " "] 9 (#$ . 22553)])
(defalias 'rcirc--connection-open-p #[(process) "\301!\302>\207" [process process-status (run open)] 2])
#@39 Send PROCESS a STRING plus a newline.
(defalias 'rcirc-send-string #[(process string) "\303	\"\304P\305\n!\204\306\307\310\n!\"\210\311\n\"\210\312\n\")\207" [string rcirc-encode-coding-system process encode-coding-string "\n" rcirc--connection-open-p error "Network connection to %s is not open" process-name rcirc-debug process-send-string] 4 (#$ . 22929)])
(defalias 'rcirc-send-privmsg #[(process target string) "\303\304\305	\n#\"\207" [process target string rcirc-send-string format "PRIVMSG %s :%s"] 6])
(defalias 'rcirc-send-ctcp #[(process target request &optional args) "\203\n\304P\202\305\306	\n\307\310##)\207" [args process target request " " "" rcirc-send-privmsg format "%s%s"] 7])
#@113 Return the process associated with channel BUFFER.
With no argument or nil as argument, use the current buffer.
(defalias 'rcirc-buffer-process #[(&optional buffer) "\303\203rq\210	)\202	!\206\n\207" [buffer rcirc-server-buffer rcirc-process get-buffer-process] 2 (#$ . 23651)])
#@56 Return PROCESS server name, given by the 001 response.
(defalias 'rcirc-server-name #[(process) "r\302!q\210	\206\303\304\")\207" [process rcirc-server-name process-buffer warn "server name for process %S unknown"] 3 (#$ . 23944)])
#@22 Return PROCESS nick.
(defalias 'rcirc-nick #[(process) "r\303!q\210	\206\n)\207" [process rcirc-nick rcirc-default-nick process-buffer] 2 (#$ . 24186)])
#@102 Return the nick associated with BUFFER.
With no argument or nil as argument, use the current buffer.
(defalias 'rcirc-buffer-nick #[(&optional buffer) "r\206pq\210r	q\210\n\206*\207" [buffer rcirc-server-buffer rcirc-nick rcirc-default-nick] 1 (#$ . 24349)])
#@48 Messages longer than this value will be split.
(defvar rcirc-max-message-length 420 (#$ . 24620))
#@62 Split MESSAGE into chunks within `rcirc-max-message-length'.
(defalias 'rcirc-split-message #[(message) "\306\307!r\nq\210\310\216c\210eb\210\311m\204A\312
!\206db\210o\2047\313e`	\314$G
V\2037\315u\210\202!\316e`\"\fB\202\f\237-\207" [rcirc-encode-coding-system encoding #1=#:temp-buffer message result rcirc-max-message-length generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) nil byte-to-position encode-coding-region t -1 delete-and-extract-region] 5 (#$ . 24724)])
#@189 Send TARGET associated with PROCESS a privmsg with text MESSAGE.
If NOTICEP is non-nil, send a notice instead of privmsg.
If SILENT is non-nil, do not print the message in any irc buffer.
(defalias 'rcirc-send-message #[(process target message &optional noticep silent) "\203\306\202	\307\310\n\"\210\311\f!\312\211\205B@\313\n	\314\315
\260\"\210\2048\316\n\317\n!	
%\210A\211\204\312+\207" [noticep response process target message msg "NOTICE" "PRIVMSG" rcirc-get-buffer-create rcirc-split-message nil rcirc-send-string " " " :" rcirc-print rcirc-nick --dolist-tail-- silent] 8 (#$ . 25275)])
(defvar rcirc-input-ring nil)
(defvar rcirc-input-ring-index 0)
(defalias 'rcirc-prev-input-string #[(arg) "\303	\n\\\"\207" [rcirc-input-ring rcirc-input-ring-index arg ring-ref] 4])
(defalias 'rcirc-insert-prev-input #[nil "`X\205d|\210\302\303!c\210	T\211\207" [rcirc-prompt-end-marker rcirc-input-ring-index rcirc-prev-input-string 0] 2 nil nil])
(defalias 'rcirc-insert-next-input #[nil "`X\205d|\210	S\302\303!c\207" [rcirc-prompt-end-marker rcirc-input-ring-index rcirc-prev-input-string -1] 2 nil nil])
#@82 A list of user commands by IRC server.
The value defaults to RFCs 1459 and 2812.
(defvar rcirc-server-commands '("/admin" "/away" "/connect" "/die" "/error" "/info" "/invite" "/ison" "/join" "/kick" "/kill" "/links" "/list" "/lusers" "/mode" "/motd" "/names" "/nick" "/notice" "/oper" "/part" "/pass" "/ping" "/pong" "/privmsg" "/quit" "/rehash" "/restart" "/service" "/servlist" "/server" "/squery" "/squit" "/stats" "/summon" "/time" "/topic" "/trace" "/user" "/userhost" "/users" "/version" "/wallops" "/who" "/whois" "/whowas") (#$ . 26423))
#@114 A list of user commands defined by IRC client rcirc.
The list is updated automatically by `defun-rcirc-command'.
(defvar rcirc-client-commands '("/me" "/ctcp") (#$ . 26976))
#@68 Function used for `completion-at-point-functions' in `rcirc-mode'.
(defalias 'rcirc-completion-at-point #[nil "\306 \205@\212\307\310\311#\203`T\202)\211U\2035	f\312=\2035\313\314\315\n!\316\"\314\315!\316\"\244!\202:\317\320 \f\"	`
E*\207" [rcirc-prompt-end-marker beg rcirc-client-commands rcirc-server-commands rcirc-target table rcirc-looking-at-input re-search-backward " " t 47 delete-dups sort copy-sequence string-lessp rcirc-channel-nicks rcirc-buffer-process] 6 (#$ . 27156)])
(defvar rcirc-completions nil)
(defvar rcirc-completion-start nil)
#@147 Cycle through completions from list of nicks in channel or IRC commands.
IRC command completion is performed only if '/' is the first input char.
(defalias 'rcirc-complete #[nil "\306 \204	\307\310!\210	=\203\311\nA\n@C\"\2026\312\313 @\211\2054\314
\211A@){\3158\"*\n@\211\205e
`|\210\316H\317U\203R\320P\202d
U\203b\321\"\202dc)\207" [last-command this-command rcirc-completions table completion-ignore-case rcirc-completion-start rcirc-looking-at-input error "Point not located after rcirc prompt" append t rcirc-completion-at-point all-completions 2 0 47 " " format x completion rcirc-prompt-end-marker rcirc-nick-completion-format] 5 (#$ . 27731) nil])
#@52 Set the decode coding system used in this channel.
(defalias 'set-rcirc-decode-coding-system #[(coding-system) "\302\301!\210\211\207" [coding-system rcirc-decode-coding-system make-local-variable] 2 (#$ . 28430) "zCoding system for incoming messages: "])
#@52 Set the encode coding system used in this channel.
(defalias 'set-rcirc-encode-coding-system #[(coding-system) "\302\301!\210\211\207" [coding-system rcirc-encode-coding-system make-local-variable] 2 (#$ . 28694) "zCoding system for outgoing messages: "])
#@24 Keymap for rcirc mode.
(defvar rcirc-mode-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\302\325\326#\210\302\327\330#\210\302\331\332#\210\302\333\334#\210\302\335\336#\210\302\337\340#\210\302\341\342#\210\302\343\344#\210\302\345\346#\210\302\347\350#\210\302\351\352#\210\302\353\354#\210\302\355\356#\210)\207" [map make-sparse-keymap define-key "
" rcirc-send-input [134217840] rcirc-insert-prev-input [134217838] rcirc-insert-next-input "	" rcirc-complete "" rcirc-browse-url "" rcirc-edit-multiline "\n" rcirc-cmd-join "" rcirc-cmd-kick "\f" rcirc-toggle-low-priority "" rcirc-cmd-mode "
" rcirc-cmd-msg "" rcirc-cmd-nick "" rcirc-omit-mode "" rcirc-cmd-part "" rcirc-cmd-query "" rcirc-cmd-topic "" rcirc-cmd-names "" rcirc-cmd-whois "" rcirc-cmd-quit "	" rcirc-toggle-ignore-buffer-activity "" rcirc-switch-to-server-buffer "" rcirc-jump-to-first-unread-line] 4) (#$ . 28958))
#@60 Generated abbreviation to use to indicate buffer activity.
(defvar rcirc-short-buffer-name nil (#$ . 30035))
#@40 Hook run when setting up rcirc buffer.
(defvar rcirc-mode-hook nil (#$ . 30150))
(defvar rcirc-last-post-time nil)
#@108 Alist of lines to log to disk when `rcirc-log-flag' is non-nil.
Each element looks like (FILENAME . TEXT).
(defvar rcirc-log-alist nil (#$ . 30272))
#@123 The current number of responses printed in this channel.
This number is independent of the number of lines in the buffer.
(defvar rcirc-current-line 0 (#$ . 30428))
#@56 Major mode for IRC channel buffers.

\{rcirc-mode-map}
(defalias 'rcirc-mode #[(process target) "\306 \210\307!\210\310\311\312\313\304!\210\314\f!\203#\315\f!
U\203#\f\202&\316
!\313\317!\210\320<!\313\321!\210=\313\322!\210\312\313\323!\210\324 \313\325!\210\326\313\327!\210\312\313\330!\210\331\332\333!\210\313\334!\210\312\313\335!\210\312\211>\336 ?\337?\340\341\342\343\"@\344\345@\")#\210A\312B\211C\203C@\211B@:\203\251B\211D@@)\202\254B@B@:\203\276B\211D@A)\202\277\346EF\347F=\206\314\346\"\203\347E\350<!\"\203\313\351!\210BA:\203\361B\211DA@)\202\364BA)\313\352!\210BA:\203\fB\211DAA)\202BA**CA\211C\204\223*\313\353!\210\354 +\313\355!\210\354 -\356 \210-b\210\313\357!\210\360 /\361\362\363\312\333$\210\361\364\365\312\333$\210=\203fpGr\320<!q\210=GBHBH*\366 \210\361\367\370\312\371$\210\372\373!\207" [rcirc-mode-map mode-name major-mode mode-line-process rcirc-input-ring rcirc-input-ring-size kill-all-local-variables use-local-map "rcirc" rcirc-mode nil make-local-variable ring-p ring-size make-ring rcirc-server-buffer process-buffer rcirc-target rcirc-topic rcirc-last-post-time current-time fill-paragraph-function rcirc-fill-paragraph rcirc-recent-quit-alist rcirc-current-line 0 use-hard-newlines t rcirc-short-buffer-name rcirc-urls make-display-table set-display-table-slot 4 make-glyph-code 46 font-lock-keyword-face make-vector 3 "" string-match rcirc-server-name rcirc-decode-coding-system rcirc-encode-coding-system rcirc-prompt-start-marker point-max-marker rcirc-prompt-end-marker rcirc-update-prompt overlay-arrow-position make-marker add-hook change-major-mode-hook rcirc-change-major-mode-hook kill-buffer-hook rcirc-kill-buffer-hook rcirc-update-short-buffer-names completion-at-point-functions rcirc-completion-at-point local run-mode-hooks rcirc-mode-hook process target buffer-invisibility-spec buffer-display-table glyph rcirc-coding-system-alist i --dolist-tail-- x serv chan buffer rcirc-buffer-alist] 7 (#$ . 30599)])
#@103 Reset the prompt string in the current buffer.

If ALL is non-nil, update prompts in all IRC buffers.
(defalias 'rcirc-update-prompt #[(&optional all) "\203\n\306\307\310 \"\207\311	\206\312\306\313\314\315 B\316r\fq\210
)B\317\206'\312BE\"\210\212|\210b\210`\320\n!\210\321\223\210\322Z!?\205a\323\324\301\325\311\326\311\327\311\330\311\257\n#,\207" [all rcirc-prompt prompt inhibit-read-only rcirc-server-buffer rcirc-server-name mapc #[(process) "\302\303r\304!q\210\305\306	\")\"\207" [process rcirc-buffer-alist mapc #[(buffer) "rq\210\301 )\207" [buffer rcirc-update-prompt] 1] process-buffer mapcar cdr] 5] rcirc-process-list t "" #[(rep) "\302@A	#\211\207" [rep prompt replace-regexp-in-string] 4] "%n" rcirc-buffer-nick "%s" "%t" insert-before-markers nil zerop add-text-properties face read-only field front-sticky rear-nonsticky rcirc-target rcirc-prompt-start-marker rcirc-prompt-end-marker start] 13 (#$ . 32662)])
#@66 Set OPTION to VALUE and do updates after a customization change.
(defalias 'rcirc-set-changed #[(option value) "\302	\"\210\303=\203\304\305!\207\306\307\"\207" [option value set-default rcirc-prompt rcirc-update-prompt all error "Bad option %s"] 3 (#$ . 33632)])
#@39 Return t if TARGET is a channel name.
(defalias 'rcirc-channel-p #[(target) "\205\301G!?\205\302H\303=\206\302H\304=\207" [target zerop 0 35 38] 2 (#$ . 33907)])
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\311\312\304\313\306\307&\207" [custom-declare-variable rcirc-log-directory "~/.emacs.d/rcirc-log" "Directory to keep IRC logfiles." :type directory :group rcirc rcirc-log-flag nil "Non-nil means log IRC activity to disk.\nLogfiles are kept in `rcirc-log-directory'." boolean] 8)
#@187 Part the channel when killing an rcirc buffer.

If `rcirc-kill-channel-buffers' is non-nil and the killed buffer
is a server buffer, kills all of the channel buffers associated
with it.
(defalias 'rcirc-kill-buffer-hook #[nil "\306=\205:	\203\n\203\307 \210\310\311!\210\205:\f\205:\312\211\f\2059\f@\313
A!\210\fA\211\f\204&\312*\207" [major-mode rcirc-log-flag rcirc-log-directory rcirc-buffer-alist rcirc-kill-channel-buffers channel rcirc-mode rcirc-log-write rcirc-clean-up-buffer "Killed buffer" nil kill-buffer --dolist-tail--] 3 (#$ . 34425)])
#@48 Part the channel when changing the major-mode.
(defalias 'rcirc-change-major-mode-hook #[nil "\300\301!\207" [rcirc-clean-up-buffer "Changed major mode"] 2 (#$ . 35001)])
(defalias 'rcirc-clean-up-buffer #[(reason) "p\305!\210\306 \203>\307\306 !\203>r	q\210\310\n\")\311 \210\312!\2032\313\306 \314\315\fR\"\210\202>\203>\316\306 \317 #\210\320\211)\207" [buffer rcirc-server-buffer rcirc-buffer-alist rcirc-target reason rcirc-clear-activity rcirc-buffer-process rcirc--connection-open-p rassq-delete-all rcirc-update-short-buffer-names rcirc-channel-p rcirc-send-string "PART " " :" rcirc-remove-nick-channel rcirc-buffer-nick nil] 6])
#@107 Return a buffer name based on PROCESS and TARGET.
This is used for the initial name given to IRC buffers.
(defalias 'rcirc-generate-new-buffer-name #[(process target) "\302\203\303\304	!Q\202\305\304	!\305Q!\207" [target process substring-no-properties "@" process-name "*"] 5 (#$ . 35661)])
#@190 Return the buffer associated with the PROCESS and TARGET.

If optional argument SERVER is non-nil, return the server buffer
if there is no existing buffer for TARGET, otherwise return nil.
(defalias 'rcirc-get-buffer #[(process target &optional server) "r\305!q\210	\204p\202\306	\n\307#A\211\206\f\205p))\207" [process target rcirc-buffer-alist buffer server process-buffer assoc-string t] 5 (#$ . 35966)])
#@98 Return the buffer associated with the PROCESS and TARGET.
Create the buffer if it doesn't exist.
(defalias 'rcirc-get-buffer-create #[(process target) "\306	\"\211\203\307\n!\203r\nq\210\204	\n)\202@r\310!q\210\311\312	\"!r\fq\210\313	\"\210\314\315!	
$\210)\f*)\207" [process target buffer rcirc-target new-buffer rcirc-current-line rcirc-get-buffer buffer-live-p process-buffer get-buffer-create rcirc-generate-new-buffer-name rcirc-mode rcirc-put-nick-channel rcirc-nick] 6 (#$ . 36390)])
#@58 Send input to target associated with the current buffer.
(defalias 'rcirc-send-input #[nil "`W\2038\306y\210`e=\203`\202#\307`S\310\"\203`\202#\311`\310\"\312`T\310\"db\210\313\314\315\316\n	\"#c*\207db\210`Z\306\232?\205z`\317 =\203O\320\321!\210\316`\"\322\323\"\324\211\203m
@\325\f!\210
A\211\204_*\212\326\"\210\306\211*\207" [rcirc-prompt-end-marker end start input line --dolist-tail-- 0 get-text-property hard previous-single-property-change next-single-property-change replace-regexp-in-string "\n\\s-+" " " buffer-substring-no-properties point-at-bol delete-char -1 split-string "\n" nil rcirc-process-input-line ring-insert rcirc-input-ring rcirc-input-ring-index] 7 (#$ . 36905) nil])
(defalias 'rcirc-fill-paragraph #[(&optional arg) "`V\205\214d}\210	\303ed\"*\207" [rcirc-prompt-end-marker rcirc-max-message-length fill-column fill-region] 3 nil "p"])
(defalias 'rcirc-process-input-line #[(line) "\301\302\"\203\303\304\305\"\304\306\"#\207\307!\207" [line string-match "^/\\([^ ]+\\) ?\\(.*\\)$" rcirc-process-command match-string 1 2 rcirc-process-message] 5])
(defalias 'rcirc-process-message #[(line) "\204\304\305!\207	`|\210\306\307 \n#\210\310 \211\207" [rcirc-target rcirc-prompt-end-marker line rcirc-last-post-time message "Not joined (no target)" rcirc-send-message rcirc-buffer-process current-time] 4])
(defalias 'rcirc-process-command #[(command args line) "\306H\307=\203\310	\311\312O!\207\313\314P!\315 \316 \210rpq\210\f`|\210\317\230\2036\320\n\321 \322
%\210\202?\320\n\321 \323
	%\210\f`\312\223\210\324!\203S\n
#\202[\325\n\326Q\"+\207" [command line process fun rcirc-prompt-end-marker rcirc-target 0 47 rcirc-process-message 1 nil intern-soft "rcirc-cmd-" rcirc-buffer-process newline "me" rcirc-print rcirc-buffer-nick "ACTION" "COMMAND" fboundp rcirc-send-string " :" args] 6])
(defvar rcirc-parent-buffer nil)
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local rcirc-parent-buffer put permanent-local t] 4)
(defvar rcirc-window-configuration nil)
#@42 Move current edit to a dedicated buffer.
(defalias 'rcirc-edit-multiline #[nil "`ZTdb\210\306`\"\307 `|\210\310 \311\312\n\313Q!\210
 \210\314\315!\210\nc\210	\316V\2034	b\210\317\320\n\"+\207" [rcirc-prompt-end-marker pos parent text rcirc-window-configuration rcirc-multiline-major-mode buffer-substring-no-properties buffer-name current-window-configuration pop-to-buffer "*multiline " "*" rcirc-multiline-minor-mode 1 0 message "Type C-c C-c to return text to %s, or C-c C-k to cancel" rcirc-parent-buffer] 4 (#$ . 38990) nil])
#@37 Keymap for multiline mode in rcirc.
(defvar rcirc-multiline-minor-mode-map (byte-code "\301 \302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\307#\210)\207" [map make-sparse-keymap define-key "" rcirc-multiline-minor-submit "" "" rcirc-multiline-minor-cancel ""] 4) (#$ . 39539))
#@121 Non-nil if Rcirc-Multiline minor mode is enabled.
Use the command `rcirc-multiline-minor-mode' to change this variable.
(defvar rcirc-multiline-minor-mode nil (#$ . 39851))
(make-variable-buffer-local 'rcirc-multiline-minor-mode)
#@203 Minor mode for editing multiple lines in rcirc.
With a prefix argument ARG, enable the mode if ARG is positive,
and disable it otherwise.  If called from Lisp, enable the mode
if ARG is omitted or nil.
(defalias 'rcirc-multiline-minor-mode #[(&optional arg) "\305 	\306=\203\n?\202\307	!\310V\311\312\n\203 \313\202!\314\"\210\315\316!\203B\305 \2035\305 \232\203B\317\320\n\203?\321\202@\322\"\210)\323 \210\n\207" [#1=#:last-message arg rcirc-multiline-minor-mode rcirc-max-message-length fill-column current-message toggle prefix-numeric-value 0 run-hooks rcirc-multiline-minor-mode-hook rcirc-multiline-minor-mode-on-hook rcirc-multiline-minor-mode-off-hook called-interactively-p any message "Rcirc-Multiline minor mode %sabled" "en" "dis" force-mode-line-update] 3 (#$ . 40088) (list (or current-prefix-arg 'toggle))])
(byte-code "\301\302\303\304\211%\207" [rcirc-multiline-minor-mode-map add-minor-mode rcirc-multiline-minor-mode " rcirc-mline" nil] 6)
#@48 Send the text in buffer back to parent buffer.
(defalias 'rcirc-multiline-minor-submit #[nil "\306ed\"\210ed{p`q\210db\210\nc\210\307	!\210\310\f!\210
S\\b+\207" [pos buffer text rcirc-parent-buffer rcirc-window-configuration rcirc-prompt-end-marker untabify kill-buffer set-window-configuration] 3 (#$ . 41072) nil])
#@28 Cancel the multiline edit.
(defalias 'rcirc-multiline-minor-cancel #[nil "\301p!\210\302!\207" [rcirc-window-configuration kill-buffer set-window-configuration] 2 (#$ . 41401) nil])
#@77 Return a buffer for PROCESS, either the one selected or the process buffer.
(defalias 'rcirc-any-buffer #[(process) "\203\304	!\207\305\306 !\211\203'r\nq\210\307=\205\310 	=)\203'\n\202*\304	!)\207" [rcirc-always-use-server-buffer-flag process buffer major-mode process-buffer window-buffer selected-window rcirc-mode rcirc-buffer-process] 3 (#$ . 41590)])
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\311\312\304\313\306\307&\207" [custom-declare-variable rcirc-response-formats '(("PRIVMSG" . "<%N> %m") ("NOTICE" . "-%N- %m") ("ACTION" . "[%N %m]") ("COMMAND" . "%m") ("ERROR" . "%fw!!! %m") (t . "%fp*** %fs%n %r %m")) "An alist of formats used for printing responses.\nThe format is looked up using the response-type as a key;\nif no match is found, the default entry (with a key of `t') is used.\n\nThe entry's value part should be a string, which is inserted with\nthe of the following escape sequences replaced by the described values:\n\n  %m        The message text\n  %n        The sender's nick\n  %N        The sender's nick (with face `rcirc-my-nick' or `rcirc-other-nick')\n  %r        The response-type\n  %t        The target\n  %fw       Following text uses the face `font-lock-warning-face'\n  %fp       Following text uses the face `rcirc-server-prefix'\n  %fs       Following text uses the face `rcirc-server'\n  %f[FACE]  Following text uses the face FACE\n  %f-       Following text uses the default face\n  %%        A literal `%' character" :type (alist :key-type (choice (string :tag "Type") (const :tag "Default" t)) :value-type string) :group rcirc rcirc-omit-responses '("JOIN" "PART" "QUIT" "NICK") "Responses which will be hidden when `rcirc-omit-mode' is enabled." (repeat string)] 8)
#@185 Return a nicely-formatted response string, incorporating TEXT
(and perhaps other arguments).  The specific formatting used
is found by looking up RESPONSE in `rcirc-response-formats'.
(defalias 'rcirc-format-response-string #[(process sender response target text) "\306\307!rq\210\310\216\311	\n\"A\206\312\n\236Ac\210eb\210e\203(\313\f!\230\203,\314\202-\3155\316\317\315\312#\2037\3205\321\224
#\210\321\2245\322\323\324!\321H6\3256\326\"\203\210\327\323\330!!7\3257\331\"\203i\332\202\202\3257\333\"\203u\334\202\202\3257\335\"\203\201\336\202\202\315)\314\202%\3256\337\"\203\224\202%\3256\340\"\203\361\341\f!8\342 9\343\216\344 p:;\345\216\346<!\210\347\2118\230\203\302\350\202\353=\203\326\351\352=\353\"\"\203\326\354\202\353>\203\352\351\352>\353\"\"\203\352\355\202\353\356\".\202%\3256\357\"\203\360?\361?#\202%\3256\362\"\203	\202%\3256\363\"\203 @\206%\314\202%\364\323\321!P)\312\211\315\321%\210\320\321\224\321\225
#\210\2022\3205\321\224
#\210+ed{+\207" [#1=#:temp-buffer response rcirc-response-formats sender process face generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) assoc t rcirc-server-name "" nil re-search-forward "%\\(\\(f\\(.\\)\\)\\|\\(.\\)\\)" rcirc-add-face 0 replace-match match-string 1 eql 102 string-to-char 3 119 font-lock-warning-face 112 rcirc-server-prefix 115 rcirc-server 110 78 rcirc-nick match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#2=#:buffer #3=#:table set-syntax-table] 2)) set-syntax-table rcirc-facify rcirc-my-nick string-match regexp-opt words rcirc-bright-nick rcirc-dim-nick rcirc-other-nick 109 propertize rcirc-text 114 116 "UNKNOWN CODE:" start #4=#:--cl-var-- #5=#:--cl-var-- my-nick save-match-data-internal #2# #3# rcirc-nick-syntax-table rcirc-bright-nicks rcirc-dim-nicks text target] 7 (#$ . 43340)])
#@47 Return a buffer to print the server response.
(defalias 'rcirc-target-buffer #[(process sender response target text) "\305!\203\f\306\307\310C\"\210r\311	!q\210\204\312	!\202Q\313!\204G\n\314\230\204.\n\315\230\203?\316	\f\230\203:\202;\"\202Q\317	\320#\202Q\317	\"\206Q\312	!)\207" [target process response sender rcirc-nick bufferp signal cl-assertion-failed (not (bufferp target)) process-buffer rcirc-any-buffer rcirc-channel-p "PRIVMSG" "ACTION" rcirc-get-buffer-create rcirc-get-buffer t] 4 (#$ . 45356)])
(defvar rcirc-activity-types nil)
(make-variable-buffer-local 'rcirc-activity-types)
(defvar rcirc-last-sender nil)
(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\302\312\313\314\310\311\306\315\316\317&	\207" [make-variable-buffer-local rcirc-last-sender custom-declare-variable rcirc-omit-threshold 100 "Number of lines since last activity from a nick before `rcirc-omit-responses' are omitted." :type integer :group rcirc rcirc-log-process-buffers nil "Non-nil if rcirc process buffers should be logged to disk." boolean :version "24.1"] 10)
#@96 Return the line number where NICK left TARGET.
Returns nil if the information is not recorded.
(defalias 'rcirc-last-quit-line #[(process nick target) "\305	\"\211\205\306r\nq\210\f)\"A)\207" [process target chanbuf nick rcirc-recent-quit-alist rcirc-get-buffer assoc-string] 4 (#$ . 46456)])
#@61 Return the line from the last activity from NICK in TARGET.
(defalias 'rcirc-last-line #[(process nick target) "\306	\"\307	\310r\fq\210
)\"\311#A\206\312	#\211\205#*\207" [process target chanbuf nick rcirc-server-buffer rcirc-nick-table rcirc-get-buffer assoc-string gethash t rcirc-last-quit-line line] 6 (#$ . 46760)])
#@64 Return the number of lines since activity from NICK in TARGET.
(defalias 'rcirc-elapsed-lines #[(process nick target) "\305	\n#\211\205\306V\205\fZ)\207" [process nick target last-activity-line rcirc-current-line rcirc-last-line 0] 5 (#$ . 47100)])
#@247 List of functions used to manipulate text before it is printed.

Each function takes two arguments, SENDER, and RESPONSE.  The
buffer is narrowed with the text to be printed and the point is
at the beginning of the `rcirc-text' propertized text.
(defvar rcirc-markup-text-functions '(rcirc-markup-attributes rcirc-markup-my-nick rcirc-markup-urls rcirc-markup-keywords rcirc-markup-bright-nicks) (#$ . 47364))
#@129 Print TEXT in the buffer associated with TARGET.
Format based on SENDER and RESPONSE.  If ACTIVITY is non-nil,
record activity.
(defalias 'rcirc-print #[(process sender response target text &optional activity) "\204\306	\n\235\204(\307 p\310\216\311
!\210\312\313\"\205\"\314\315\"+\n\235\205/	\316@!\230??\205'\317@	AB%C\320DrCq\210`EU\321 \322F!GHI\323J\"	\316@!\230\204\204\322K!\204\204\324p!\204\204AL\235\204\204K\322F!\325\223\210Fb\210\326F\320\"\210\326E\320\"\210`M\327@	A\325%\330\331\332\320#\261\210\333G\334G\335\"\206\265ES\"\210\212\214MF}\210\334M\335\"\206\311`b\210\336 \203\212\337	A\"\210)N\325O\211P\203\372P@O\212O	A\"\210)PA\211P\204\343*Q\203\212\340	A\"\210)R\203\341ed\342#\210)\343@	B#S\316@!	\230\204IAL\235\203IS\203;TSW\203I\344MSFS\345\346$\210\202NUTU+\326F\325\"\210\326E\325\"\210\212V\203uV\347V\203uV[y\347U\203ue`|\210)\350\351\325\320#\210I\203\206E\202\210Hb\210W\203\304\324 \211X\203\303\352X!Yr\353\216\354Y@\355\"\210Z\356=\203\302\357\360 \361\362 \363 \"\315#\347X\203\302\364\365!\210+)\366 \210\367 \210+[\203\374\\\204\374]\203\357	\203\357\312\370]!	\"\203\357\371B!\204\374\372p\371^!?\205\372\373\"\210_\203B\204`\203\374@	AB%\210\375\347!\210\376\377@	AB&+\207" [text sender rcirc-ignore-list #1=#:buffer #2=#:table rcirc-nick-syntax-table "" syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2# set-syntax-table] 2)) set-syntax-table string-match "^\\([^/]\\w*\\)[:,]" match-string 1 rcirc-nick rcirc-target-buffer t point-marker marker-position decode-coding-string get-buffer-window nil set-marker-insertion-type rcirc-format-response-string propertize "\n" hard fill-region next-single-property-change rcirc-text rcirc-buffer-process rcirc-markup-timestamp rcirc-markup-fill add-text-properties (read-only t front-sticky t) rcirc-elapsed-lines put-text-property invisible rcirc-omit 0 walk-windows #[(w) "\302 =?\205p\303!=\205\304!	Y\205\305d\"\207" [w rcirc-prompt-end-marker selected-window window-buffer window-point set-window-point] 3] internal--before-with-selected-window ((internal--after-with-selected-window save-selected-window--state)) select-window norecord rcirc-mode - window-height count-screen-lines window-point window-start recenter -1 buffer-disable-undo buffer-enable-undo regexp-opt rcirc-channel-p rcirc-record-activity nick rcirc-log sit-for run-hook-with-args rcirc-print-functions process response target buffer inhibit-read-only rcirc-prompt-end-marker rcirc-prompt-start-marker fill-start old-point moving rcirc-decode-coding-system overlay-arrow-position rcirc-omit-responses start rcirc-markup-text-functions fn --dolist-tail-- rcirc-fill-flag rcirc-read-only-flag last-activity-lines rcirc-omit-threshold rcirc-current-line rcirc-buffer-maximum-lines rcirc-scroll-show-maximum-output window save-selected-window--state major-mode activity rcirc-ignore-buffer-activity-flag rcirc-dim-nicks rcirc-target rcirc-log-flag rcirc-log-process-buffers] 8 (#$ . 47781)])
(defalias 'rcirc-generate-log-filename #[(process target) "\203	\302	\"\207\303	!\207" [target process rcirc-generate-new-buffer-name process-name] 3])
#@538 A function to generate the filename used by rcirc's logging facility.

It is called with two arguments, PROCESS and TARGET (see
`rcirc-generate-new-buffer-name' for their meaning), and should
return the filename, or nil if no logging is desired for this
session.

If the returned filename is absolute (`file-name-absolute-p'
returns t), then it is used as-is, otherwise the resulting file
is put into `rcirc-log-directory'.

The filename is then cleaned using `convert-standard-filename' to
guarantee valid filenames for the current OS.
(custom-declare-variable 'rcirc-log-filename-function ''rcirc-generate-log-filename '(#$ . 51060) :group 'rcirc :type 'function)
#@58 Record line in `rcirc-log', to be later written to disk.
(defalias 'rcirc-log #[(process sender response target text) "	\n\"\211\205:\306\f\"\307
!\310\311	\f\n
%!\312Q\211\2031\211AP\241\2029B\fB\211*)\207" [rcirc-log-filename-function process target filename rcirc-log-alist rcirc-time-format assoc-string format-time-string substring-no-properties rcirc-format-response-string "\n" sender response text line cell] 10 (#$ . 51732)])
#@164 Flush `rcirc-log-alist' data to disk.

Log data is written to `rcirc-log-directory', except for
log-files with absolute names (see `rcirc-log-filename-function').
(defalias 'rcirc-log-write #[nil "\306\211\203<\n@\307\310	@\"!\311\312\313
!\314\"\210\315\316!rq\210\317\216	Ac\210\320ed
\314\321%\210-\nA\211\204*\306\211\207" [rcirc-log-alist cell --dolist-tail-- rcirc-log-directory coding-system-for-write filename nil convert-standard-filename expand-file-name utf-8 make-directory file-name-directory t generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) write-region quiet #1#] 7 (#$ . 52196)])
#@51 View logfile corresponding to the current buffer.
(defalias 'rcirc-view-log-file #[nil "\303\304\305 	\"\n\"!\207" [rcirc-log-filename-function rcirc-target rcirc-log-directory find-file-other-window expand-file-name rcirc-buffer-process] 5 (#$ . 52890) nil])
#@16 Join CHANNELS.
(defalias 'rcirc-join-channels #[(process channels) "\305 \306\216	\307\211\205$@r\310\f!q\210\311\n\f\"\210)A\211\204
\307,\207" [#1=#:wconfig channels channel --dolist-tail-- process current-window-configuration ((set-window-configuration #1#)) nil process-buffer rcirc-cmd-join] 4 (#$ . 53157)])
(defvar rcirc-nick-prefix-chars "~&@%+")
#@55 Return the nick from USER.  Remove any non-nick junk.
(defalias 'rcirc-user-nick #[(user) "\303 \304\216\305\306	\307Q\n\206\310\"\203\311\312\n\"\202\n*\207" [save-match-data-internal rcirc-nick-prefix-chars user match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) string-match "^[" "]?\\([^! ]+\\)!?" "" match-string 1] 4 (#$ . 53527)])
#@35 Return list of channels for NICK.
(defalias 'rcirc-nick-channels #[(process nick) "r\303!q\210\304\305\306	\n\"\")\207" [process nick rcirc-nick-table process-buffer mapcar #[(x) "@\207" [x] 1] gethash] 5 (#$ . 53924)])
#@169 Add CHANNEL to list associated with NICK.
Update the associated linestamp if LINE is non-nil.

If the record doesn't exist, and LINE is nil, set the linestamp
to zero.
(defalias 'rcirc-put-nick-channel #[(process nick channel &optional line) "\306!r\307	!q\210\310\n\"\311\f\312#\211\203%
\2053

\241\2023\313\f
\206.\314BB\n#,\207" [nick process rcirc-nick-table chans channel record rcirc-user-nick process-buffer gethash assoc-string t puthash 0 line] 5 (#$ . 54153)])
#@25 Remove NICK from table.
(defalias 'rcirc-nick-remove #[(process nick) "r\303!q\210\304	\n\")\207" [process nick rcirc-nick-table process-buffer remhash] 3 (#$ . 54646)])
#@52 Remove the CHANNEL from list associated with NICK.
(defalias 'rcirc-remove-nick-channel #[(process nick channel) "r\306!q\210\307	\n\"\310\f\311#\211\205
\312\240\210\313\312\")\211\203-\314	\n#\2021\315	\n\"+\207" [process nick rcirc-nick-table chans channel record process-buffer gethash assoc-string t delete assq-delete-all puthash remhash newchans] 5 (#$ . 54823)])
#@74 Return the list of nicks associated with TARGET sorted by last activity.
(defalias 'rcirc-channel-nicks #[(process target) "\205\"\304!\203 r\305	!q\210\306\307\310\"\210\311\312\313\n\314\"\"*\207C\207" [target process nicks rcirc-nick-table rcirc-channel-p process-buffer nil maphash #[(k v) "\305	\306#\211\205\nAB\fB\211)\207" [target v record k nicks assoc-string t] 5] mapcar #[(x) "@\207" [x] 1] sort #[(x y) "A\206\304	A\206\f\304\nW*\207" [x y ly lx 0] 2]] 5 (#$ . 55213)])
#@88 Remove NICK from `rcirc-ignore-list'
if NICK is also on `rcirc-ignore-list-automatic'.
(defalias 'rcirc-ignore-update-automatic #[(nick) "	\235\205\303	\"\303\n\"\211\207" [nick rcirc-ignore-list-automatic rcirc-ignore-list delete] 3 (#$ . 55723)])
#@228 Return t if IRC nickname S1 is less than S2, and nil otherwise.
Operator nicknames (@) are considered less than voiced
nicknames (+).  Any other nicknames are greater than voiced
nicknames.  The comparison is case-insensitive.
(defalias 'rcirc-nickname< #[(s1 s2) "\227	\227\304!\305=\304	!\305=\n\203*\203&\306\307O	\306\307O\231\2022\310\2022?\2052	\231*\207" [s1 s2 s1-op s2-op string-to-char 64 1 nil t] 4 (#$ . 55986)])
#@142 Return a string of sorted nicknames.
INPUT is a string containing nicknames separated by SEP.
This function does not alter the INPUT string.
(defalias 'rcirc-sort-nicknames-join #[(input sep) "\304	\305#\306\n\307\"\310\311	#*\207" [input sep parts sorted split-string t sort rcirc-nickname< mapconcat identity] 4 (#$ . 56433)])
#@36 Keymap for rcirc track minor mode.
(defvar rcirc-track-minor-mode-map (byte-code "\301 \302\303\304#\210\302\305\304#\210)\207" [map make-sparse-keymap define-key "" rcirc-next-active-buffer [3 67108896]] 4) (#$ . 56772))
#@287 Non-nil if Rcirc-Track minor mode is enabled.
See the command `rcirc-track-minor-mode' for a description of this minor mode.
Setting this variable directly does not take effect;
either customize it (see the info node `Easy Customization')
or call the function `rcirc-track-minor-mode'.
(custom-declare-variable 'rcirc-track-minor-mode nil '(#$ . 57007) :set 'custom-set-minor-mode :initialize 'custom-initialize-default :group 'rcirc :type 'boolean)
#@213 Global minor mode for tracking activity in rcirc buffers.
With a prefix argument ARG, enable the mode if ARG is positive,
and disable it otherwise.  If called from Lisp, enable the mode
if ARG is omitted or nil.
(defalias 'rcirc-track-minor-mode #[(&optional arg) "\304 	\305=\203\n?\202\306	!\307V\204\310\n\2031\311>\204)\312\313\"\314\315\316\"\210\202;\317\311\"\320\315\316\"\210\321\322\n\203E\323\202F\324\"\210\325\326!\203k\327\302!\210\304 \203^\304 \232\203k\330\331\n\203h\332\202i\333\"\210)\334 \210\n\207" [#1=#:last-message arg rcirc-track-minor-mode global-mode-string current-message toggle prefix-numeric-value 0 ("") rcirc-activity-string append (rcirc-activity-string) add-hook window-configuration-change-hook rcirc-window-configuration-change delete remove-hook run-hooks rcirc-track-minor-mode-hook rcirc-track-minor-mode-on-hook rcirc-track-minor-mode-off-hook called-interactively-p any customize-mark-as-set message "Rcirc-Track minor mode %sabled" "en" "dis" force-mode-line-update] 3 (#$ . 57464) (list (or current-prefix-arg 'toggle))])
(byte-code "\302\303\304\305\211%\210\306	\236\204\307	B\310	\236\204\311	B\312	\236\204&\313	B\305\207" [rcirc-track-minor-mode-map minor-mode-alist add-minor-mode rcirc-track-minor-mode "" nil rcirc-ignore-buffer-activity-flag (rcirc-ignore-buffer-activity-flag " Ignore") rcirc-low-priority-flag (rcirc-low-priority-flag " LowPri") rcirc-omit-mode (rcirc-omit-mode " Omit")] 6)
#@58 Toggle the value of `rcirc-ignore-buffer-activity-flag'.
(defalias 'rcirc-toggle-ignore-buffer-activity #[nil "?\301\203\f\302\202
\303!\210\304 \207" [rcirc-ignore-buffer-activity-flag message "Ignore activity in this buffer" "Notice activity in this buffer" force-mode-line-update] 2 (#$ . 58953) nil])
#@48 Toggle the value of `rcirc-low-priority-flag'.
(defalias 'rcirc-toggle-low-priority #[nil "?\301\203\f\302\202
\303!\210\304 \207" [rcirc-low-priority-flag message "Activity in this buffer is low priority" "Activity in this buffer is normal priority" force-mode-line-update] 2 (#$ . 59269) nil])
#@162 Toggle the Rcirc-Omit mode.
If enabled, "uninteresting" lines are not shown.
Uninteresting lines are those whose responses are listed in
`rcirc-omit-responses'.
(defalias 'rcirc-omit-mode #[nil "?\211\203\302\303!\210\304\305!\210\202\306\307!\210\304\310!\210\311`	V\205\"\312!\207" [rcirc-omit-mode rcirc-prompt-start-marker add-to-invisibility-spec (rcirc-omit) message "Rcirc-Omit mode enabled" remove-from-invisibility-spec (rcirc-omit) "Rcirc-Omit mode disabled" recenter -1] 4 (#$ . 59577) nil])
#@69 Switch to the server buffer associated with current channel buffer.
(defalias 'rcirc-switch-to-server-buffer #[nil "\301!\204\n\302\303!\210\304!\207" [rcirc-server-buffer buffer-live-p error "No such buffer" switch-to-buffer] 2 (#$ . 60093) nil])
#@57 Move the point to the first unread line in this buffer.
(defalias 'rcirc-jump-to-first-unread-line #[nil "\301!\203	b\207\302\303!\207" [overlay-arrow-position marker-position message "No unread messages"] 2 (#$ . 60350) nil])
(defalias 'rcirc-non-irc-buffer #[nil "\303 \304\211\2031\2041r	@q\210\n\305=\204)\306 \307H\310U\204)\311p!\204)p)	A\211\204	*\207" [buffer buflist major-mode buffer-list nil rcirc-mode buffer-name 0 32 get-buffer-window] 3])
#@115 Switch to the next rcirc buffer with activity.
With prefix ARG, go to the next low priority buffer with activity.
(defalias 'rcirc-next-active-buffer #[(arg) "\306!\211@	A\f\204\204\f\2033\n\2033\307\f\203#\n\202$@!\210`
V\205Q\310\311!\202Q\312=\203A\307\313 !\202Q\314\315\316\n\205O\317\320\321 !\322QP\"+\207" [rcirc-activity pair lopri hipri arg rcirc-prompt-start-marker rcirc-split-activity switch-to-buffer recenter -1 rcirc-mode rcirc-non-irc-buffer message "%s" "No IRC activity." "  Type C-u " key-description this-command-keys " for low priority activity." major-mode] 7 (#$ . 60826) "P"])
(byte-code "\302\303\304\305#\210\306\305\211\203,	@\303N\203%\304N\204%\307\304\303N#\210	A\211\204*\310\303\304\311#\207" [prop --dolist-tail-- defvaralias rcirc-activity-hooks rcirc-activity-functions nil (saved-value saved-variable-comment) put make-obsolete-variable "24.3"] 6)
#@215 Hook to be run when there is channel activity.

Functions are called with a single argument, the buffer with the
activity.  Only run if the buffer is not visible and
`rcirc-ignore-buffer-activity-flag' is non-nil.
(defvar rcirc-activity-functions nil (#$ . 61752))
#@35 Record BUFFER activity with TYPE.
(defalias 'rcirc-record-activity #[(buffer &optional type) "rq\210	\n\306p\307\"\204<\310\311\301p\"\312\"
\313\n\"\203'\n\210\202,\nB)	\f\232\2039
\235\204<\314 \210+\315\316\"\207" [buffer rcirc-activity rcirc-activity-types old-types old-activity type get-buffer-window t sort add-to-list #[(b1 b2) "rq\210	)r\nq\210	)\305\f\"*\207" [b1 rcirc-last-post-time b2 t2 t1 time-less-p] 3] memql rcirc-update-activity-string run-hook-with-args rcirc-activity-functions #1=#:var] 4 (#$ . 62023)])
#@28 Clear the BUFFER activity.
(defalias 'rcirc-clear-activity #[(buffer) "\303	\"rq\210\304\211)\207" [buffer rcirc-activity rcirc-activity-types remove nil] 3 (#$ . 62577)])
#@48 Erase the last read message arrow from BUFFER.
(defalias 'rcirc-clear-unread #[(buffer) "\302!\205rq\210	\303\211\223)\207" [buffer overlay-arrow-position buffer-live-p nil] 3 (#$ . 62759)])
#@62 Return a cons cell with ACTIVITY split into (lopri . hipri).
(defalias 'rcirc-split-activity #[(activity) "\306\211\n\306\211\2035\f@rq\210
\203'\307\n\235\204'\310\301\311#\210\202-\310\300\311#\210)\fA\211\204\f*	*B\207" [hipri lopri rcirc-activity buf --dolist-tail-- rcirc-low-priority-flag nil nick add-to-list t rcirc-activity-types] 5 (#$ . 62960)])
#@51 Hook run whenever the activity string is updated.
(defvar rcirc-update-activity-string-hook nil (#$ . 63339))
#@26 Update mode-line string.
(defalias 'rcirc-update-activity-string #[nil "\305!\211@	A\211\204\n\2037\205\306\304!\205#\n\205#\307\n\205-\310\304\n!\311Q\2052\312\260\202A\313 \203@\314\202A\314\315\316!+\207" [rcirc-activity pair lopri hipri rcirc-activity-string rcirc-split-activity "[" "," "(" ")" "]" rcirc-process-list "[]" run-hooks rcirc-update-activity-string-hook] 7 (#$ . 63455)])
(defalias 'rcirc-activity-string #[(buffers) "\301\302\303#\207" [buffers mapconcat #[(b) "\305\306!!rq\210\n\307\211\2036\f@\310\311	G\312\313\"\203$\314\202,\312\315\"\205,\316	$\210\fA\211\204+	)\207" [b s rcirc-activity-types type --dolist-tail-- substring-no-properties rcirc-short-buffer-name nil rcirc-add-face 0 eql nick rcirc-track-nick keyword rcirc-track-keyword] 7] ","] 4])
#@67 Return a short name for BUFFER to use in the mode line indicator.
(defalias 'rcirc-short-buffer-name #[(buffer) "rq\210	\206\n\302 )\207" [buffer rcirc-short-buffer-name buffer-name] 1 (#$ . 64276)])
#@62 Return a list of the visible buffers that are in rcirc-mode.
(defalias 'rcirc-visible-buffers #[nil "\301\302\303!\210)\207" [acc nil walk-windows #[(w) "r\303!q\210	\304=\205p\nB\211)\207" [w major-mode acc window-buffer rcirc-mode] 2]] 2 (#$ . 64484)])
(defvar rcirc-visible-buffers nil)
(defalias 'rcirc-window-configuration-change #[nil "\300\301 !?\205\f\302\303\304\"\207" [minibuffer-window-active-p minibuffer-window add-hook post-command-hook rcirc-window-configuration-change-1] 3])
(defalias 'rcirc-window-configuration-change-1 #[nil "\n\302 \211\306\211\203\"
@\307\f\"\310\f!\210
A\211\204*\306\211\203<
@\311!\210
A\211\204,*\307\306\312\313\"\"	\232\204N\314 \210*\315\316\317\"\207" [rcirc-activity old-activity rcirc-visible-buffers hidden-buffers vbuf --dolist-tail-- nil delq rcirc-clear-activity rcirc-clear-unread mapcar #[(buf) "\301!\205\207" [buf buffer-live-p] 2] rcirc-update-activity-string remove-hook post-command-hook rcirc-window-configuration-change-1 hbuf] 6])
(defalias 'rcirc-update-short-buffer-names #[nil "\304\305\306\307\310 \"\"\311!\312\211\205.\n@\313	A!\203&r	Aq\210	@)\nA\211\204\312+\207" [bufalist i --dolist-tail-- rcirc-short-buffer-name apply append mapcar #[(process) "r\302!q\210	)\207" [process rcirc-buffer-alist process-buffer] 2] rcirc-process-list rcirc-abbreviate nil buffer-live-p] 6])
(defalias 'rcirc-abbreviate #[(pairs) "\301\302\303\304\305!\"\"\207" [pairs apply append mapcar rcirc-rebuild-tree rcirc-make-trees] 6])
(defalias 'rcirc-rebuild-tree #[(tree &optional acc) "\305@!A\306\211\2030@\211<\203#\307\f\310\311\312\n!\"\"\202)	\nB\fBA\211\204*\f)\207" [tree ch x --dolist-tail-- acc char-to-string nil append mapcar #[(y) "	@P	AB\207" [ch y] 2] rcirc-rebuild-tree] 7])
(defalias 'rcirc-make-trees #[(pairs) "\302\303\304	\"\210\303\305\")\207" [alist pairs nil mapc #[(pair) ":\203Q@A\306	G!?\205	\307H\306	G!?\205#	\310\311O\205+
\236\211\n\203>\n\f\nB\nAB\241\202O\203J\f\nBD\202K\n
B\211-\207
B\211\207" [pair str data char rest alist zerop 0 1 nil part] 4] #[(x) "<\205'\211A@)<\205'\211AG\301V\203\302A!\202&\211A@AC\241\241\207" [x 1 rcirc-make-trees] 4]] 3])
#@19 Define a command.
(defalias 'defun-rcirc-command '(macro . #[(command argument docstring interactive-form &rest body) "\305\306\307\310\311!PE\312\313\314\311!P!\315	\316\"\n\317\320Q\321\322\fBB\257E\207" [command argument docstring interactive-form body progn add-to-list 'rcirc-client-commands "/" symbol-name defun intern "rcirc-cmd-" append (&optional process target) "\n\nNote: If PROCESS or TARGET are nil, the values given" "\nby `rcirc-buffer-process' and `rcirc-target' will be used." let ((process (or process (rcirc-buffer-process))) (target (or target rcirc-target)))] 10 (#$ . 66737)]))
(add-to-list 'rcirc-client-commands "/msg")
#@146 Send private MESSAGE to TARGET.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-msg #[(message &optional process target) "\206\306 	\206\n\2048\307\310r\fq\210
)\"\211G\311V\205T\312\313\314	\"!\211G\311V\205T\315	#\202T\316\317\"\204E\303\320!\202T\321\322\"\321\323\"\315	#*\207" [process target rcirc-target message rcirc-server-buffer rcirc-nick-table rcirc-buffer-process completing-read "Message nick: " 0 read-string format "Message %s: " rcirc-send-message string-match "\\([^ ]+\\) \\(.+\\)" "Not enough args, or something." match-string 1 2] 5 (#$ . 67393) "i"])
(add-to-list 'rcirc-client-commands "/query")
#@150 Open a private chat buffer to NICK.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-query #[(nick &optional process target) "\206\305 	\206\n\306\"\307\f\206\310\"!\210\f?\205%\311!+\207" [process target rcirc-target nick existing-buffer rcirc-buffer-process rcirc-get-buffer switch-to-buffer rcirc-get-buffer-create rcirc-cmd-whois] 4 (#$ . 68130) (list (completing-read "Query nick: " (save-current-buffer (set-buffer rcirc-server-buffer) rcirc-nick-table)))])
(add-to-list 'rcirc-client-commands "/join")
#@194 Join CHANNELS.
CHANNELS is a comma- or space-separated string of channel names.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-join #[(channels &optional process target) "\206\306 	\206\n\307\310\311#\312\313\f\"\314\315\f\316#\317\320P\"\210\321 \322 =?\205M
\323\211\205L@\324!\210A\211\2048\323*-\207" [process target rcirc-target channels split-channels buffers rcirc-buffer-process split-string "[ ,]" t mapcar #[(ch) "\302	\"\207" [process ch rcirc-get-buffer-create] 3] mapconcat identity "," rcirc-send-string "JOIN " selected-window minibuffer-window nil switch-to-buffer b --dolist-tail--] 5 (#$ . 68747) "sJoin channels: "])
(add-to-list 'rcirc-client-commands "/invite")
#@138 Invite NICK to CHANNEL.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-invite #[(nick-channel &optional process target) "\206\304 	\206\n\305\306P\"*\207" [process target rcirc-target nick-channel rcirc-buffer-process rcirc-send-string "INVITE "] 4 (#$ . 69555) (list (concat (completing-read "Invite nick: " (save-current-buffer (set-buffer rcirc-server-buffer) rcirc-nick-table)) " " (read-string "Channel: ")))])
(add-to-list 'rcirc-client-commands "/part")
#@128 Part CHANNEL.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-part #[(channel &optional process target) "\206\305 	\206\nG\306V\203\202	\307\310\311\fR\"+\207" [process target rcirc-target channel rcirc-id-string rcirc-buffer-process 0 rcirc-send-string "PART " " :"] 6 (#$ . 70119) "sPart channel: "])
(add-to-list 'rcirc-client-commands "/quit")
#@157 Send a quit message to server with REASON.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-quit #[(reason &optional process target) "\206\305 	\206\n\306\307\310G!\204\202\fP\"*\207" [process target rcirc-target reason rcirc-id-string rcirc-buffer-process rcirc-send-string "QUIT :" zerop] 5 (#$ . 70576) "sQuit reason: "])
(add-to-list 'rcirc-client-commands "/nick")
#@135 Change nick to NICK.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-nick #[(nick &optional process target) "\206\304 	\206\n\204\305\306\307!\"\310\311P\"*\207" [process target rcirc-target nick rcirc-buffer-process read-string "New nick: " rcirc-nick rcirc-send-string "NICK "] 4 (#$ . 71052) "i"])
(add-to-list 'rcirc-client-commands "/names")
#@263 Display list of names in CHANNEL or in current channel if CHANNEL is nil.
If called interactively, prompt for a channel when prefix arg is supplied.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-names #[(channel &optional process target) "\206\304 	\206\n\305\306!\203\203\307\310	\"G\311V\203'\202(	\312\313P\"+\207" [process target rcirc-target channel rcirc-buffer-process called-interactively-p interactive read-string "List names in channel: " 0 rcirc-send-string "NAMES "] 4 (#$ . 71506) "P"])
(add-to-list 'rcirc-client-commands "/topic")
#@190 List TOPIC for the TARGET channel.
With a prefix arg, prompt for new topic.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-topic #[(topic &optional process target) "\206\305 	\206\n\306\307!\203\203\310\311\f\"\312\313	G\314V\205*\315PQ\"*\207" [process target rcirc-target topic rcirc-topic rcirc-buffer-process called-interactively-p interactive read-string "New Topic: " rcirc-send-string "TOPIC " 0 " :"] 6 (#$ . 72167) "P"])
(add-to-list 'rcirc-client-commands "/whois")
#@158 Request information from server about NICK.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-whois #[(nick &optional process target) "\206\304 	\206\n\305\306P\"*\207" [process target rcirc-target nick rcirc-buffer-process rcirc-send-string "WHOIS "] 4 (#$ . 72754) (list (completing-read "Whois: " (save-current-buffer (set-buffer rcirc-server-buffer) rcirc-nick-table)))])
(add-to-list 'rcirc-client-commands "/mode")
#@134 Set mode with ARGS.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-mode #[(args &optional process target) "\206\304 	\206\n\305\306P\"*\207" [process target rcirc-target args rcirc-buffer-process rcirc-send-string "MODE "] 4 (#$ . 73275) (list (concat (read-string "Mode nick or channel: ") " " (read-string "Mode: ")))])
(add-to-list 'rcirc-client-commands "/list")
#@159 Request information on CHANNELS from server.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-list #[(channels &optional process target) "\206\304 	\206\n\305\306P\"*\207" [process target rcirc-target channels rcirc-buffer-process rcirc-send-string "LIST "] 4 (#$ . 73745) "sList Channels: "])
(add-to-list 'rcirc-client-commands "/oper")
#@147 Send operator command to server.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-oper #[(args &optional process target) "\206\304 	\206\n\305\306P\"*\207" [process target rcirc-target args rcirc-buffer-process rcirc-send-string "OPER "] 4 (#$ . 74185) "sOper args: "])
(add-to-list 'rcirc-client-commands "/quote")
#@148 Send MESSAGE literally to server.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-quote #[(message &optional process target) "\206\304 	\206\n\305\"*\207" [process target rcirc-target message rcirc-buffer-process rcirc-send-string] 3 (#$ . 74602) "sServer message: "])
(add-to-list 'rcirc-client-commands "/kick")
#@146 Kick NICK from current channel.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-kick #[(arg &optional process target) "\206\306 	\206\n\307!\211@\310\311\312\fA\313#Q\314\315	\313
R\",\207" [process target rcirc-target arg arglist argstring rcirc-buffer-process split-string " :" mapconcat identity " " rcirc-send-string "KICK "] 7 (#$ . 75018) (list (concat (completing-read "Kick nick: " (rcirc-channel-nicks (rcirc-buffer-process) rcirc-target)) (read-from-minibuffer "Kick reason: ")))])
(defalias 'rcirc-cmd-ctcp #[(args &optional process target) "\305\306\"\203-\307\310\"\307\311\"\226\312\313\nP!\314!\203&\f	\n#\202+\315\f	\n#+\207\316\f\317\f!\320\321\322%\207" [args target request function process string-match "^\\([^ ]+\\)\\s-+\\(.+\\)$" match-string 1 2 intern-soft "rcirc-ctcp-sender-" fboundp rcirc-send-ctcp rcirc-print rcirc-nick "ERROR" nil "usage: /ctcp NICK REQUEST"] 6])
#@37 Send a CTCP PING message to TARGET.
(defalias 'rcirc-ctcp-sender-PING #[(process target request) "\303\304\305 \"\306	\n\307$)\207" [timestamp process target format "%.0f" rcirc-float-time rcirc-send-ctcp "PING"] 5 (#$ . 76026)])
(defalias 'rcirc-cmd-me #[(args &optional process target) "\303	\304\n$\207" [process target args rcirc-send-ctcp "ACTION"] 5])
(defalias 'rcirc-add-or-remove #[(set &rest elements) "\304\211\203.\n@\211\203'	\305\230\204'\306	\"\203#\307	\"\202&	B\nA\211\204*\207" [elements elt --dolist-tail-- set nil "" member-ignore-case delete] 4])
(add-to-list 'rcirc-client-commands "/ignore")
#@329 Manage the ignore list.
Ignore NICK, unignore NICK if already ignored, or list ignored
nicks when no NICK is given.  When listing ignored nicks, the
ones added to the list automatically are marked with an asterisk.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-ignore #[(nick &optional process target) "\206\305 	\206\n\306\307\310\f\311\312##\313\311\314	\315\316\317#%*\207" [process target rcirc-target rcirc-ignore-list nick rcirc-buffer-process apply rcirc-add-or-remove split-string nil t rcirc-print "IGNORE" mapconcat #[(nick) "\211	\235\203\302\202\f\303P\207" [nick rcirc-ignore-list-automatic "*" ""] 3] " "] 9 (#$ . 76668) "sToggle ignoring of nick: "])
(add-to-list 'rcirc-client-commands "/bright")
#@143 Manage the bright nick list.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-bright #[(nick &optional process target) "\206\305 	\206\n\306\307\310\f\311\312##\313\311\314	\315\316\317#%*\207" [process target rcirc-target rcirc-bright-nicks nick rcirc-buffer-process apply rcirc-add-or-remove split-string nil t rcirc-print "BRIGHT" mapconcat identity " "] 9 (#$ . 77491) "sToggle emphasis of nick: "])
(add-to-list 'rcirc-client-commands "/dim")
#@140 Manage the dim nick list.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-dim #[(nick &optional process target) "\206\305 	\206\n\306\307\310\f\311\312##\313\311\314	\315\316\317#%*\207" [process target rcirc-target rcirc-dim-nicks nick rcirc-buffer-process apply rcirc-add-or-remove split-string nil t rcirc-print "DIM" mapconcat identity " "] 9 (#$ . 78042) "sToggle deemphasis of nick: "])
(add-to-list 'rcirc-client-commands "/keyword")
#@237 Manage the keyword list.
Mark KEYWORD, unmark KEYWORD if already marked, or list marked
keywords when no KEYWORD is given.

Note: If PROCESS or TARGET are nil, the values given
by `rcirc-buffer-process' and `rcirc-target' will be used.
(defalias 'rcirc-cmd-keyword #[(keyword &optional process target) "\206\305 	\206\n\306\307\310\f\311\312##\313\311\314	\315\316\317#%*\207" [process target rcirc-target rcirc-keywords keyword rcirc-buffer-process apply rcirc-add-or-remove split-string nil t rcirc-print "KEYWORD" mapconcat identity " "] 9 (#$ . 78587) "sToggle highlighting of keyword: "])
#@72 Add face NAME to the face text property of the text from START to END.
(defalias 'rcirc-add-face #[(start end name &optional object) "\205=	\306\211\211
W\205<\307\f\310#\311\f\310
$\307\f\310#\235\2046\312\f\310\nBD$\210\211\202+\207" [name start prop next pos end nil get-text-property face next-single-property-change add-text-properties object] 7 (#$ . 79198)])
#@51 Return a copy of STRING with FACE property added.
(defalias 'rcirc-facify #[(string face) "\206\302\303\304G	$\210)\207" [string face "" rcirc-add-face 0] 5 (#$ . 79594)])
#@69 Regexp matching URLs.  Set to nil to disable URL features in rcirc.
(defvar rcirc-url-regexp (byte-code "\302\303\304\305\306\307\"\203-\310\311\312\313	\314\315\313	\314\313	\316\313	\317\320\313	\314\313	\317\321\260*\202.\322\321\260\207" [punct chars "\\b\\(\\(www\\.\\|\\(s?https?\\|ftp\\|file\\|gopher\\|" "nntp\\|news\\|telnet\\|wais\\|mailto\\|info\\):\\)" "\\(//[-a-z0-9_.]+:[0-9]*\\)?" string-match "[[:digit:]]" "1" "-a-z0-9_=#$@~%&*+\\/[:word:]" "!?:;.," "\\(?:" "[" "]+" "(" "]*)" "]" "\\|" "\\)" "\\([-a-z0-9_=!?#$@~%&*+\\/:;.,]\\|\\w\\)+\\([-a-z0-9_=#$@~%&*+\\/]\\|\\w\\)"] 28) (#$ . 79779))
#@51 Prompt for URL to browse based on URLs in buffer.
(defalias 'rcirc-browse-url #[(&optional arg) "\305\306\"@A\307\310\311\312\211\n\301&\f\"+\207" [rcirc-urls history initial-input completions arg mapcar #[(x) "\301B\207" [x nil] 2] browse-url completing-read "rcirc browse-url: " nil] 8 (#$ . 80401) "P"])
(defalias 'rcirc-markup-timestamp #[(sender response) "eb\210\301\302!\303\"c\207" [rcirc-time-format rcirc-facify format-time-string rcirc-timestamp] 3])
(defalias 'rcirc-markup-attributes #[(sender response) "\301\302\303\304#\203N\305\306\224\306\225\307\224f\310\311\"\203\312\202/\310\313\"\203'\314\202/\310\315\"\205/\316)#\210\311\225Sf\317=\204A\311\224\311\225|\210\307\224\307\225|\210\307\224b\210\202eb\210\301\320\303\304#\205b\306\224\306\225|\210\202Q\207" [#1=#:--cl-var-- re-search-forward "\\([]\\).*?\\(\\1\\|\\)" nil t rcirc-add-face 0 1 eql 2 bold 22 italic 31 underline 15 "+"] 6])
(defalias 'rcirc-markup-my-nick #[(sender response) "\304 p\305\216\306\n!\210\307\310\311\312\313 !!\310Q\314\315#\2057\316\317\224\317\225\320#\210\321\230\203\316ed\322#\210\323p\324\"\210\202+\207" [#1=#:buffer #2=#:table rcirc-nick-syntax-table response syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2# set-syntax-table] 2)) set-syntax-table re-search-forward "\\b" regexp-quote rcirc-nick rcirc-buffer-process nil t rcirc-add-face 0 rcirc-nick-in-message "PRIVMSG" rcirc-nick-in-message-full-line rcirc-record-activity nick] 5])
(defalias 'rcirc-markup-urls #[(sender response) "\205,\305\306\307#\205,\310\224\310\225\311\310!\312\n\313\314\315\307\314	\316\317&\n\210	\fB+\202\207" [rcirc-url-regexp url end start rcirc-urls re-search-forward nil t 0 match-string-no-properties make-button face rcirc-url follow-link action #[(button) "\301\302\303\"!\207" [button browse-url button-get rcirc-url] 4]] 11])
(defalias 'rcirc-markup-keywords #[(sender response) "\306\230\205>	\307\310 !\230?\205>\n\206\311\312\313\314\315\f\"\"\211\205=\316\317
\320\"\313\321#\205=\322\323\224\323\225\324#\210\325p\326\"\210\202\"*\207" [response sender rcirc-target target rcirc-keywords keywords "PRIVMSG" rcirc-nick rcirc-buffer-process "" delq nil mapcar #[(keyword) "\302	\"?\205	\207" [keyword target string-match] 3] re-search-forward regexp-opt words t rcirc-add-face 0 rcirc-keyword rcirc-record-activity keyword] 6])
(defalias 'rcirc-markup-bright-nicks #[(sender response) "\205,	\305\230\205,\306 p\307\216\310\f!\210\311\312\313\"\314\315#\205+\316\317\224\317\225\320#\210\202+\207" [rcirc-bright-nicks response #1=#:buffer #2=#:table rcirc-nick-syntax-table "NAMES" syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2# set-syntax-table] 2)) set-syntax-table re-search-forward regexp-opt words nil t rcirc-add-face 0 rcirc-bright-nick] 4])
(defalias 'rcirc-markup-fill #[(sender response) "\305\230?\2052	\206\306`\307 Z\310\"\n\311=\203\311 S\202'\n\203&\n\202'\312Z\313`d\314\315$*\207" [response rcirc-fill-prefix rcirc-fill-column fill-column fill-prefix "372" make-string line-beginning-position 32 frame-width 3 fill-region nil t] 5])
(defalias 'rcirc-handler-001 #[(process sender args text) "\306\307	\n%\210r\310!q\210\311\312!\210	\n@\313 \210\203o\203d\311\311\211\203O@\314@
\"\203F\315A\211\2045\311+\203d\316\317\320\315\211$\210\321 \202t\321 \210\322\"\202t\322\")\207" [process sender args text rcirc-connecting rcirc-server-name rcirc-handler-generic "001" process-buffer nil rcirc-reschedule-timeout rcirc-update-prompt string-match t add-hook rcirc-authenticated-hook rcirc-join-channels-post-auth rcirc-authenticate rcirc-join-channels rcirc-nick rcirc-auto-authenticate-flag rcirc-authenticate-before-join auth-required rcirc-authinfo s --dolist-tail-- rcirc-startup-channels] 7])
#@53 Join `rcirc-startup-channels' after authenticating.
(defalias 'rcirc-join-channels-post-auth #[(process) "r\302!q\210\303	\")\207" [process rcirc-startup-channels process-buffer rcirc-join-channels] 3 (#$ . 84288)])
(defalias 'rcirc-handler-PRIVMSG #[(process sender args text) "\306	\n$\210\307\n@!\203\n@\202	\n\211A@)\206\310\311\312
\"\2036\313	\314\315
\"$\210\202A\316	\317
\320&\210r\321\320#q\210\322	$+\207" [process sender args text x message rcirc-check-auth-status rcirc-channel-p "" string-match "^\\(.*\\)$" rcirc-handler-CTCP match-string 1 rcirc-print "PRIVMSG" t rcirc-get-buffer rcirc-put-nick-channel target rcirc-current-line] 8])
(defalias 'rcirc-handler-NOTICE #[(process sender args text) "\306	\n$\210\n@\n\211A@)\307\310
\"\203&\311	\312\313
\"$\202V\314	\315\316!\2036\202R\307\317
\"\203D\312\313
\"\202R	\205R	\320!\230?\205R	
\321&*\207" [process sender args text x message rcirc-check-auth-status string-match "^\\(.*\\)$" rcirc-handler-CTCP-response match-string 1 rcirc-print "NOTICE" rcirc-channel-p "\\[\\(#[^] ]+\\)\\]" rcirc-server-name t target] 8])
#@124 Check if the user just authenticated.
If authenticated, runs `rcirc-authenticated-hook' with PROCESS as
the only argument.
(defalias 'rcirc-check-auth-status #[(process sender args text) "r\306!q\210	?\205d\n\205d\205d\f@\f\211A@)\307\230\203@\230\203@\310\311\"\310\312\"\313E\235\204W\314\230\205c\230\205c\315\316\"\205c\317\320\321\"\210\322\321\323\317#*)\207" [process rcirc-user-authenticated rcirc-authenticate-before-join rcirc-auto-authenticate-flag args x process-buffer "NickServ" format "You are now identified for %s." "You are successfully identified as %s." "Password accepted - you are now recognized." "Q" string-match "\\`You are now logged in as .+\\.\\'" t run-hook-with-args rcirc-authenticated-hook remove-hook rcirc-join-channels-post-auth message target sender rcirc-nick] 6 (#$ . 85441)])
(defalias 'rcirc-handler-WALLOPS #[(process sender args text) "\303	\304	\n@\305&\207" [process sender args rcirc-print "WALLOPS" t] 7])
(defalias 'rcirc-handler-JOIN #[(process sender args text) "@r\306\n	\"q\210\307\n	\310\n	#\211\205#\f
W\205#\311\n	#)$\210\312)\313\n\314	\315%\210\316\317 \"\205A\313\n\314	%)\207" [args channel process sender last-activity-lines rcirc-omit-threshold rcirc-get-buffer-create rcirc-put-nick-channel rcirc-elapsed-lines rcirc-last-line nil rcirc-print "JOIN" "" rcirc-get-buffer rcirc-buffer-process mode-line-process] 9])
(defalias 'rcirc-handler-PART-or-KICK #[(process response channel sender nick args) "\304!\210\305	!\230\204\306	\n#\210\307	\n#\207\310\311\312	\n\"\"\210\313	\n\"\211\205,\314!)\207" [nick process channel buffer rcirc-ignore-update-automatic rcirc-nick rcirc-maybe-remember-nick-quit rcirc-remove-nick-channel mapc #[(n) "\303	\n#\207" [process n channel rcirc-remove-nick-channel] 4] rcirc-channel-nicks rcirc-get-buffer rcirc-disconnect-buffer] 6])
(defalias 'rcirc-handler-PART #[(process sender args text) "@\211A@)	\306Q\307
\f\310	\f%\210\311\312 \f\"\203+\307
\f\310\f\f%\210\313
\310	\f\211&+\207" [args channel x reason message process " " rcirc-print "PART" rcirc-get-buffer rcirc-buffer-process rcirc-handler-PART-or-KICK sender] 8])
(defalias 'rcirc-handler-KICK #[(process sender args text) "@\211A@)AA@\306	\306\f\260\307
\310	
\311&\210\312\313 \"\2035\307
\310
%\210\314
\310	\f&,\207" [args channel x nick reason message " " rcirc-print "KICK" t rcirc-get-buffer rcirc-buffer-process rcirc-handler-PART-or-KICK process sender] 8])
#@58 Remember NICK as leaving CHANNEL if they recently spoke.
(defalias 'rcirc-maybe-remember-nick-quit #[(process nick channel) "\306	\n#\211\205D\fW\205D\307\n\"\211\205Cr
q\210\310	\311#\312	\n#\f\211
\2038
\f\241\202B	\fBB\211+))\207" [process nick channel elapsed-lines rcirc-omit-threshold buffer rcirc-elapsed-lines rcirc-get-buffer assoc-string t rcirc-last-line rcirc-recent-quit-alist line record] 6 (#$ . 87981)])
(defalias 'rcirc-handler-QUIT #[(process sender args text) "\302!\210\303\304\305	\"\"\210\306	\"\207" [sender process rcirc-ignore-update-automatic mapc #[(channel) "\304	\305\n\306\307\"%\210\310	\n#\207" [process sender channel args rcirc-print "QUIT" apply concat rcirc-maybe-remember-nick-quit] 8] rcirc-nick-channels rcirc-nick-remove] 5])
(defalias 'rcirc-handler-NICK #[(process sender args text) "\n@\306\f	\"\307	!\210		\235\203\310\311\"\210\310\312\"\210
\313\211\203@@\314\f\315%\210A\211\204)*\316\f	\"\211\203crq\210\314\f\315	%\210\317\320\f\"!\210))r\321\f!q\210\322	\"\323	\"\210\324#\210)	\230\205\225\325\326!\210\205\225\327 ,\207" [sender old-nick args new-nick process channels rcirc-nick-channels rcirc-ignore-update-automatic add-to-list rcirc-ignore-list rcirc-ignore-list-automatic nil rcirc-print "NICK" rcirc-get-buffer rename-buffer rcirc-generate-new-buffer-name process-buffer gethash remhash puthash rcirc-update-prompt t rcirc-authenticate target --dolist-tail-- chat-buffer rcirc-target rcirc-nick-table v rcirc-nick rcirc-auto-authenticate-flag] 7])
(defalias 'rcirc-handler-PING #[(process sender args text) "\302\303	@P\"\207" [process args rcirc-send-string "PONG :"] 4])
(defalias 'rcirc-handler-PONG #[(process sender args text) "\300\207" [nil] 1])
(defalias 'rcirc-handler-TOPIC #[(process sender args text) "\211A@)\306\f\307@\n%\210r\310@\"q\210\n\211*\207" [args x topic process sender rcirc-topic rcirc-print "TOPIC" rcirc-get-buffer] 7])
(defvar rcirc-nick-away-alist nil)
#@10 RPL_AWAY
(defalias 'rcirc-handler-301 #[(process sender args text) "\211A@)\306\n\"AA@\f\203\fA
\230?\2059\307	\310\nA\n%\210\f\2032\f
\241\2029\n
BB\211+\207" [args x nick rcirc-nick-away-alist rec away-message assoc-string rcirc-handler-generic "AWAY" process text] 7 (#$ . 90023)])
#@15 RPL_WHOISIDLE
(defalias 'rcirc-handler-317 #[(process sender args text) "A@\306\3078!\211W\203\310\311\n\"\202\312\313\306\3148!!\315\316
\"\317\320	\f$\321\322\323\324&.\207" [args nick idle-secs most-positive-fixnum idle-string signon-time string-to-number 2 format-seconds "%yy %dd %hh %mm %z%ss" "a very long time" seconds-to-time 3 format-time-string "%c" format "%s idle for %s, signed on %s" rcirc-print "317" nil t signon-string message process sender] 8 (#$ . 90331)])
#@11 RPL_TOPIC
(defalias 'rcirc-handler-332 #[(process sender args text) "\305	\211A@)\"\206\306	\211A@)\"rq\210	AA@\211*\207" [process args x buffer rcirc-topic rcirc-get-buffer rcirc-get-temp-buffer-create] 4 (#$ . 90841)])
#@57 333 says who set the topic and when.
Not in rfc1459.txt
(defalias 'rcirc-handler-333 #[(process sender args text) "\306	\211A@)\"\206\307	\211A@)\"rq\210	AA@\310\311\312	AAA@!!!\313\314	\211A@)\315\316
\f$%,\207" [process args x buffer time setter rcirc-get-buffer rcirc-get-temp-buffer-create current-time-string seconds-to-time string-to-number rcirc-print "TOPIC" format "%s (%s on %s)" sender rcirc-topic] 11 (#$ . 91077)])
#@17 ERR_NOCHANMODES
(defalias 'rcirc-handler-477 #[(process sender args text) "\304	\305\n\211A@)\nAA@%\207" [process sender args x rcirc-print "477"] 7 (#$ . 91527)])
(defalias 'rcirc-handler-MODE #[(process sender args text) "@\306\307A\310#\311\f\312\n\313!\230?\205\n	%\210\314\315\211AA)\"*\207" [args msg target process sender x mapconcat identity " " rcirc-print "MODE" rcirc-nick mapc #[(nick) "\304	\"\205\305\n\306	%\207" [process nick sender msg rcirc-get-buffer rcirc-print "MODE"] 6]] 8])
#@47 Return a buffer based on PROCESS and CHANNEL.
(defalias 'rcirc-get-temp-buffer-create #[(process channel) "\303\227\304\305	!R\306\n!)\207" [channel process tmpnam " " "TMP" process-name get-buffer-create] 5 (#$ . 92048)])
#@14 RPL_NAMREPLY
(defalias 'rcirc-handler-353 #[(process sender args text) "\3048\3058\206\n\306\307\310\311	\312\313#\"\210r\314\n\"q\210db\210\315!@\312\261+\207" [args names channel process 2 3 "" mapc #[(nick) "\303	\n#\207" [process nick channel rcirc-put-nick-channel] 4] split-string " " t rcirc-get-temp-buffer-create last] 6 (#$ . 92279)])
#@16 RPL_ENDOFNAMES
(defalias 'rcirc-handler-366 #[(process sender args text) "\211A@)\306\n\"r\fq\210\307
\310\ned{\f\311\f\312\")%\210)\313\f!*\207" [args x channel process buffer sender rcirc-get-temp-buffer-create rcirc-print "NAMES" rcirc-sort-nicknames-join " " kill-buffer content] 9 (#$ . 92639)])
#@19 ERR_NICKNAMEINUSE
(defalias 'rcirc-handler-433 #[(process sender args text) "\306\307	\n%\210\n\211A@)\310Pr\311!q\210\312
\313#*\207" [process sender args text x new-nick rcirc-handler-generic "433" "`" process-buffer rcirc-cmd-nick nil] 7 (#$ . 92954)])
#@118 Send authentication to process associated with current buffer.
Passwords are stored in `rcirc-authinfo' (which see).
(defalias 'rcirc-authenticate #[nil "rq\210	\306\211\205\257@\307 \n@\nAA@\n\211A@)\nAAA\310\"\203\246\311>\203\222\310\"\203\222\312\313\"\203a\314
\211A@)\206X\315\316
@P#\210\202\246\312\317\"\203}\314\320\321\322
@
\211A@)##\210\202\246\312\323\"\203\246\314\324\316
@P#\210\202\246\325=\203\246\314\326\321\327
@##\210-A\211\204\f\306+\207" [rcirc-server-buffer rcirc-authinfo i --dolist-tail-- x args nil rcirc-buffer-process string-match (nickserv chanserv bitlbee) eql nickserv rcirc-send-privmsg "NickServ" "IDENTIFY " chanserv "ChanServ" format "IDENTIFY %s %s" bitlbee "&bitlbee" quakenet "Q@CServe.quakenet.org" "AUTH %s %s" method nick server process rcirc-server rcirc-nick] 8 (#$ . 93223) nil])
(defalias 'rcirc-handler-INVITE #[(process sender args text) "\303	\304\305\306\307\n\310#\311&\207" [process sender args rcirc-print "INVITE" nil mapconcat identity " " t] 9])
(defalias 'rcirc-handler-ERROR #[(process sender args text) "\303	\304\305\306\307\n\310#%\207" [process sender args rcirc-print "ERROR" nil mapconcat identity " "] 9])
(defalias 'rcirc-handler-CTCP #[(process target sender text) "\306\307\"\205R\310\311\"\226\310\312\"\313\314	P!\315!\204/\316\f
\317\320\321
#\322&\202Q\f
\n$\210	\323\230\206@	\324\230?\205Q\316\f
\325\320\326\"\322&+\207" [text request args handler process sender string-match "^\\([^ ]+\\) *\\(.*\\)$" match-string 1 2 intern-soft "rcirc-handler-ctcp-" fboundp rcirc-print "ERROR" format "%s sent unsupported ctcp: %s" t "ACTION" "KEEPALIVE" "CTCP" "%s" target] 9])
(defalias 'rcirc-handler-ctcp-VERSION #[(process target sender args) "\303\304	\305\n\306\260\"\207" [process sender rcirc-id-string rcirc-send-string "NOTICE " " :VERSION " ""] 7])
(defalias 'rcirc-handler-ctcp-ACTION #[(process target sender args) "\304	\305\n\306&\207" [process sender target args rcirc-print "ACTION" t] 7])
(defalias 'rcirc-handler-ctcp-TIME #[(process target sender args) "\302\303	\304\305 \306\260\"\207" [process sender rcirc-send-string "NOTICE " " :TIME " current-time-string ""] 7])
(defalias 'rcirc-handler-CTCP-response #[(process target sender message) "\303	\304\305\n\306&\207" [process sender message rcirc-print "CTCP" nil t] 7])
(byte-code "\300\301\302\303\304\305\304\306&\210\307\310\311\312\304\301%\210\307\313\314\315\304\301%\210\307\316\317\320\304\301%\210\307\321\322\323\304\301%\210\307\324\325\326\304\301%\210\307\327\330\331\304\301%\210\307\332\333\334\304\301%\210\307\335\336\337\304\301%\210\307\340\341\342\304\301%\210\307\343\344\345\304\301%\210\307\346\347\350\304\301%\210\307\351\352\353\304\301%\210\307\354\355\356\304\301%\210\307\357\360\361\304\301%\210\362\363\364\365#\207" [custom-declare-group rcirc-faces nil "Faces for rcirc." :group rcirc faces custom-declare-face rcirc-my-nick ((((class color) (min-colors 88) (background light)) :foreground "Blue1") (((class color) (min-colors 88) (background dark)) :foreground "LightSkyBlue") (((class color) (min-colors 16) (background light)) :foreground "Blue") (((class color) (min-colors 16) (background dark)) :foreground "LightSkyBlue") (((class color) (min-colors 8)) :foreground "blue" :weight bold) (t :inverse-video t :weight bold)) "Rcirc face for my messages." rcirc-other-nick ((((class grayscale) (background light)) :foreground "Gray90" :weight bold :slant italic) (((class grayscale) (background dark)) :foreground "DimGray" :weight bold :slant italic) (((class color) (min-colors 88) (background light)) :foreground "DarkGoldenrod") (((class color) (min-colors 88) (background dark)) :foreground "LightGoldenrod") (((class color) (min-colors 16) (background light)) :foreground "DarkGoldenrod") (((class color) (min-colors 16) (background dark)) :foreground "LightGoldenrod") (((class color) (min-colors 8)) :foreground "yellow" :weight light) (t :weight bold :slant italic)) "Rcirc face for other users' messages." rcirc-bright-nick ((((class grayscale) (background light)) :foreground "LightGray" :weight bold :underline t) (((class grayscale) (background dark)) :foreground "Gray50" :weight bold :underline t) (((class color) (min-colors 88) (background light)) :foreground "CadetBlue") (((class color) (min-colors 88) (background dark)) :foreground "Aquamarine") (((class color) (min-colors 16) (background light)) :foreground "CadetBlue") (((class color) (min-colors 16) (background dark)) :foreground "Aquamarine") (((class color) (min-colors 8)) :foreground "magenta") (t :weight bold :underline t)) "Rcirc face for nicks matched by `rcirc-bright-nicks'." rcirc-dim-nick ((t :inherit default)) "Rcirc face for nicks in `rcirc-dim-nicks'." rcirc-server ((((class grayscale) (background light)) :foreground "DimGray" :weight bold :slant italic) (((class grayscale) (background dark)) :foreground "LightGray" :weight bold :slant italic) (((class color) (min-colors 88) (background light)) :foreground "Firebrick") (((class color) (min-colors 88) (background dark)) :foreground "chocolate1") (((class color) (min-colors 16) (background light)) :foreground "red") (((class color) (min-colors 16) (background dark)) :foreground "red1") (((class color) (min-colors 8) (background light))) (((class color) (min-colors 8) (background dark))) (t :weight bold :slant italic)) "Rcirc face for server messages." rcirc-server-prefix ((default :inherit rcirc-server) (((class grayscale))) (((class color) (min-colors 16))) (((class color) (min-colors 8) (background light)) :foreground "red") (((class color) (min-colors 8) (background dark)) :foreground "red1")) "Rcirc face for server prefixes." rcirc-timestamp ((t :inherit default)) "Rcirc face for timestamps." rcirc-nick-in-message ((((class grayscale) (background light)) :foreground "LightGray" :weight bold) (((class grayscale) (background dark)) :foreground "DimGray" :weight bold) (((class color) (min-colors 88) (background light)) :foreground "Purple") (((class color) (min-colors 88) (background dark)) :foreground "Cyan1") (((class color) (min-colors 16) (background light)) :foreground "Purple") (((class color) (min-colors 16) (background dark)) :foreground "Cyan") (((class color) (min-colors 8)) :foreground "cyan" :weight bold) (t :weight bold)) "Rcirc face for instances of your nick within messages." rcirc-nick-in-message-full-line ((t :weight bold)) "Rcirc face for emphasizing the entire message when your nick is mentioned." rcirc-prompt ((((min-colors 88) (background dark)) :foreground "cyan1") (((background dark)) :foreground "cyan") (t :foreground "dark blue")) "Rcirc face for prompts." rcirc-track-nick ((((type tty)) :inherit default) (t :inverse-video t)) "Rcirc face used in the mode-line when your nick is mentioned." rcirc-track-keyword ((t :weight bold)) "Rcirc face used in the mode-line when keywords are mentioned." rcirc-url ((t :weight bold)) "Rcirc face used to highlight urls." rcirc-keyword ((t :inherit highlight)) "Rcirc face used to highlight keywords." put rcirc-mode flyspell-mode-predicate rcirc-looking-at-input] 8)
#@49 Returns true if point is past the input marker.
(defalias 'rcirc-looking-at-input #[nil "`Y\207" [rcirc-prompt-end-marker] 2 (#$ . 100416)])
(provide 'rcirc)

MMCT - 2023