Mercurial > emacs
view lisp/gnus/nnregistry.el @ 112325:36329d05ddec
Merge from mainline.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Thu, 13 Jan 2011 16:33:24 -0800 |
parents | 7aa4fdb60d57 |
children | b1eac6d41a93 |
line wrap: on
line source
;;; nnregistry.el --- access to articles via Gnus' message-id registry ;;; -*- coding: utf-8 -*- ;; Copyright (C) 2010 Free Software Foundation, Inc. ;; Authors: Ludovic Courtès <ludo@gnu.org> ;; Keywords: news, mail ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. ;;; Commentary: ;; This file provides the `nnregistry' Gnus back-end. It can be used ;; in `gnus-refer-article-method' to quickly search for a message by ;; id, regardless of the back-end that stores it. See the Gnus manual ;; for usage examples and more information. ;;; Code: (require 'nnoo) (require 'gnus-registry) (require 'gnus-int) (nnoo-declare nnregistry) (deffoo nnregistry-server-opened (server) (eq gnus-registry-install t)) (deffoo nnregistry-close-server (server) t) (deffoo nnregistry-status-message (server) nil) (deffoo nnregistry-open-server (server &optional defs) (eq gnus-registry-install t)) (defvar nnregistry-within-nnregistry nil) (deffoo nnregistry-request-article (id &optional group server buffer) (and (not nnregistry-within-nnregistry) (let* ((nnregistry-within-nnregistry t) (group (gnus-registry-fetch-group id)) (gnus-override-method nil)) (message "nnregistry: requesting article `%s' in group `%s'" id group) (and group (gnus-check-group group) (gnus-request-article id group buffer))))) (provide 'nnregistry) ;;; nnregistry.el ends here