From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/30887 Path: main.gmane.org!not-for-mail From: Pavel.Janik@inet.cz (Pavel =?iso-8859-2?q?Jan=EDk?= ml.) Newsgroups: gmane.emacs.gnus.general Subject: Labels/Annotations per message Date: Sat, 13 May 2000 14:20:28 +0200 Organization: Qbizm technologies, a.s., Kralovopolska 139, Brno, Czech Republic Sender: owner-ding@hpc.uh.edu Message-ID: NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Transfer-Encoding: 8bit X-Trace: main.gmane.org 1035167362 10900 80.91.224.250 (21 Oct 2002 02:29:22 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2002 02:29:22 +0000 (UTC) Return-Path: Original-Received: from lisa.math.uh.edu (lisa.math.uh.edu [129.7.128.49]) by mailhost.sclp.com (Postfix) with ESMTP id 9A515D051F for ; Sat, 13 May 2000 08:23:37 -0400 (EDT) Original-Received: from sina.hpc.uh.edu (lists@Sina.HPC.UH.EDU [129.7.3.5]) by lisa.math.uh.edu (8.9.1/8.9.1) with ESMTP id HAB14208; Sat, 13 May 2000 07:23:36 -0500 (CDT) Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Sat, 13 May 2000 07:23:01 -0500 (CDT) Original-Received: from mailhost.sclp.com (postfix@sclp3.sclp.com [204.252.123.139]) by sina.hpc.uh.edu (8.9.3/8.9.3) with ESMTP id HAA25839 for ; Sat, 13 May 2000 07:22:48 -0500 (CDT) Original-Received: from localgw.inet.cz (brno-l.router.inet.cz [62.229.34.226]) by mailhost.sclp.com (Postfix) with ESMTP id 80067D051F for ; Sat, 13 May 2000 08:23:08 -0400 (EDT) Original-Received: from SnowWhite.inet.cz (dialup1.inet.cz [62.229.34.209]) by localgw.inet.cz (8.9.0/8.9.0) with ESMTP id OAA24237 for ; Sat, 13 May 2000 14:31:35 +0200 Original-Received: (from pavel@localhost) by SnowWhite.inet.cz (8.8.7/8.8.7) id OAA02420; Sat, 13 May 2000 14:20:28 +0200 X-Authentication-Warning: SnowWhite.inet.cz: pavel set sender to Pavel.Janik@inet.cz using -f Original-To: GNUS mailing list X-Operating-System: Linux 2.3.99-pre5 on Intel, Linux 2.2.10 on SPARC X-Spam: No unsolicited e-mail. 500 dollars per message proof-reading for unsolicited e-mail. X-Not-Receiving-Mail-From: mrp.cz, hotmail.com, post.cz, email.cz, usa.net User-Agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/21.0.90 Original-Lines: 75 Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:30887 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:30887 Hi, I was thinking about the feature I wanted to have in Gnus. Very often, I need to comment (ie. associate the annotation) with my messages. Like "I should answer this", "This is worthy reading" and similar. I used to solve this via creating additional nnfolder groups like AnswerIt, ReadIt etc. But this is not universal. What if I'd like to answer/see only the messages from linux-kernel or read only interesting things from Gnus mailing list? I do not think that current Gnus can ease the work here. I remember that RMAIL has something like this. So I looked around in ding archive and found the discussion between Lars and Kai about labels. Some part of this is also in todo file: ,---- From Newest Features | * LMI> Well, nnbabyl could alter the group info to heed labels like | LMI> answered and read, I guess. | | It could also keep them updated (the same for the Status: header of | unix mbox files). | ... `---- I think that this will be worthy to have. As I use nnfolder to store all my mail, I use X-Annotations header to do that. My gnus-summary-line-format's value is "%U%R%z%I%(%[%4L: %-20,20f%]%) %uX%s\n" So I prepend the result of the function gnus-user-format-function-X before the actual subject of the message. The actual function looks like (sorry for my elisp ;-): (defun gnus-user-format-function-X (header) "My user-defined function for annotations" (let ((my-extra-headers (mail-header-extra gnus-tmp-header))) (while (and my-extra-headers (not (eq (car (car my-extra-headers)) 'X-Annotations))) (setq my-extra-headers (cdr my-extra-headers))) (setq my-extra-headers (cdr (car my-extra-headers))) (if my-extra-headers (concat "{" my-extra-headers "} ") ""))) And I have X-Annotations in *-extra-headers: (setq gnus-extra-headers '(To Cc X-Annotations)) (setq nnmail-extra-headers gnus-extra-headers) So when I receive a message with X-Annotations or I add this header via `e' to the message in the summary buffer, it is displayed with that annotation prepended before subject. This is sufficient for me, cause I use nnfolder only. But this is not generic. You can not annotate nntp articles this way etc. So I also thought about the Real Solution (tm). We should probably invent another type of mark, which is associated with annotations. It can be stored in .newsrc.eld or somewhere else? gnus-newsrc-alist in .newsrc.eld looks like this now: ("Gnus" 3 ((1 . 1748)) ((dormant 1015 (1153 . 1154)) (expire (1735 . 1748)) (reply 1466 1557 1637) (tick 1734))) What about inventing new mark annotate like this: ("Gnus" 3 ((1 . 1748)) ((annotate (1 "This is the first message in the buffer.") (1748 "I just received this message.")))) The first message is marked as such and the last one too. If this is implemented, you can easily limit the summary buffer to the regexp of these annotations and similar. What do you think about it? I think it is worthy to discuss it here and when we will have the specification, someone with sufficient elisp knowledge can implement it :-) -- Pavel Janík ml. Pavel.Janik@inet.cz