Function: nnmairix-create-search-group-from-message
nnmairix-create-search-group-from-message is an interactive and
byte-compiled function defined in nnmairix.el.gz.
Signature
(nnmairix-create-search-group-from-message)
Documentation
Interactively create search group with query based on current message.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnmairix.el.gz
(defun nnmairix-create-search-group-from-message ()
"Interactively create search group with query based on current message."
(interactive)
(let ((char-header nnmairix-interactive-query-parameters)
(server (nnmairix-backend-to-server gnus-current-select-method))
query achar header finished group threads) ;; cq
(when (or (not (gnus-buffer-live-p gnus-article-buffer))
(not (gnus-buffer-live-p gnus-summary-buffer)))
(error "No article or summary buffer"))
(when (not server)
(error "No nnmairix server found for back end %s:%s"
(symbol-name (car gnus-current-select-method))
(nth 1 gnus-current-select-method)))
(while (not finished)
(save-excursion
(gnus-summary-toggle-header 1)
(while (not achar)
(message "Query (%s): " (nnmairix-create-message-line-for-search))
(setq achar (read-char))
(when (not (assoc achar char-header))
(setq achar nil)))
(set-buffer gnus-article-buffer)
(setq header nil)
(when ;; (setq cq
(nth 1 (assoc achar char-header)) ;;)
(setq header
(nnmairix-replace-illegal-chars
(gnus-fetch-field (nth 1 (assoc achar char-header))))))
(setq header (read-string
(concat "Match " (nth 3 (assoc achar char-header)) " on: ")
header))
(push (concat (nth 2 (assoc achar char-header)) ":" header) query)
(setq finished (not (y-or-n-p "Add another search query? "))
achar nil)))
(setq threads (y-or-n-p "Include whole threads? "))
(setq group (read-string "Group name: "))
(set-buffer gnus-summary-buffer)
(message "Creating group %s on server %s with query %s." group
(gnus-method-to-server server) (mapconcat #'identity query " "))
(nnmairix-create-search-group server group query threads)))