Function: erc-list-install-322-handler

erc-list-install-322-handler is a byte-compiled function defined in erc-list.el.gz.

Signature

(erc-list-install-322-handler SERVER-BUFFER)

Source Code

;; Defined in /usr/src/emacs/lisp/erc/erc-list.el.gz
;; Helper function to install our 322 handler and make our buffer.
(defun erc-list-install-322-handler (server-buffer)
  (with-current-buffer server-buffer
    ;; Arrange for 322 responses to insert into our buffer.
    (add-hook 'erc-server-322-functions #'erc-list-handle-322 t t)
    ;; Arrange for 323 (end of list) to end this.
    (erc-once-with-server-event
     323
     (lambda (_proc _parsed)
	(remove-hook 'erc-server-322-functions #'erc-list-handle-322 t)))
    ;; Find the list buffer, empty it, and display it.
    (setq-local erc-list-buffer
                (get-buffer-create (concat "*Channels of "
                                           erc-server-announced-name
                                           "*")))
    (with-current-buffer erc-list-buffer
      (erc-list-menu-mode)
      (setq buffer-read-only nil)
      (erase-buffer)
      (setq-local erc-list-server-buffer server-buffer)
      (setq buffer-read-only t))
    (pop-to-buffer erc-list-buffer))
  t)