From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 6628 invoked from network); 4 Nov 2020 17:16:44 -0000 Received: from mx1.math.uh.edu (129.7.128.32) by inbox.vuxu.org with ESMTPUTF8; 4 Nov 2020 17:16:44 -0000 Received: from lists1.math.uh.edu ([129.7.128.208]) by mx1.math.uh.edu with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.94) (envelope-from ) id 1kaMNU-00DsKG-E2; Wed, 04 Nov 2020 11:15:20 -0600 Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by lists1.math.uh.edu with smtp (Exim 4.94) (envelope-from ) id 1kaMNT-008rhj-DN; Wed, 04 Nov 2020 11:15:19 -0600 Received: from mx1.math.uh.edu ([129.7.128.32]) by lists1.math.uh.edu with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.94) (envelope-from ) id 1kaMNO-008rfz-Re for ding@lists.math.uh.edu; Wed, 04 Nov 2020 11:15:14 -0600 Received: from quimby.gnus.org ([95.216.78.240]) by mx1.math.uh.edu with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.94) (envelope-from ) id 1kaMNN-00DsI5-5v for ding@lists.math.uh.edu; Wed, 04 Nov 2020 11:15:14 -0600 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:Subject:To:From: Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=znhu0fjD0/OAEVh8+zwd2wXrewluA/ia2UOEceezTCs=; b=NEXd9YMU9yv+2QIi9EMks3Li3/ lYCTIyhWJ7Hh0ZLIo2zsd1XNdHg2OdKW2lXKc1cyeJWUgTiTuZueNFdreyiiWLNYtZ2jniip75iWw t25SrWYzAhLayAF5NmQKuQmRZGUgrDGBOB1v8W9WXCOGopMvSBjBsn2y8SrMZkDCelf8=; Received: from ericabrahamsen.net ([52.70.2.18] helo=mail.ericabrahamsen.net) by quimby.gnus.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kaMNF-0007xG-1K for ding@gnus.org; Wed, 04 Nov 2020 18:15:08 +0100 Received: from localhost (c-73-254-86-141.hsd1.wa.comcast.net [73.254.86.141]) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id C68AAFA0B0 for ; Wed, 4 Nov 2020 17:15:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericabrahamsen.net; s=mail; t=1604510103; bh=znhu0fjD0/OAEVh8+zwd2wXrewluA/ia2UOEceezTCs=; h=From:To:Subject:Date:From; b=iALFvpb/lws+0eB4ra2g7/QojfFieogz/8KPMrkpDIrz8zWixeNFmw8rh9F6E0gvQ glnQGr/QY/zFvvS7D0BdsUxvxiAeryNQaBCQ4c6fadF2UHiYMEsYs4TGGC7YC3tMn5 M87HdHFjB9y3SVgXor3XfOlzD1JvYwSGlSCX3UxA= From: Eric Abrahamsen To: ding@gnus.org Subject: New "gnus-search" syntax and interface Date: Wed, 04 Nov 2020 09:15:00 -0800 Message-ID: <87blgdavsb.fsf@ericabrahamsen.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain List-ID: Precedence: bulk [Resending via ding as the newsgroup seems to be unresponsive] Hi all, For those of you on Emacs master, I just pushed the gnus-search.el library, which I've been sitting on for a while. It obsoletes nnir.el (while borrowing some of its code), and uses nnselect to display search results. Under default settings, it should do nothing at all, and searches should behave exactly as before. The nnir.el library has been moved to lisp/obsolete, so code that requires it should not break, but it is no longer needed. If anything breaks for anyone out of the box (though it shouldn't), please let me know right away! Past that, the fun stuff comes if you set `gnus-search-use-parsed-queries' to t. That will enable the "generalized query syntax", a single search syntax that can be used across any supported search engine. That means you can mark an imap group and a maildir group indexed by notmuch (for instance), and issue a single query against both. The query will be parsed and transformed into strings that the engines accept, and you'll get the expected results. It also opens the door to some nice conveniences. You can search by Gnus mark, for instance. Or issue relative date queries like "since:4d" for messages in the last four days (no need to remember the IMAP date format!). Or "limit:20" for just some results. If you use EBDB, I've already pushed a change so you can auto-complete contact names or email addresses on keys like "from" or "to" or "cc". I'll propose a similar addition to BBDB soon. The syntax is fully documented in the new "Search Queries" section of the Gnus manual, but basically it looks like this: (from:bob or from:jane) -to:sam since:2w subject:"sam's surprise party" Terms can be negated with a minus sign, as above, or with a preceding "not". Terms can be auto-completed with TAB, or you can leave them abbreviated so long as they're not ambiguous. So the query above could be: (f:bob or f:jane) -t:sam sin:2w su:"sam's surprise party" You can shut off the parsing and use the native syntax of whatever group you're searching on a per-engine, per-server, or per-search basis. See the manual for details. I hope this is a welcome addition! Eric