From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/82878 Path: news.gmane.org!not-for-mail From: Dave Abrahams Newsgroups: gmane.emacs.gnus.general Subject: Re: What is a "virtual" group? Date: Thu, 31 Jan 2013 19:18:09 +0100 Message-ID: References: <87obl6ck1p.fsf@dod.no> <87vcbqs4fo.fsf@gnus.org> <878v8lvpp3.fsf@gnus.org> <87mwx1rgq1.fsf@gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1359656322 20964 80.91.229.3 (31 Jan 2013 18:18:42 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 31 Jan 2013 18:18:42 +0000 (UTC) Cc: ding@gnus.org To: Lars Ingebrigtsen Original-X-From: ding-owner+M31144@lists.math.uh.edu Thu Jan 31 19:19:02 2013 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1U0yiy-0002Pe-PP for ding-account@gmane.org; Thu, 31 Jan 2013 19:19:01 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1U0yib-0000Nr-7P; Thu, 31 Jan 2013 12:18:37 -0600 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1U0yia-0000Ng-16 for ding@lists.math.uh.edu; Thu, 31 Jan 2013 12:18:36 -0600 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1U0yiY-0002Fx-2n for ding@lists.math.uh.edu; Thu, 31 Jan 2013 12:18:35 -0600 Original-Received: from mail-ye0-f178.google.com ([209.85.213.178]) by quimby.gnus.org with esmtp (Exim 4.72) (envelope-from ) id 1U0yiW-00018Y-5M for ding@gnus.org; Thu, 31 Jan 2013 19:18:32 +0100 Original-Received: by mail-ye0-f178.google.com with SMTP id j12so679062yeg.23 for ; Thu, 31 Jan 2013 10:18:26 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-type:x-gm-message-state; bh=tFcvM71VSLC7OoIPqE5Fnr7+ser9xj3pyM0hMp7OrII=; b=QXXBOQ6Ss7FLD3VQ1kOr2U53x1179f/7T50SkBZEXZNFErUZTEV/fC7thdim0AH7aC FIegETvazk8nvGVuuchF//Eh54TMBQyqYsBwgaTAP9MTMJUZUCijbIfkPXyEp1HS4XvS VhknmUbQ+6+CUWNBbTI0Al6ZboXwFZL1ADlE7hv+1lWwHYeF0IRAF92iKJdv/ljxsBVe hz8UY6mAk4IY0Y5DnQ+sSy/fHi+fa+F8hSnZfgU7tcE+NXvedvmgXgGoTd8fFexWYZ43 h4OxjSF+rFTctxeb1sK9+YthKb/ffRVYFoGHbzoBc9lqYiY++4OK5IalfsGA7kAde01Y ycIA== X-Received: by 10.101.137.31 with SMTP id p31mr3171740ann.84.1359656305783; Thu, 31 Jan 2013 10:18:25 -0800 (PST) Original-Received: from pluto.boostpro.com ([88.128.80.7]) by mx.google.com with ESMTPS id x16sm9099856yhj.6.2013.01.31.10.18.23 (version=TLSv1 cipher=RC4-SHA bits=128/128); Thu, 31 Jan 2013 10:18:25 -0800 (PST) Original-Received: by pluto.boostpro.com (Postfix, from userid 501) id EA415121CD9C; Thu, 31 Jan 2013 19:18:09 +0100 (CET) In-Reply-To: (Dave Abrahams's message of "Tue, 25 Dec 2012 16:32:40 -0500") User-Agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.2 (darwin) X-Gm-Message-State: ALoCoQmL8jO0ncwiKLIZNFtNQXPALgc4N2YfjwJjeyxrqhsBKi0ROFumugVbmFmgjKl5QJf6mWYH X-Spam-Score: -2.9 (--) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:82878 Archived-At: on Tue Dec 25 2012, Dave Abrahams wrote: >>>>> * Does the check for virtual-ness in gnus-warp-to-article actually >>>>> belong there? After all, real groups shouldn't implement the >>>>> warp-to-article backend function, should they? >>>> >>>> I don't know. >>> >>> Would you be open to a patch that removes the check? >> >> I'm not familiar with that code. > > Sorry, I don't know how to interpret your answer. Bump on this. I get a sense the length of the message may have put you off. I'll try to make this super-simple for you: * I would like to remove the check for virtual-ness in gnus-warp-to-article. * I believe that removal to be OK. I'll test it here, of course, and I'm a daily user of warping. * If I don't find any problems with it, would that be enough to convince you that the change is OK and to accept the patch? * If not, what would it take to convince you to accept the patch? All I really need from you is answers to the last two bullets above The rest of what's below is background, designed to convince you it might be worth taking a risk on such a change to get a really cool feature, but you can ignore it if you're too busy. > I am trying to figure out how to contribute a really cool (and for me, > essential) piece of functionality to Gnus: the ability to, given a > message-id, find and display the message in the context of the entire > thread in which that message participates, even across groups. Of > course I'm presuming you think that's worth having in Gnus, but I could > be wrong. If so, just tell me and I'll stop pestering you. > > I have implemented something that works, but currently requires making > nndoc groups virtual or disabling that check. You've already said that > making nndoc groups virtual is inappropriate. If disabling the check is > appropriate, that would solve the problem easily. > > The other possible approach would be to discover a way to implement the > following function using some kind of virtual group (instead of nndoc). > I think that's probably the best approach but I have tried myself many > times and failed, and I have asked here many times for guidance without > success... so I eventually gave up. > > #+begin_src lisp > (defun gnus-goto-article (message-id) > (with-temp-buffer > (erase-buffer) > ;; Insert dummy article > (insert (format "From nobody Tue Sep 13 22:05:34 2011\n\n")) > (gnus-group-read-ephemeral-group > message-id > `(nndoc ,message-id > (nndoc-address ,(current-buffer)) > (nndoc-article-type mbox)) > :activate > (cons (current-buffer) gnus-current-window-configuration) > (not :request-only) > '(-1) ; :select-articles > (not :parameters) > 0 ; :number > ) > (gnus-summary-refer-article message-id) > )) > #+end_src -- Dave Abrahams BoostPro Computing Software Development Training http://www.boostpro.com Clang/LLVM/EDG Compilers C++ Boost