From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id 408046DE025C for ; Sat, 9 Nov 2019 14:36:28 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: 0.403 X-Spam-Level: X-Spam-Status: No, score=0.403 tagged_above=-999 required=5 tests=[AWL=-0.249, SPF_NEUTRAL=0.652] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2FuUFXLv63rv for ; Sat, 9 Nov 2019 14:36:27 -0800 (PST) Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) by arlo.cworth.org (Postfix) with ESMTP id 83B696DE024C for ; Sat, 9 Nov 2019 14:36:27 -0800 (PST) Received: from guru.guru-group.fi (localhost [IPv6:::1]) by guru.guru-group.fi (Postfix) with ESMTP id 6D803100199 for ; Sun, 10 Nov 2019 00:36:25 +0200 (EET) From: Tomi Ollila To: notmuch@notmuchmail.org Subject: Re: [PATCH] Fix format_headers_sprinter to return all headers (v2) In-Reply-To: <20191109221358.4349-1-johan.parin@gmail.com> References: <20191109221358.4349-1-johan.parin@gmail.com> User-Agent: Notmuch/0.28.3+84~g41389bb (https://notmuchmail.org) Emacs/25.2.1 (x86_64-unknown-linux-gnu) X-Face: HhBM'cA~ MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Nov 2019 22:36:28 -0000 Subject line not updated On Sat, Nov 09 2019, Johan Parin wrote: > So this version only returns a fixed limited set of extra > headers. Hopefully this eliminates any concern for a performance > penalty. Of course it limits the usefulness of the > notmuch-message-headers variable. headers to request based on command line parameter (and default to current set) could be an option (kinda Jani already suggested). Quick (not perhaps well thought) one could be: --message-headers=To,Cc,X-Face and in the other mail -- mostly style comments (for future reference) On Sat, Nov 09 2019, Johan Parin wrote: > Modify format_headers_sprinter so that it returns some additional headers in the > sexp, instead of a small fixed set of headers. > > This version includes the following headers: > > - Maildir > - Mailing-list > - Tags > - Attachments > - Signature > - Decryption > - User-agent > - X-Mailer > > This is required in order for the elisp variable > `notmuch-message-headers' to work to some extent. > > See this bug report: > > https://notmuchmail.org/pipermail/notmuch/2017/026069.html > --- > notmuch-show.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > > diff --git a/notmuch-show.c b/notmuch-show.c > index 21792a57..86ddb491 100644 > --- a/notmuch-show.c > +++ b/notmuch-show.c > @@ -205,6 +205,12 @@ format_headers_sprinter (sprinter_t *sp, GMimeMessage *message, > char *recipients_string; > const char *reply_to_string; > void *local = talloc_new (sp); > + GMimeHeaderList *header_list; > + GMimeHeader *header; could be dropped here and had only in scope where it is used below... > + const char* interesting_headers[] = { > + "Maildir", "Mailing-list", "Tags", "Attachments", "Signature", > + "Decryption", "User-agent", "X-Mailer"}; > + const int interesting_header_count = sizeof(interesting_headers) / sizeof(char *); more "idiomatic" could be ... sizeof (interesting_headers) / sizeof (interesting_headers[0]); > sp->begin_map (sp); > > @@ -255,6 +261,19 @@ format_headers_sprinter (sprinter_t *sp, GMimeMessage *message, > sp->string (sp, g_mime_message_get_date_string (sp, message)); > } > > + header_list = g_mime_object_get_header_list (GMIME_OBJECT(message)); two (2) spaces, then no space after GMIME_OBJECT > + > + for (int i = 0; i < interesting_header_count; i++) { > + ... here GMimeHeader *header; is only used > + header = g_mime_header_list_get_header( > + header_list, interesting_headers[i]); > + if (header == NULL) > + continue; > + > + sp->map_key (sp, g_mime_header_get_name(header)); > + sp->string (sp, g_mime_header_get_value(header)); spaces before '(' > + } > + > sp->end (sp); > talloc_free (local); > } > -- > 2.21.0 (Apple Git-122) > > _______________________________________________ > notmuch mailing list > notmuch@notmuchmail.org > https://notmuchmail.org/mailman/listinfo/notmuch