[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r105294: nnir.el (gnus-group-make-nni
From: |
Katsumi Yamaoka |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r105294: nnir.el (gnus-group-make-nnir-group): Allow optional search query argument. |
Date: |
Wed, 20 Jul 2011 15:24:16 +0000 |
User-agent: |
Bazaar (2.3.1) |
------------------------------------------------------------
revno: 105294
author: Andrew Cohen <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Wed 2011-07-20 15:24:16 +0000
message:
nnir.el (gnus-group-make-nnir-group): Allow optional search query argument.
(gnus-group-make-nnir-group, nnir-request-group, nnir-run-query): Use
`nnir-address' to handle server info rather than passing an arg.
modified:
lisp/gnus/ChangeLog
lisp/gnus/nnir.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2011-07-20 14:19:52 +0000
+++ b/lisp/gnus/ChangeLog 2011-07-20 15:24:16 +0000
@@ -1,5 +1,10 @@
2011-07-20 Andrew Cohen <address@hidden>
+ * nnir.el (gnus-group-make-nnir-group): Allow optional search query
+ argument.
+ (gnus-group-make-nnir-group, nnir-request-group, nnir-run-query): Use
+ `nnir-address' to handle server info rather than passing an arg.
+
* nnimap.el (nnimap-make-thread-query): New utility function to format
an imap thread search query.
(nnimap-request-thread): Use it.
=== modified file 'lisp/gnus/nnir.el'
--- a/lisp/gnus/nnir.el 2011-07-19 22:19:06 +0000
+++ b/lisp/gnus/nnir.el 2011-07-20 15:24:16 +0000
@@ -296,6 +296,9 @@
(nnoo-declare nnir)
(nnoo-define-basics nnir)
+(defvoo nnir-address nil
+ "The address of the nnir server.")
+
(gnus-declare-backend "nnir" 'mail)
@@ -582,18 +585,17 @@
;; Gnus glue.
-(defun gnus-group-make-nnir-group (nnir-extra-parms)
+(defun gnus-group-make-nnir-group (nnir-extra-parms &optional parms)
"Create an nnir group. Asks for query."
(interactive "P")
(setq nnir-current-query nil
nnir-current-server nil
nnir-current-group-marked nil
nnir-artlist nil)
- (let* ((query (read-string "Query: " nil 'nnir-search-history))
- (parms (list (cons 'query query)))
- (srv (if (gnus-server-server-name)
- "all" "")))
- (add-to-list 'parms (cons 'unique-id (message-unique-id)) t)
+ (let* ((query (unless parms (read-string "Query: " nil
'nnir-search-history)))
+ (parms (or parms (list (cons 'query query))))
+ (srv (or (cdr (assq 'server parms)) (gnus-server-server-name) "nnir")))
+ (add-to-list 'parms (cons 'unique-id (message-unique-id)) t)
(gnus-group-read-ephemeral-group
(concat "nnir:" (prin1-to-string parms)) (list 'nnir srv) t
(cons (current-buffer) gnus-current-window-configuration)
@@ -617,7 +619,7 @@
(equal server nnir-current-server)))
nnir-artlist
;; Cache miss.
- (setq nnir-artlist (nnir-run-query group server)))
+ (setq nnir-artlist (nnir-run-query group)))
(with-current-buffer nntp-server-buffer
(setq nnir-current-query group)
(when server (setq nnir-current-server server))
@@ -1594,14 +1596,13 @@
(autoload 'gnus-group-topic-name "gnus-topic")
-(defun nnir-run-query (query nserver)
+(defun nnir-run-query (query)
"Invoke appropriate search engine function (see `nnir-engines').
If some groups were process-marked, run the query for each of the groups
and concat the results."
(let ((q (car (read-from-string query)))
- (groups (if (string= "all-ephemeral" nserver)
- (with-current-buffer gnus-server-buffer
- (list (list (gnus-server-server-name))))
+ (groups (if (not (string= "nnir" nnir-address))
+ (list (list nnir-address))
(nnir-categorize
(or gnus-group-marked
(if (gnus-group-group-name)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r105294: nnir.el (gnus-group-make-nnir-group): Allow optional search query argument.,
Katsumi Yamaoka <=