;ELC   
;;; Compiled
;;; in Emacs version 26.3
;;; 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\3031 \300\304!0\202 \210\202 \210\305\306\307\310\311\301%\210\312\313\314\315\311\306\316\317&\207" [require erc speedbar (error) dframe custom-declare-group erc-speedbar nil "Integration of ERC in the Speedbar" :group custom-declare-variable erc-speedbar-sort-users-type 'activity "How channel nicknames are sorted.\n\n`activity'     - Sort users by channel activity\n`alphabetical' - Sort users alphabetically\nnil            - Do not sort users" :type (choice (const :tag "Sort users by channel activity" activity) (const :tag "Sort users alphabetically" alphabetical) (const :tag "Do not sort users" nil))] 8)
#@39 Keymap used when in erc display mode.
(defvar erc-speedbar-key-map nil (#$ . 1066))
#@58 Install those variables used by speedbar to enhance ERC.
(defalias 'erc-install-speedbar-variables #[nil "\204% \301 \302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\307#\210\302\311\312#\210\313\314!\210\315\316!\207" [erc-speedbar-key-map speedbar-make-specialized-keymap define-key "e" speedbar-edit-line "" "+" speedbar-expand-line "=" "-" speedbar-contract-line speedbar-add-expansion-list ("ERC" erc-speedbar-menu-items erc-speedbar-key-map erc-speedbar-server-buttons) speedbar-add-mode-functions-list ("ERC" (speedbar-item-info . erc-speedbar-item-info))] 4 (#$ . 1156)])
#@49 Additional menu-items to add to speedbar frame.
(defvar erc-speedbar-menu-items '(["Goto buffer" speedbar-edit-line t] ["Expand Node" speedbar-expand-line (save-excursion (beginning-of-line) (looking-at "[0-9]+: *.\\+. "))] ["Contract Node" speedbar-contract-line (save-excursion (beginning-of-line) (looking-at "[0-9]+: *.-. "))]) (#$ . 1761))
(byte-code "\300\301!\203\f \302 \210\202 \303\304\302\"\210\300\207" [featurep speedbar erc-install-speedbar-variables add-hook speedbar-load-hook] 3)
#@93 Initialize speedbar to display an ERC browser.
This will add a speedbar major display mode.
(defalias 'erc-speedbar-browser #[nil "\300\301!\210\302\303!\210\304\305!\210\306 \207" [require speedbar speedbar-frame-mode 1 speedbar-change-initial-expansion-list "ERC" speedbar-get-focus] 2 (#$ . 2265) nil])
#@40 Create buttons for speedbar in BUFFER.
(defalias 'erc-speedbar-buttons #[(buffer) "\304 \210\305\211\211rq\210\306 \307\310 !\311 )\n\203% \312\305\313#\202E 	\2039 \314\313\"\210\315y\210\316\317\313#\202E \203D \314\313\"\202E \305+\207" [queryp chanp serverp buffer erase-buffer nil erc-server-buffer-p erc-channel-p erc-default-target erc-query-buffer-p erc-speedbar-channel-buttons 0 erc-speedbar-insert-target -1 erc-speedbar-expand-channel "+"] 4 (#$ . 2577)])
#@58 Insert the initial list of servers you are connected to.
(defalias 'erc-speedbar-server-buttons #[(directory depth) "\305\306!\211\205- \307\310\211\203+ @\311\312\313\314\n\315\n!\316\n\310\f&	\210A\211\204 +\307)\207" [servers inhibit-read-only server --dolist-tail-- depth erc-buffer-list #[nil "p\301!=\207" [erc-server-process process-buffer] 3] t nil speedbar-make-tag-line bracket 43 erc-speedbar-expand-server buffer-name erc-speedbar-goto-buffer] 11 (#$ . 3063)])
(defalias 'erc-speedbar-expand-server #[(text server indent) "\304\305\"\203, \306\307!\210\310\212\311\210\312u\210\313\311\nT#*\203% \306\307!\210\202B \306\314!\210\202B \304\315\"\203> \306\316!\210\317\n!\210\202B \320\321!\210\322 \207" [text inhibit-read-only indent server string-match "+" speedbar-change-expand-button-char 45 t nil 1 erc-speedbar-channel-buttons 63 "-" 43 speedbar-delete-subblock error "Ooops... not sure what to do" speedbar-center-buffer-smartly] 4])
(defalias 'erc-speedbar-channel-buttons #[(directory depth server-buffer) "\306!\2057 rq\210	)\307\310\n\"\211\2056 \311\312\211\f\2034 \f@\313\"\210\fA\211\f\204! +\311*\207" [server-buffer erc-server-process proc targets inhibit-read-only target get-buffer erc-buffer-list #[nil "\301!p=?\207" [erc-server-process process-buffer] 2] t nil erc-speedbar-insert-target --dolist-tail-- depth] 4])
(defalias 'erc-speedbar-insert-target #[(buffer depth) "rq\210\302\303 !)\203 \304\305\306\307\310!\311\312	&	\207\304\312\211\211\211\310!\311\312	&	\207" [buffer depth erc-channel-p erc-default-target speedbar-make-tag-line bracket 43 erc-speedbar-expand-channel buffer-name erc-speedbar-goto-buffer nil] 10])
#@109 For the line matching TEXT, in CHANNEL, expand or contract a line.
INDENT is the current indentation level.
(defalias 'erc-speedbar-expand-channel #[(text channel indent) "\306\307\"\203\356 \310\311!\210\312\212\313\210\314u\210r\nq\210\315\316\"\f\2038 \2038 (\2031 \317\320\f#\202X \317\321\f\"\202X \f\203C \317\322\f\"\202X \203W (\203S \317\323\"\202X \324\202X \325P)\326r\nq\210))!*+\327\330\331\313\211\332+P\313\211\211,T&	\210*\325\230\204\222 \327\330\331\313\211\333*P\313\211\211,T&	\210-\334=\203\245 \335r\nq\210\336 )!\202\277 -\337=\203\270 \340r\nq\210\336 )!\202\277 r\nq\210\336 )\211.\203\352 \312.\313/\2110\203\351 0@/\341/\342,T#\2100A\2110\204\322 +-\202\306\343\"\203\310\342!\210\344,!\210\202\345\346!\210\347 \207" [text inhibit-read-only channel erc-channel-modes erc-channel-user-limit erc-channel-key string-match "+" speedbar-change-expand-button-char 45 t nil 1 apply concat format "lk %.0f %s" "kl %.0f" "l %.0f" "k %s" "k" "" erc-controls-interpret speedbar-make-tag-line angle 105 "Modes: +" "Topic: " alphabetical erc-sort-channel-users-alphabetically erc-get-channel-user-list activity erc-sort-channel-users-by-activity erc-speedbar-insert-user 43 "-" speedbar-delete-subblock error "Ooops... not sure what to do" speedbar-center-buffer-smartly erc-show-channel-key-p erc-channel-topic topic modes indent erc-speedbar-sort-users-type names entry --dolist-tail--] 11 (#$ . 4770)])
#@142 Insert one user based on the channel member list ENTRY.
EXP-CHAR is the expansion character to use.
INDENT is the current indentation level.
(defalias 'erc-speedbar-insert-user #[(entry exp-char indent) "@A	\306H>\204 \307\310\311	D\"\210	\312H	\306H>\204( \307\310\311	D\"\210	\313H	\306H>\204; \307\310\311	D\"\210	\314H	\306H>\204O \307\310\311	D\"\210	\315H	\306H>\204c \307\310\311	D\"\210	\316H\n\205 \n\306H>\204| \307\310\317\nD\"\210\n\312H \n\205\230 \n\306H>\204\225 \307\310\317\nD\"\210\n\315H\211!\203\242 \320\202\243 \321 \203\254 \322\202\255 \321\fQ\"\211\204\273 \205\274 \320Q\211#E$\204\333 \204\333 \204\333 \203\356 \323\324\325\326$\"\327$\327%&	\202&\330\232\203\331y\210\326\322#E%#\210\323\332\333\327\211\"\327\211\211%&	.\f\207" [entry user cuser cl-struct-erc-server-user-tags nick host 0 signal wrong-type-argument erc-server-user 1 2 5 3 4 erc-channel-user "@" "" "+" speedbar-make-tag-line bracket 43 erc-speedbar-expand-user nil 45 -1 statictag 63 info login name cl-struct-erc-channel-user-tags voice op nick-str finger sbtoken indent exp-char] 11 (#$ . 6237)])
#@124 Update the speedbar information about a ERC buffer. The update
is only done when the channel is actually expanded already.
(defalias 'erc-speedbar-update-channel #[(buffer) "rq\210\212eb\210\302\303\304\305	!!P\306\307#\205\" \310 \210\311\312!\210\313\314	\312#*\207" [speedbar-buffer buffer re-search-forward "^1: *.+. *" regexp-quote buffer-name nil t beginning-of-line speedbar-delete-subblock 1 erc-speedbar-expand-channel "+"] 5 (#$ . 7402)])
(defalias 'erc-speedbar-expand-user #[(text token indent) "\306\307\"\203\\ \310\311!\210\312\212\313\210\314u\210\n@\nA@\315\n8\211\2032 \316\313\211\211\211\313\211\211T&	\210\f\203E \316\313\211\211\211\f\313\211\211T&	\210\203X \316\313\211\211\211\313\211\211T&	\210-\202s \306\317\"\203o \310\320!\210\321!\210\202s \322\323!\210\324 \207" [text inhibit-read-only token info name finger string-match "+" speedbar-change-expand-button-char 45 t nil 1 2 speedbar-make-tag-line "-" 43 speedbar-delete-subblock error "Ooops... not sure what to do" speedbar-center-buffer-smartly indent] 11])
#@76 When user clicks on TEXT, goto an ERC buffer.
The INDENT level is ignored.
(defalias 'erc-speedbar-goto-buffer #[(text buffer indent) "\306\307!\2037 \310!\210\311	\312\"\211\203 \313\n!\210\314\315\n!!\2025 \203. \316\313\317	!!)\2025 \310!\210\320	!)\207\311	\312\"\211\203L \313\n!\210\314\315\n!!\202b \203[ \316\313\317	!!)\202b \310!\210\320	!)\207" [speedbar-frame buffer bwin dframe-power-click pop-up-frames speedbar-power-click featurep dframe dframe-select-attached-frame get-buffer-window 0 select-window raise-frame window-frame t display-buffer switch-to-buffer] 4 (#$ . 8470)])
#@51 Return the text for the item on the current line.
(defalias 'erc-speedbar-line-text #[nil "\300 \210\301\302\303\304#\205 \305`\306 \"\207" [beginning-of-line re-search-forward "[]>] " nil t buffer-substring-no-properties point-at-eol] 4 (#$ . 9079)])
#@67 Display information about the current buffer on the current line.
(defalias 'erc-speedbar-item-info #[nil "\302 \303 \211\203 	<\203 \304\305	@#\202) \306	!\203% \304\307\"\202) \304\310\"*\207" [txt data speedbar-line-token erc-speedbar-line-text message "%s: %s" bufferp "Channel: %s" "%s"] 5 (#$ . 9338)])
(provide 'erc-speedbar)
