Re: [PATCH] emacs: wash: make word-wrap bound message width
[notmuch-archives.git] / 5c / d753278663d1fa82471029ea9480fbd739bcc8
1 Return-Path: <BATV+bbc4756b788e67be553a+2433+infradead.org+hohndel@bombadil.srs.infradead.org>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 101704196F2\r
6         for <notmuch@notmuchmail.org>; Wed, 21 Apr 2010 17:20:44 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -4.2\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5\r
12         tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] autolearn=ham\r
13 Received: from olra.theworths.org ([127.0.0.1])\r
14         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
15         with ESMTP id CkPJHyzbgMx3 for <notmuch@notmuchmail.org>;\r
16         Wed, 21 Apr 2010 17:20:42 -0700 (PDT)\r
17 Received: from bombadil.infradead.org (bombadil.infradead.org [18.85.46.34])\r
18         by olra.theworths.org (Postfix) with ESMTP id C03DB431FC1\r
19         for <notmuch@notmuchmail.org>; Wed, 21 Apr 2010 17:20:42 -0700 (PDT)\r
20 Received: from localhost ([::1] helo=x200.gr8dns.org)\r
21         by bombadil.infradead.org with esmtp (Exim 4.69 #1 (Red Hat Linux))\r
22         id 1O4k9q-0003Fl-7g; Thu, 22 Apr 2010 00:20:42 +0000\r
23 Received: by x200.gr8dns.org (Postfix, from userid 500)\r
24         id 94549C0212; Wed, 21 Apr 2010 17:20:41 -0700 (PDT)\r
25 From: Dirk Hohndel <hohndel@infradead.org>\r
26 To: Jameson Rollins <jrollins@finestructure.net>, notmuch@notmuchmail.org\r
27 Subject: Re: [PATCH] Add 'd'elete keybinding to search and show views\r
28 In-Reply-To: <87y6ggmlew.fsf@servo.finestructure.net>\r
29 References: <1271891763-10757-1-git-send-email-hohndel@infradead.org>\r
30         <1271891763-10757-2-git-send-email-hohndel@infradead.org>\r
31         <87y6ggmlew.fsf@servo.finestructure.net>\r
32 Date: Wed, 21 Apr 2010 17:20:41 -0700\r
33 Message-ID: <m3fx2oz6au.fsf@x200.gr8dns.org>\r
34 User-Agent: notmuch 0.2-52-ga28d2fe (Emacs 23.1.1/i386-redhat-linux-gnu)\r
35 MIME-Version: 1.0\r
36 Content-Type: text/plain; charset=us-ascii\r
37 X-SRS-Rewrite: SMTP reverse-path rewritten from <hohndel@infradead.org> by\r
38         bombadil.infradead.org See http://www.infradead.org/rpr.html\r
39 X-BeenThere: notmuch@notmuchmail.org\r
40 X-Mailman-Version: 2.1.13\r
41 Precedence: list\r
42 List-Id: "Use and development of the notmuch mail system."\r
43         <notmuch.notmuchmail.org>\r
44 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
45         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
46 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
47 List-Post: <mailto:notmuch@notmuchmail.org>\r
48 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
49 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
50         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
51 X-List-Received-Date: Thu, 22 Apr 2010 00:20:44 -0000\r
52 \r
53 On Wed, 21 Apr 2010 19:32:39 -0400, Jameson Rollins <jrollins@finestructure.net> wrote:\r
54 > On Wed, 21 Apr 2010 16:16:02 -0700, Dirk Hohndel <hohndel@infradead.org> wrote:\r
55 > > Straight forward addition to the Emacs UI. The 'd' keybinding\r
56 > > is implemented very similar to the 'a' keybinding - it only\r
57 > > adds a +deleted tag as well. This tag is used by notmuchsync\r
58 > > to delete (-p "prune") files in the mailstore.\r
59 > > \r
60 > > I'm sending this mostly as an RFC - I use this and like it, but\r
61 > > people seem to have strong feelings as to how they want to deal \r
62 > > with deleting email (or for some people, how they don't want to\r
63 > > do that at all).\r
64\r
65 > Hey, Dirk.  I'm definitely on board with this idea, and have in fact\r
66 > been doing exactly the same thing with my personal customizations as you\r
67 > propose (including using the 'd' key).\r
68 \r
69 Great. \r
70  \r
71 > I only have a couple of nit-picky comments about your proposed\r
72 > implementation:\r
73 \r
74 That's why I sent this out...\r
75  \r
76 > On Wed, 21 Apr 2010 16:16:03 -0700, Dirk Hohndel <hohndel@infradead.org> wrote:\r
77 > > -(defun notmuch-show-archive-thread-internal (show-next)\r
78 > > +(defun notmuch-show-archive-or-delete-thread-internal (show-next delete)\r
79 > >    ;; Remove the tag from the current set of messages.\r
80 > >    (goto-char (point-min))\r
81 > > -  (loop do (notmuch-show-remove-tag "inbox")\r
82 > > +  (loop do (progn\r
83 > > +        (notmuch-show-remove-tag "inbox")\r
84 > > +        (if delete\r
85 > > +            (notmuch-show-add-tag "deleted")))\r
86 > >     until (not (notmuch-show-goto-message-next)))\r
87 > >    ;; Move to the next item in the search results, if any.\r
88 > >    (let ((parent-buffer notmuch-show-parent-buffer))\r
89 > > @@ -925,6 +929,20 @@ to stdout or stderr will appear in the *Messages* buffer."\r
90 > >       (if show-next\r
91 > >           (notmuch-search-show-thread))))))\r
92\r
93 > I'm not sure I like the idea of piggybacking on the\r
94 > notmuch-show-archive-thread-internal function.  Why not just make a new\r
95 > separate notmuch-show-delete-thread-internal function?  I think it makes\r
96 > the code clearer and easier to parse for the calls to these functions\r
97 > (otherwise it's a little unclear what "t t" and "nil nil" and so on\r
98 > mean).\r
99 \r
100 It's the C programmer in me who hates code duplication. This way, if the\r
101 algorithm for walking the mails in the thread changes, you only fix it\r
102 once. But I see your point about weird options... in C I'd have\r
103 constants named THREAD_DELETE and THREAD_ARCHIVE_ONLY that I'd pass\r
104 around...\r
105 \r
106\r
107 > > +(defun notmuch-search-delete-thread ()\r
108 > > +  "Delete the currently selected thread (remove its \"inbox\" tag and add \"deleted\" tag).\r
109 > > +\r
110 > > +This function advances the next thread when finished."\r
111 > > +  (interactive)\r
112 > > +  (notmuch-search-remove-tag-thread "inbox")\r
113 > > +  (notmuch-search-add-tag-thread "deleted")\r
114 > > +  (forward-line))\r
115\r
116 > I'm also not a fan of these functions (notmuch-search-delete-thread and\r
117 > notmuch-show-delete-thread) removing the "inbox" tag.  Just because I\r
118 > want to mark a messages as deleted doesn't mean that I want to archive\r
119 > it.  I would really like to keep these concepts distinct if possible.\r
120 \r
121 Well, that would take away a big reason for adding this -\r
122 convenience. In the end it's user experience design. The question is\r
123 (based on expected behavior) - do you expect a deleted email to stay\r
124 visible in your inbox. I don't - and I know that many people do.\r
125 \r
126 So while I agree with the other conclusion in the thread that "deleted"\r
127 as tag for deleted messages doesn't have to be configurable - maybe this\r
128 feature wants to be configurable.\r
129 \r
130 notmuch-archive-deleted or something like that\r
131 \r
132 /D\r
133 \r
134 -- \r
135 Dirk Hohndel\r
136 Intel Open Source Technology Center\r