]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-client.h
pass entire format structure to various show_message functions
[notmuch] / notmuch-client.h
index d530578ad9bd0dc8cfe2dc328c25dc86ac09efd2..57daa9a25ed0eacce4a188510c9172e9d239e2fc 100644 (file)
 #define STRINGIFY(s) STRINGIFY_(s)
 #define STRINGIFY_(s) #s
 
+typedef struct notmuch_show_format {
+    const char *message_set_start;
+    const char *message_start;
+    void (*message) (const void *ctx,
+                    notmuch_message_t *message,
+                    int indent);
+    const char *header_start;
+    void (*header) (const void *ctx,
+                   notmuch_message_t *message);
+    const char *header_end;
+    const char *body_start;
+    void (*part) (GMimeObject *part,
+                 int *part_count,
+                 int first);
+    void (*part_end) (GMimeObject *part);
+    const char *body_end;
+    const char *message_end;
+    const char *message_set_sep;
+    const char *message_set_end;
+} notmuch_show_format_t;
+
 /* There's no point in continuing when we've detected that we've done
  * something wrong internally (as opposed to the user passing in a
  * bogus value).
@@ -110,6 +131,9 @@ notmuch_tag_command (void *ctx, int argc, char *argv[]);
 int
 notmuch_search_tags_command (void *ctx, int argc, char *argv[]);
 
+int
+notmuch_cat_command (void *ctx, int argc, char *argv[]);
+
 int
 notmuch_part_command (void *ctx, int argc, char *argv[]);
 
@@ -130,7 +154,7 @@ query_string_from_args (void *ctx, int argc, char *argv[]);
 
 notmuch_status_t
 show_message_body (const char *filename,
-                  void (*show_part) (GMimeObject *part, int *part_count));
+                  const notmuch_show_format_t *format);
 
 notmuch_status_t
 show_one_part (const char *filename, int part);
@@ -194,6 +218,13 @@ notmuch_config_set_new_tags (notmuch_config_t *config,
                             const char *new_tags[],
                             size_t length);
 
+notmuch_bool_t
+notmuch_config_get_maildir_synchronize_flags (notmuch_config_t *config);
+
+void
+notmuch_config_set_maildir_synchronize_flags (notmuch_config_t *config,
+                                             notmuch_bool_t synchronize_flags);
+
 notmuch_bool_t
 debugger_is_active (void);