[PATCH v3 5/6] setup: prompt user for search.exclude_tags value

Subject: [PATCH v3 5/6] setup: prompt user for search.exclude_tags value

Date: Mon, 23 Jan 2012 06:40:33 +0100

To: Austin Clements

Cc: Notmuch Mail

From: Pieter Praet


Allow users to customize the search.exclude_tags option during setup.

---

v2:
- less copy-paste coding... :)

v3: Austin's corrections [1]
- @ `print_tag_list':
  add space before paren.

- @ `notmuch_config_set_search_exclude_tags':
  remove \n between type cast and value.

[1] id:"20120123043435.GR16740@mit.edu"

 notmuch-setup.c |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/notmuch-setup.c b/notmuch-setup.c
index dcfa607..2941c52 100644
--- a/notmuch-setup.c
+++ b/notmuch-setup.c
@@ -133,6 +133,8 @@ notmuch_setup_command (unused (void *ctx),
     int is_new;
     const char **new_tags;
     size_t new_tags_len;
+    const char **search_exclude_tags;
+    size_t search_exclude_tags_len;
 
 #define prompt(format, ...)					\
     do {							\
@@ -208,6 +210,24 @@ notmuch_setup_command (unused (void *ctx),
 	g_ptr_array_free (tags, TRUE);
     }
 
+
+    search_exclude_tags = notmuch_config_get_search_exclude_tags (config, &search_exclude_tags_len);
+
+    printf ("Tags to exclude when searching messages (separated by spaces) [");
+    print_tag_list (search_exclude_tags, search_exclude_tags_len);
+    prompt ("]: ");
+
+    if (strlen (response)) {
+	GPtrArray *tags = parse_tag_list (ctx, response);
+
+	notmuch_config_set_search_exclude_tags (config,
+						(const char **) tags->pdata,
+						tags->len);
+
+	g_ptr_array_free (tags, TRUE);
+    }
+
+
     if (! notmuch_config_save (config)) {
 	if (is_new)
 	  welcome_message_post_setup ();
-- 
1.7.8.1


Thread: