X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-client.h;h=63be33741a212ac2ed03434418373c1481faff76;hp=eca99906da532702dc653e9f580abe9a8ebb5029;hb=59b251ef940609dac7e17528065a39544463e0b4;hpb=3a9c3ec9e719f0e5adefe0ceafffeb34c7a3917e diff --git a/notmuch-client.h b/notmuch-client.h index eca99906..63be3374 100644 --- a/notmuch-client.h +++ b/notmuch-client.h @@ -51,6 +51,41 @@ #define unused(x) x __attribute__ ((unused)) +#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_start) (GMimeObject *part, + int *part_count); + void (*part_encstatus) (int status); + void (*part_sigstatus) (const GMimeSignatureValidity* validity); + void (*part_content) (GMimeObject *part); + void (*part_end) (GMimeObject *part); + const char *part_sep; + const char *body_end; + const char *message_end; + const char *message_set_sep; + const char *message_set_end; +} notmuch_show_format_t; + +typedef struct notmuch_show_params { + int entire_thread; + int raw; + int part; + GMimeCipherContext* cryptoctx; + int decrypt; +} notmuch_show_params_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). @@ -70,20 +105,6 @@ #define STRNCMP_LITERAL(var, literal) \ strncmp ((var), (literal), sizeof (literal) - 1) -typedef void (*add_files_callback_t) (notmuch_message_t *message); - -typedef struct { - int output_is_a_tty; - int verbose; - - int total_files; - int processed_files; - int added_messages; - struct timeval tv_start; - - add_files_callback_t callback; -} add_files_state_t; - static inline void chomp_newline (char *str) { @@ -121,6 +142,12 @@ 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_config_command (void *ctx, int argc, char *argv[]); + const char * notmuch_time_relative_date (const void *ctx, time_t then); @@ -130,16 +157,22 @@ notmuch_time_print_formatted_seconds (double seconds); double notmuch_time_elapsed (struct timeval start, struct timeval end); -notmuch_status_t -add_files (notmuch_database_t *notmuch, const char *path, - add_files_state_t *state); - char * 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_show_params_t *params); + +notmuch_status_t +show_one_part (const char *filename, int part); + +char * +json_quote_chararray (const void *ctx, const char *str, const size_t len); + +char * +json_quote_str (const void *ctx, const char *str); /* notmuch-config.c */ @@ -177,7 +210,7 @@ void notmuch_config_set_user_primary_email (notmuch_config_t *config, const char *primary_email); -char ** +const char ** notmuch_config_get_user_other_email (notmuch_config_t *config, size_t *length); @@ -186,6 +219,21 @@ notmuch_config_set_user_other_email (notmuch_config_t *config, const char *other_email[], size_t length); +const char ** +notmuch_config_get_new_tags (notmuch_config_t *config, + size_t *length); +void +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);