Function: nnfeed-request-rename-group

nnfeed-request-rename-group is a byte-compiled function defined in nnfeed.el.gz.

Signature

(nnfeed-request-rename-group GROUP NEW-NAME &optional SERVER)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nnfeed.el.gz
(deffoo nnfeed-request-rename-group (group new-name &optional server)
  (when-let* ((server (or server (nnfeed--current-server-no-prefix)))
              (a (nnfeed--server-address server))
              (s (or (gethash a nnfeed-servers)
                     (and ; Open the server to add it to `nnfeed-servers'
                      (save-match-data
                        (nnfeed-open-server
                         server
                         (cdr ; Get defs and backend.
                          (assoc a (cdr (assq nnfeed-backend nnoo-state-alist))
                                 (lambda (car key)
                                   (and (stringp car)
                                        (string-match
                                         (concat
                                          "\\`\\(\\(nn[[:alpha:]]+\\)\\+\\)?"
                                          (regexp-quote key) "\\'")
                                         car)
                                        (setq server car)))))
                         (if (match-string 1 server)
                             (intern (match-string 2 server)) 'nnfeed)))
                      (gethash a nnfeed-servers))))
              (g (or (nnfeed--group-data group a)
                     `[ ,group ,(make-hash-table :test 'equal)
                        ,(make-hash-table :test 'eql) nil 1 ""])))
    (puthash new-name g s)
    (puthash group new-name nnfeed-group-names)
    (remhash group s)
    (and (string= group nnfeed-group)
         (setq nnfeed-group new-name))
    t))