Re: [PATCH v4 10/16] Add n_d_add_message_with_indexopts (extension of n_d_add_message)
[notmuch-archives.git] / 94 / 3065910eb81e974cf427bdbf8cacfd087cce35
1 Return-Path: <jani@nikula.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 arlo.cworth.org (Postfix) with ESMTP id 7FF0B6DE0924\r
6  for <notmuch@notmuchmail.org>; Sat, 26 Sep 2015 04:38:14 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at cworth.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -0.534\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-0.534 tagged_above=-999 required=5 tests=[AWL=0.186,\r
12   RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01]\r
13  autolearn=disabled\r
14 Received: from arlo.cworth.org ([127.0.0.1])\r
15  by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024)\r
16  with ESMTP id uBdwAqYV6tDG for <notmuch@notmuchmail.org>;\r
17  Sat, 26 Sep 2015 04:38:12 -0700 (PDT)\r
18 Received: from mail-wi0-f180.google.com (mail-wi0-f180.google.com\r
19  [209.85.212.180])\r
20  by arlo.cworth.org (Postfix) with ESMTPS id 3B39D6DE02D2\r
21  for <notmuch@notmuchmail.org>; Sat, 26 Sep 2015 04:38:12 -0700 (PDT)\r
22 Received: by wicfx3 with SMTP id fx3so50812622wic.1\r
23  for <notmuch@notmuchmail.org>; Sat, 26 Sep 2015 04:38:10 -0700 (PDT)\r
24 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;\r
25  d=1e100.net; s=20130820;\r
26  h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\r
27  :references;\r
28  bh=Y1NJQTCp50DkvqMDMIm54UoMzsqVyIsTPOsOBiooBxE=;\r
29  b=mo6w39bf4qWkQEPn2aYod9SOhma2NGn5h2C1llG6U+AOI1hzN5uhKawBvc6plD9cLP\r
30  FLLWrdcBa0fXP9tMebKZ7PHTSLXgTRrmHDzXEfNqhqlTfKDFM8ayQhWaWyvq12z48ktz\r
31  +ulun7hG7qKQyLupUzBW5G5v4YoW1O4VJs7z+x1g2MnHjvClxg8HkOFhEC5gbMj/2aY3\r
32  0iXMfIMMAunFVzlRYnv+LGz1x8JQwssqg4oqDRz6sK3d8dgcrXihRAr+L5JlfJOFajXX\r
33  H5bUkBcWBMRd7NdyTRMVv9pE4WdnFblYxq07VxhLONGUymAd1QbtymTR2qSzDO+RXasi\r
34  wNSA==\r
35 X-Gm-Message-State:\r
36  ALoCoQkUbfsh5tIHAsD60nwNvdz2OFhwXTLtQir4hdojVjJTVg5f/StS1dCPwIv8pITUY5ogAH9E\r
37 X-Received: by 10.180.12.145 with SMTP id y17mr8678987wib.83.1443267490661;\r
38  Sat, 26 Sep 2015 04:38:10 -0700 (PDT)\r
39 Received: from localhost (mobile-access-bcee63-221.dhcp.inet.fi.\r
40  [188.238.99.221])\r
41  by smtp.gmail.com with ESMTPSA id ew2sm7903504wic.20.2015.09.26.04.38.09\r
42  (version=TLSv1/SSLv3 cipher=OTHER);\r
43  Sat, 26 Sep 2015 04:38:09 -0700 (PDT)\r
44 From: Jani Nikula <jani@nikula.org>\r
45 To: Tomi Ollila <tomi.ollila@iki.fi>,\r
46         "W. Trevor King" <wking@tremily.us>\r
47 Subject: [PATCH v2] nmbug-status: add support for specifying sort order for\r
48  each view\r
49 Date: Sat, 26 Sep 2015 14:37:51 +0300\r
50 Message-Id: <1443267471-11829-1-git-send-email-jani@nikula.org>\r
51 X-Mailer: git-send-email 2.1.4\r
52 In-Reply-To: <m2r3rx9p9y.fsf@guru.guru-group.fi>\r
53 References: <m2r3rx9p9y.fsf@guru.guru-group.fi>\r
54 Cc: notmuch@notmuchmail.org\r
55 X-BeenThere: notmuch@notmuchmail.org\r
56 X-Mailman-Version: 2.1.18\r
57 Precedence: list\r
58 List-Id: "Use and development of the notmuch mail system."\r
59  <notmuch.notmuchmail.org>\r
60 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
61  <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
62 List-Archive: <http://notmuchmail.org/pipermail/notmuch/>\r
63 List-Post: <mailto:notmuch@notmuchmail.org>\r
64 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
65 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
66  <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
67 X-List-Received-Date: Sat, 26 Sep 2015 11:38:14 -0000\r
68 \r
69 Let each view have a "sort" key, typically used with values\r
70 "oldest-first" or "newest-first" (although all values in Query.SORT\r
71 are accepted), and sort the results accordingly. Oldest first remains\r
72 the default.\r
73 \r
74 The dynamic approach of mapping sort values is as suggested by\r
75 W. Trevor King <wking@tremily.us>.\r
76 ---\r
77  devel/nmbug/nmbug-status | 11 ++++++++++-\r
78  1 file changed, 10 insertions(+), 1 deletion(-)\r
79 \r
80 diff --git a/devel/nmbug/nmbug-status b/devel/nmbug/nmbug-status\r
81 index e845c2a5c8f7..a289798e3cc1 100755\r
82 --- a/devel/nmbug/nmbug-status\r
83 +++ b/devel/nmbug/nmbug-status\r
84 @@ -156,11 +156,20 @@ class Page (object):\r
85              stream.write(self.footer)\r
86  \r
87      def _write_view(self, database, view, stream):\r
88 +        # sort order, default to oldest-first\r
89 +        sort_key = view.get('sort', 'oldest-first')\r
90 +        # dynamically accept all values in Query.SORT\r
91 +        sort_attribute = sort_key.upper().replace('-', '_')\r
92 +        try:\r
93 +            sort = getattr(notmuch.Query.SORT, sort_attribute)\r
94 +        except AttributeError:\r
95 +            raise ConfigError('Invalid sort setting for {}: {!r}'.format(\r
96 +                view['title'], sort_key))\r
97          if 'query-string' not in view:\r
98              query = view['query']\r
99              view['query-string'] = ' and '.join(query)\r
100          q = notmuch.Query(database, view['query-string'])\r
101 -        q.set_sort(notmuch.Query.SORT.OLDEST_FIRST)\r
102 +        q.set_sort(sort)\r
103          threads = self._get_threads(messages=q.search_messages())\r
104          self._write_view_header(view=view, stream=stream)\r
105          self._write_threads(threads=threads, stream=stream)\r
106 -- \r
107 2.1.4\r
108 \r