From 2ab2748848f40dfd622261dc07645816ddf5055c Mon Sep 17 00:00:00 2001 From: Mark Walters Date: Fri, 5 Jul 2013 19:11:07 +0100 Subject: [PATCH] [PATCH 00/11] contrib: pick: keybindings --- da/3baf23f5750f53c82ea9b8fedba3ff1f14323c | 130 ++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 da/3baf23f5750f53c82ea9b8fedba3ff1f14323c diff --git a/da/3baf23f5750f53c82ea9b8fedba3ff1f14323c b/da/3baf23f5750f53c82ea9b8fedba3ff1f14323c new file mode 100644 index 000000000..cd1c72a2e --- /dev/null +++ b/da/3baf23f5750f53c82ea9b8fedba3ff1f14323c @@ -0,0 +1,130 @@ +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 DD2FF431FC3 + for ; Fri, 5 Jul 2013 11:11:34 -0700 (PDT) +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 nQ1q41pI1wGJ for ; + Fri, 5 Jul 2013 11:11:27 -0700 (PDT) +Received: from mail-ea0-f179.google.com (mail-ea0-f179.google.com + [209.85.215.179]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 1ABD0431FAE + for ; Fri, 5 Jul 2013 11:11:26 -0700 (PDT) +Received: by mail-ea0-f179.google.com with SMTP id b15so1653545eae.10 + for ; Fri, 05 Jul 2013 11:11:24 -0700 (PDT) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; + h=from:to:cc:subject:date:message-id:x-mailer; + bh=FGeebwwnnJzxm5/NZuazHwYMbIhxMhV2LFSgtPv7VzY=; + b=Yeiw5x0mT1jAtJ3U/ubpnWS3Gb6lMaYjr14dH+UfJC8dBBNnVLkKFnQvV0HjC5nyUX + AytRO2EPBibLv6syZGiEyaaHJ0+vEcKCejy03CaVL65p/HpjOLEdEbBbWzu1RhiNQypK + 6AI7XEkaCft92v0YJgtp6rUFEtjzRZNkJc0KLNavWB6wExkoJ8tc6BIxChoWEX12Q/3n + YsWnans4iVMlp9xC0+42ov+EU8enKTz3e3bkgyPzBF0xW7JJYXeQHdtvOT9mVCHQxkKW + jDrvc2Z9j0zVKUsec+yMuKLx+0uYeHOo1+dqfMHLhkuigSYKHPliJufMtXxjpj2l9zUs + UGhg== +X-Received: by 10.14.203.194 with SMTP id f42mr13612898eeo.53.1373047884516; + Fri, 05 Jul 2013 11:11:24 -0700 (PDT) +Received: from localhost (93-97-24-31.zone5.bethere.co.uk. [93.97.24.31]) + by mx.google.com with ESMTPSA id i2sm15993446eeu.4.2013.07.05.11.11.23 + for + (version=TLSv1.2 cipher=RC4-SHA bits=128/128); + Fri, 05 Jul 2013 11:11:24 -0700 (PDT) +From: Mark Walters +To: notmuch@notmuchmail.org +Subject: [PATCH 00/11] contrib: pick: keybindings +Date: Fri, 5 Jul 2013 19:11:07 +0100 +Message-Id: <1373047878-20822-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: Fri, 05 Jul 2013 18:11:35 -0000 + +This series adds lots of keybindings and funtionality to pick: in +particular it adds the stash keymap, the ability to tab between and +activate buttons in the message pane, and it reduces a lot of code +duplication between pick and show. + +It is a large series: but most of it is a lot of small changes. These +small changes are mostly logically independent but as they add +keybindings their contexts all clash. I have made most of the +keybindings as single separate patches to make discussion of them +individually easier. + +The key patches for review/discussion (apart from bike-shedding on +key-bindings!) are patches 1, 5 and 8. + +Patch 1 is the most "controversial": it over-rides +notmuch-show-get-prop so that whether it uses +notmuch-show-get-message-properties or +notmuch-pick-get-message-properties depends on the major-mode (ie +whether it is called from pick or show). + +This means that functions from show which just use message properties +(most often just the message id) "just work" when called from pick. In +particular it gives us access to lots of functions without having to +duplicate the code. + +In the longer term it would be better to have some show/pick common +file and migrate the common functions there. + +Patch 5 and 8 add in functions for creating fucntions ready to be used +in keybindings. The one in patch 5 takes a show fucntion and creates a +function which switches from pick to the message pane, applies the +function and then switches back to pick. The one in patch 8 takes a +function and creates a function which closes the message pane and the +calls this function. + +Both of these make the keybinding section clearer. They also have the +advantage that the user can use them easily to create their own +keybindings which do this. + +This completes all the keybindings I use and I think means that pick +doesn't have any glaring omissions. + +Finally, this will clash with the thread archive patches +id:1371195472-441-1-git-send-email-markwalters1009@gmail.com + +Best wishes + +Mark + +Mark Walters (11): + contrib: pick: override notmuch-show-get-prop + contrib: pick: Link in notmuch-show-pipe-message + contrib: pick: Link in attachment functions straight from + notmuch-show + contrib: pick: Link in stash map straight from notmuch-show + contrib: pick: add in to-message-window function + contrib: pick: add button press helper + contrib: pick: pass tab through to the message pane + contrib: pick: close window function + contrib: pick: make help close the message pane first + contrib: pick: add in binding to view raw message + contrib: pick: use close-message-pane for reply etc + + contrib/notmuch-pick/notmuch-pick.el | 139 +++++++++++++++++----------------- + 1 files changed, 70 insertions(+), 69 deletions(-) + +-- +1.7.9.1 + -- 2.26.2