mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-25 04:18:08 +01:00
show: Move format_message_mbox with the other new-style formats
Just code motion.
This commit is contained in:
parent
6a4df1b796
commit
8d01b0749c
1 changed files with 50 additions and 50 deletions
100
notmuch-show.c
100
notmuch-show.c
|
@ -220,56 +220,6 @@ _is_from_line (const char *line)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Print a message in "mboxrd" format as documented, for example,
|
|
||||||
* here:
|
|
||||||
*
|
|
||||||
* http://qmail.org/qmail-manual-html/man5/mbox.html
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
format_message_mbox (const void *ctx,
|
|
||||||
notmuch_message_t *message,
|
|
||||||
unused (int indent))
|
|
||||||
{
|
|
||||||
const char *filename;
|
|
||||||
FILE *file;
|
|
||||||
const char *from;
|
|
||||||
|
|
||||||
time_t date;
|
|
||||||
struct tm date_gmtime;
|
|
||||||
char date_asctime[26];
|
|
||||||
|
|
||||||
char *line = NULL;
|
|
||||||
size_t line_size;
|
|
||||||
ssize_t line_len;
|
|
||||||
|
|
||||||
filename = notmuch_message_get_filename (message);
|
|
||||||
file = fopen (filename, "r");
|
|
||||||
if (file == NULL) {
|
|
||||||
fprintf (stderr, "Failed to open %s: %s\n",
|
|
||||||
filename, strerror (errno));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
from = notmuch_message_get_header (message, "from");
|
|
||||||
from = _extract_email_address (ctx, from);
|
|
||||||
|
|
||||||
date = notmuch_message_get_date (message);
|
|
||||||
gmtime_r (&date, &date_gmtime);
|
|
||||||
asctime_r (&date_gmtime, date_asctime);
|
|
||||||
|
|
||||||
printf ("From %s %s", from, date_asctime);
|
|
||||||
|
|
||||||
while ((line_len = getline (&line, &line_size, file)) != -1 ) {
|
|
||||||
if (_is_from_line (line))
|
|
||||||
putchar ('>');
|
|
||||||
printf ("%s", line);
|
|
||||||
}
|
|
||||||
|
|
||||||
printf ("\n");
|
|
||||||
|
|
||||||
fclose (file);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
format_headers_message_part_text (GMimeMessage *message)
|
format_headers_message_part_text (GMimeMessage *message)
|
||||||
{
|
{
|
||||||
|
@ -764,6 +714,56 @@ format_part_json_entry (const void *ctx, mime_node_t *node, unused (int indent),
|
||||||
return NOTMUCH_STATUS_SUCCESS;
|
return NOTMUCH_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Print a message in "mboxrd" format as documented, for example,
|
||||||
|
* here:
|
||||||
|
*
|
||||||
|
* http://qmail.org/qmail-manual-html/man5/mbox.html
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
format_message_mbox (const void *ctx,
|
||||||
|
notmuch_message_t *message,
|
||||||
|
unused (int indent))
|
||||||
|
{
|
||||||
|
const char *filename;
|
||||||
|
FILE *file;
|
||||||
|
const char *from;
|
||||||
|
|
||||||
|
time_t date;
|
||||||
|
struct tm date_gmtime;
|
||||||
|
char date_asctime[26];
|
||||||
|
|
||||||
|
char *line = NULL;
|
||||||
|
size_t line_size;
|
||||||
|
ssize_t line_len;
|
||||||
|
|
||||||
|
filename = notmuch_message_get_filename (message);
|
||||||
|
file = fopen (filename, "r");
|
||||||
|
if (file == NULL) {
|
||||||
|
fprintf (stderr, "Failed to open %s: %s\n",
|
||||||
|
filename, strerror (errno));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
from = notmuch_message_get_header (message, "from");
|
||||||
|
from = _extract_email_address (ctx, from);
|
||||||
|
|
||||||
|
date = notmuch_message_get_date (message);
|
||||||
|
gmtime_r (&date, &date_gmtime);
|
||||||
|
asctime_r (&date_gmtime, date_asctime);
|
||||||
|
|
||||||
|
printf ("From %s %s", from, date_asctime);
|
||||||
|
|
||||||
|
while ((line_len = getline (&line, &line_size, file)) != -1 ) {
|
||||||
|
if (_is_from_line (line))
|
||||||
|
putchar ('>');
|
||||||
|
printf ("%s", line);
|
||||||
|
}
|
||||||
|
|
||||||
|
printf ("\n");
|
||||||
|
|
||||||
|
fclose (file);
|
||||||
|
}
|
||||||
|
|
||||||
static notmuch_status_t
|
static notmuch_status_t
|
||||||
show_message (void *ctx,
|
show_message (void *ctx,
|
||||||
const notmuch_show_format_t *format,
|
const notmuch_show_format_t *format,
|
||||||
|
|
Loading…
Reference in a new issue