]> git.deb.at Git - pkg/abook.git/commitdiff
mutt-query (2/3): moved mutt full database querying to mutt_query_export_database...
authorRaphaël Droz <raphael.droz+floss@gmail.com>
Tue, 30 Aug 2011 13:31:31 +0000 (15:31 +0200)
committerRaphaël Droz <raphael.droz+floss@gmail.com>
Wed, 24 Oct 2012 16:23:51 +0000 (18:23 +0200)
abook.c
filter.c

diff --git a/abook.c b/abook.c
index 866d71db4f38f9367c6ecc56cd115c4ea9654775..4ef136c1f44082359a7516fd1f24ae5444de2aa5 100644 (file)
--- a/abook.c
+++ b/abook.c
@@ -452,10 +452,7 @@ mutt_query(char *str)
        init_mutt_query();
 
        if( str == NULL || !strcasecmp(str, "all") ) {
-               struct db_enumerator e = init_db_enumerator(ENUM_ALL);
-               printf("All items\n");
-               db_enumerate_items(e)
-                       muttq_print_item(stdout, e.item);
+               export_file("muttq", "-");
        } else {
                int search_fields[] = {NAME, EMAIL, NICK, -1};
                int i;
index ff4d116b1ac652afd816e41efe8ee6c93f9bb95d..96fa9c207e5b6d58788c8cda616a7f309c7f73f4 100644 (file)
--- a/filter.c
+++ b/filter.c
@@ -60,6 +60,7 @@ static int    allcsv_export_database(FILE *out, struct db_enumerator e);
 static int     palm_export_database(FILE *out, struct db_enumerator e);
 static int     vcard_export_database(FILE *out, struct db_enumerator e);
 static int     mutt_alias_export(FILE *out, struct db_enumerator e);
+static int     mutt_query_export_database(FILE *out, struct db_enumerator e);
 static int     elm_alias_export(FILE *out, struct db_enumerator e);
 static int     text_export_database(FILE *out, struct db_enumerator e);
 static int     spruce_export_database(FILE *out, struct db_enumerator e);
@@ -87,6 +88,7 @@ struct abook_output_filter e_filters[] = {
        { "ldif", N_("ldif / Netscape addressbook (.4ld)"), ldif_export_database },
        { "vcard", N_("vCard 2 file"), vcard_export_database },
        { "mutt", N_("mutt alias"), mutt_alias_export },
+       { "muttq", N_("mutt query format (internal use)"), mutt_query_export_database },
        { "html", N_("html document"), html_export_database },
        { "pine", N_("pine addressbook"), pine_export_database },
        { "csv", N_("comma separated values"), csv_export_database },
@@ -2056,6 +2058,15 @@ void muttq_print_item(FILE *file, int item)
        abook_list_free(&emails);
 }
 
+static int
+mutt_query_export_database(FILE *out, struct db_enumerator e)
+{
+  fprintf(out, "All items\n");
+  db_enumerate_items(e)
+    muttq_print_item(out, e.item);
+  return 0;
+}
+
 /*
  * end of mutt alias export filter
  */