aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Cohen2013-04-10 22:14:14 +0000
committerKatsumi Yamaoka2013-04-10 22:14:14 +0000
commit1ec75f95d7d05d529fb1f75abe741ff77de6f16b (patch)
tree79f5baf46c5a80bac6597cd803cc597986cc9276
parent7d9644924ee1db68bea74ec1fbb1e89af4612076 (diff)
downloademacs-1ec75f95d7d05d529fb1f75abe741ff77de6f16b.tar.gz
emacs-1ec75f95d7d05d529fb1f75abe741ff77de6f16b.zip
lisp/gnus/nnir.el: Small optimizations. Use 'gnus-group-guess-full-name-from-command-method
-rw-r--r--lisp/gnus/ChangeLog5
-rw-r--r--lisp/gnus/nnir.el31
2 files changed, 18 insertions, 18 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index b5390fe938f..58de51672e6 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -4,6 +4,11 @@
4 (nnir-request-set-mark): New function. 4 (nnir-request-set-mark): New function.
5 (nnir-request-update-info): Improve marks updating. 5 (nnir-request-update-info): Improve marks updating.
6 (nnir-request-scan): Don't duplicate marks updating. 6 (nnir-request-scan): Don't duplicate marks updating.
7 (gnus-group-make-nnir-group, nnir-run-imap, nnir-request-create-group):
8 Use 'assq rather than 'assoc. Quote anonymous function.
9 (nnir-request-group, nnir-close-group, gnus-summary-create-nnir-group):
10 Use 'gnus-group-prefixed-p.
11 (gnus-summary-create-nnir-group): Make sure server for method is open.
7 12
82013-04-04 Andrew Cohen <cohen@bu.edu> 132013-04-04 Andrew Cohen <cohen@bu.edu>
9 14
diff --git a/lisp/gnus/nnir.el b/lisp/gnus/nnir.el
index c6baa301c06..5744b1cd4b0 100644
--- a/lisp/gnus/nnir.el
+++ b/lisp/gnus/nnir.el
@@ -602,7 +602,7 @@ an alist with `nnir-query-spec' and `nnir-group-spec' keys, and
602skips all prompting." 602skips all prompting."
603 (interactive "P") 603 (interactive "P")
604 (let* ((group-spec 604 (let* ((group-spec
605 (or (cdr (assoc 'nnir-group-spec specs)) 605 (or (cdr (assq 'nnir-group-spec specs))
606 (if (gnus-server-server-name) 606 (if (gnus-server-server-name)
607 (list (list (gnus-server-server-name))) 607 (list (list (gnus-server-server-name)))
608 (nnir-categorize 608 (nnir-categorize
@@ -612,7 +612,7 @@ skips all prompting."
612 (cdr (assoc (gnus-group-topic-name) gnus-topic-alist)))) 612 (cdr (assoc (gnus-group-topic-name) gnus-topic-alist))))
613 gnus-group-server)))) 613 gnus-group-server))))
614 (query-spec 614 (query-spec
615 (or (cdr (assoc 'nnir-query-spec specs)) 615 (or (cdr (assq 'nnir-query-spec specs))
616 (apply 616 (apply
617 'append 617 'append
618 (list (cons 'query 618 (list (cons 'query
@@ -659,9 +659,7 @@ skips all prompting."
659 659
660(deffoo nnir-request-group (group &optional server dont-check info) 660(deffoo nnir-request-group (group &optional server dont-check info)
661 (nnir-possibly-change-group group server) 661 (nnir-possibly-change-group group server)
662 (let ((pgroup (if (gnus-group-prefixed-p group) 662 (let ((pgroup (gnus-group-guess-full-name-from-command-method group))
663 group
664 (gnus-group-prefixed-name group '(nnir "nnir"))))
665 length) 663 length)
666 ;; Check for cached search result or run the query and cache the 664 ;; Check for cached search result or run the query and cache the
667 ;; result. 665 ;; result.
@@ -893,9 +891,7 @@ skips all prompting."
893 891
894 892
895(deffoo nnir-close-group (group &optional server) 893(deffoo nnir-close-group (group &optional server)
896 (let ((pgroup (if (gnus-group-prefixed-p group) 894 (let ((pgroup (gnus-group-guess-full-name-from-command-method group)))
897 group
898 (gnus-group-prefixed-name group '(nnir "nnir")))))
899 (when (and nnir-artlist (not (gnus-ephemeral-group-p pgroup))) 895 (when (and nnir-artlist (not (gnus-ephemeral-group-p pgroup)))
900 (gnus-group-set-parameter pgroup 'nnir-artlist nnir-artlist)) 896 (gnus-group-set-parameter pgroup 'nnir-artlist nnir-artlist))
901 (setq nnir-artlist nil) 897 (setq nnir-artlist nil)
@@ -972,7 +968,7 @@ details on the language and supported extensions."
972 'vconcat 968 'vconcat
973 (catch 'found 969 (catch 'found
974 (mapcar 970 (mapcar
975 (lambda (group) 971 #'(lambda (group)
976 (let (artlist) 972 (let (artlist)
977 (condition-case () 973 (condition-case ()
978 (when (nnimap-possibly-change-group 974 (when (nnimap-possibly-change-group
@@ -1870,12 +1866,11 @@ article came from is also searched."
1870 1866
1871(defun gnus-summary-create-nnir-group () 1867(defun gnus-summary-create-nnir-group ()
1872 (interactive) 1868 (interactive)
1869 (or (nnir-server-opened "") (nnir-open-server "nnir"))
1873 (let ((name (gnus-read-group "Group name: ")) 1870 (let ((name (gnus-read-group "Group name: "))
1874 (method "nnir") 1871 (method '(nnir ""))
1875 (pgroup (if (gnus-group-prefixed-p gnus-newsgroup-name) 1872 (pgroup
1876 gnus-newsgroup-name 1873 (gnus-group-guess-full-name-from-command-method gnus-newsgroup-name)))
1877 (gnus-group-prefixed-name
1878 gnus-newsgroup-name '(nnir "nnir")))))
1879 (with-current-buffer gnus-group-buffer 1874 (with-current-buffer gnus-group-buffer
1880 (gnus-group-make-group 1875 (gnus-group-make-group
1881 name method nil 1876 name method nil
@@ -1885,20 +1880,20 @@ article came from is also searched."
1885(deffoo nnir-request-create-group (group &optional server args) 1880(deffoo nnir-request-create-group (group &optional server args)
1886 (message "Creating nnir group %s" group) 1881 (message "Creating nnir group %s" group)
1887 (let* ((group (gnus-group-prefixed-name group '(nnir "nnir"))) 1882 (let* ((group (gnus-group-prefixed-name group '(nnir "nnir")))
1888 (specs (assoc 'nnir-specs args)) 1883 (specs (assq 'nnir-specs args))
1889 (query-spec 1884 (query-spec
1890 (or (cdr (assoc 'nnir-query-spec specs)) 1885 (or (cdr (assq 'nnir-query-spec specs))
1891 (list (cons 'query 1886 (list (cons 'query
1892 (read-string "Query: " nil 'nnir-search-history))))) 1887 (read-string "Query: " nil 'nnir-search-history)))))
1893 (group-spec 1888 (group-spec
1894 (or (cdr (assoc 'nnir-group-spec specs)) 1889 (or (cdr (assq 'nnir-group-spec specs))
1895 (list (list (read-string "Server: " nil nil))))) 1890 (list (list (read-string "Server: " nil nil)))))
1896 (nnir-specs (list (cons 'nnir-query-spec query-spec) 1891 (nnir-specs (list (cons 'nnir-query-spec query-spec)
1897 (cons 'nnir-group-spec group-spec)))) 1892 (cons 'nnir-group-spec group-spec))))
1898 (gnus-group-set-parameter group 'nnir-specs nnir-specs) 1893 (gnus-group-set-parameter group 'nnir-specs nnir-specs)
1899 (gnus-group-set-parameter 1894 (gnus-group-set-parameter
1900 group 'nnir-artlist 1895 group 'nnir-artlist
1901 (or (cdr (assoc 'nnir-artlist args)) 1896 (or (cdr (assq 'nnir-artlist args))
1902 (nnir-run-query nnir-specs))) 1897 (nnir-run-query nnir-specs)))
1903 (nnir-request-update-info group (gnus-get-info group))) 1898 (nnir-request-update-info group (gnus-get-info group)))
1904 t) 1899 t)