Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id BE45C431FC0 for ; Tue, 10 Dec 2013 00:57:40 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: 2.7 X-Spam-Level: ** X-Spam-Status: No, score=2.7 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=2.499, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RhZAuUCHICZ0 for ; Tue, 10 Dec 2013 00:57:35 -0800 (PST) Received: from mail-we0-f178.google.com (mail-we0-f178.google.com [74.125.82.178]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id 162F9431FAF for ; Tue, 10 Dec 2013 00:57:34 -0800 (PST) Received: by mail-we0-f178.google.com with SMTP id u57so4615678wes.37 for ; Tue, 10 Dec 2013 00:57:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=vMkLM6Ze7xlDrT7xgGqjx3A4iEdkypImRUijn/ifqAY=; b=K1P1yRF28ohFpWgEHfjThHmmYmhCG15DvtZ336pxvy0Syt0eFkJeQbwxFsOW3Fuuwz 28E60kk77hesaEPbw/WJShBbQ7GF4THAj4FJ2xTPqv0mcjEsJ76jD0QYPpNO82s/2/9Y Y18RNimW2BpN55QALf7QU9Vj8jRG0U180PD1GHvNWXUiH2VsxGyJNOY4ajr5eVwzaGYX N63yvYAe+WnSLkblRNOCyyjEY0vyxM7CT/c5n8JwLzMME+zYqZBuctA1nrrHKForQ3W3 L5DfA3KQUM87eKUGvtnkls8hALHPaZNSLg2+whAmPpbBZ1+pwcsWFqAC52NIICZeIJcZ n0iA== X-Received: by 10.180.182.198 with SMTP id eg6mr18015764wic.21.1386665851034; Tue, 10 Dec 2013 00:57:31 -0800 (PST) Received: from localhost (93-97-24-31.zone5.bethere.co.uk. [93.97.24.31]) by mx.google.com with ESMTPSA id x19sm3195061wia.5.2013.12.10.00.57.29 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 10 Dec 2013 00:57:30 -0800 (PST) From: Mark Walters To: notmuch@notmuchmail.org Subject: [PATCH WIP v4 0/3] emacs: show: redesign unread/read logic Date: Tue, 10 Dec 2013 08:57:24 +0000 Message-Id: <1386665847-6439-1-git-send-email-markwalters1009@gmail.com> X-Mailer: git-send-email 1.7.9.1 X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 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: Tue, 10 Dec 2013 08:57:40 -0000 This is v4 of this WIP set; v3 is at id:1386273871-24214-1-git-send-email-markwalters1009@gmail.com This is still WIP: in particular lots of tests fail (for the obvious reason that unread is being removed differently). I don't think it's worth updating them until we have some consensus on how this should work. The main change from v3 is to make the added/deleted tag handling cleaner, and to do something sensible on terminals (where strike-through is not available). The cleaner handling means it is easy for a user to revert to the current behaviour (deleted tags immediately disappear). However, it is much more general and fits neatly into the existing tag formatting framework. This is all done in patch 1/3. (The patch is much smaller than it looks: a large chunk of it is just code-movement). This patch is independent of the later one; it does still break the tests as the deleted "unread" tags are no longer removed just shown with strike-through or inverse-video. Patches 2 and 3 are unchanged from before. They implement the new unread handling as described in the previous thread. As with the earlier versions *all* feedback is gratefully received including "I HATE IT" (though reasons are nice!) Best wishes Mark Mark Walters (3): emacs: show: mark tags changed since buffer loaded emacs: show: add an update seen function to post-command-hook emacs: show: make `seen' mean user viewed whole message emacs/notmuch-show.el | 123 +++++++++++++++++++++++++++++++++++++++++-------- emacs/notmuch-tag.el | 105 ++++++++++++++++++++++++++++++------------ 2 files changed, 178 insertions(+), 50 deletions(-) -- 1.7.9.1