mirror of https://github.com/djcb/mu.git
* some small fixes for passing 'make cc10' and 'make line35'
This commit is contained in:
parent
ecee4831ef
commit
e2a0fc31cf
|
@ -53,8 +53,7 @@ static gboolean output_sexp (MuMsgIter *iter, gboolean threads,
|
||||||
static gboolean output_xml (MuMsgIter *iter,gboolean include_unreadable,
|
static gboolean output_xml (MuMsgIter *iter,gboolean include_unreadable,
|
||||||
GError **err);
|
GError **err);
|
||||||
static gboolean output_plain (MuMsgIter *iter, const char *fields,
|
static gboolean output_plain (MuMsgIter *iter, const char *fields,
|
||||||
gboolean summary, int summary_len,
|
int summary_len, gboolean threads,
|
||||||
gboolean threads,
|
|
||||||
gboolean color, gboolean include_unreadable,
|
gboolean color, gboolean include_unreadable,
|
||||||
GError **err);
|
GError **err);
|
||||||
|
|
||||||
|
@ -101,7 +100,7 @@ output_query_results (MuMsgIter *iter, MuConfig *opts, GError **err)
|
||||||
return output_links (iter, opts->linksdir, opts->clearlinks, err);
|
return output_links (iter, opts->linksdir, opts->clearlinks, err);
|
||||||
case MU_CONFIG_FORMAT_PLAIN:
|
case MU_CONFIG_FORMAT_PLAIN:
|
||||||
return output_plain (iter, opts->fields,
|
return output_plain (iter, opts->fields,
|
||||||
opts->summary, opts->summary_len,
|
opts->summary ? opts->summary_len : 0,
|
||||||
opts->threads, !opts->nocolor,
|
opts->threads, !opts->nocolor,
|
||||||
opts->include_unreadable, err);
|
opts->include_unreadable, err);
|
||||||
case MU_CONFIG_FORMAT_XML:
|
case MU_CONFIG_FORMAT_XML:
|
||||||
|
@ -649,9 +648,8 @@ output_plain_fields (MuMsg *msg, const char *fields,
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
output_plain (MuMsgIter *iter, const char *fields, gboolean summary, int summary_len,
|
output_plain (MuMsgIter *iter, const char *fields, int summary_len,
|
||||||
gboolean threads, gboolean color, gboolean include_unreadable,
|
gboolean threads, gboolean color, gboolean include_unreadable, GError **err)
|
||||||
GError **err)
|
|
||||||
{
|
{
|
||||||
MuMsgIter *myiter;
|
MuMsgIter *myiter;
|
||||||
size_t count;
|
size_t count;
|
||||||
|
@ -659,12 +657,6 @@ output_plain (MuMsgIter *iter, const char *fields, gboolean summary, int summary
|
||||||
g_return_val_if_fail (iter, FALSE);
|
g_return_val_if_fail (iter, FALSE);
|
||||||
g_return_val_if_fail (fields, FALSE);
|
g_return_val_if_fail (fields, FALSE);
|
||||||
|
|
||||||
if (summary && summary_len < 1) {
|
|
||||||
mu_util_g_set_error (err, MU_ERROR_IN_PARAMETERS,
|
|
||||||
"summary must be >= 1");
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (myiter = iter, count = 0; !mu_msg_iter_is_done (myiter);
|
for (myiter = iter, count = 0; !mu_msg_iter_is_done (myiter);
|
||||||
mu_msg_iter_next (myiter)) {
|
mu_msg_iter_next (myiter)) {
|
||||||
|
|
||||||
|
@ -686,7 +678,7 @@ output_plain (MuMsgIter *iter, const char *fields, gboolean summary, int summary
|
||||||
|
|
||||||
output_plain_fields (msg, fields, color, threads);
|
output_plain_fields (msg, fields, color, threads);
|
||||||
|
|
||||||
if (summary)
|
if (summary_len > 0)
|
||||||
print_summary (msg, summary_len);
|
print_summary (msg, summary_len);
|
||||||
|
|
||||||
++count;
|
++count;
|
||||||
|
|
|
@ -865,7 +865,6 @@ move_msgid_maybe (MuStore *store, MuQuery *query, GSList *args, GError **err)
|
||||||
{
|
{
|
||||||
const char *maildir, *msgid, *flagstr;
|
const char *maildir, *msgid, *flagstr;
|
||||||
GSList *docids, *cur;
|
GSList *docids, *cur;
|
||||||
MuFlags flags;
|
|
||||||
|
|
||||||
maildir = get_string_from_args (args, "maildir", TRUE, err);
|
maildir = get_string_from_args (args, "maildir", TRUE, err);
|
||||||
msgid = get_string_from_args (args, "msgid", TRUE, err);
|
msgid = get_string_from_args (args, "msgid", TRUE, err);
|
||||||
|
@ -875,25 +874,26 @@ move_msgid_maybe (MuStore *store, MuQuery *query, GSList *args, GError **err)
|
||||||
if (!msgid || !flagstr || maildir )
|
if (!msgid || !flagstr || maildir )
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
docids = get_docids_from_msgids (query, msgid, err);
|
if (!(docids = get_docids_from_msgids (query, msgid, err))) {
|
||||||
if (!docids) {
|
|
||||||
print_and_clear_g_error (err);
|
print_and_clear_g_error (err);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (cur = docids; cur; cur = g_slist_next(cur)) {
|
for (cur = docids; cur; cur = g_slist_next(cur)) {
|
||||||
MuMsg *msg;
|
MuMsg *msg;
|
||||||
|
MuFlags flags;
|
||||||
unsigned docid = (GPOINTER_TO_SIZE(cur->data));
|
unsigned docid = (GPOINTER_TO_SIZE(cur->data));
|
||||||
if (!(msg = mu_store_get_msg (store, docid, err))) {
|
if (!(msg = mu_store_get_msg (store, docid, err))) {
|
||||||
print_and_clear_g_error (err);
|
print_and_clear_g_error (err);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (flagstr)
|
|
||||||
flags = get_flags (mu_msg_get_path(msg), flagstr);
|
flags = flagstr ? get_flags (mu_msg_get_path(msg), flagstr) :
|
||||||
else
|
mu_msg_get_flags (msg);
|
||||||
flags = mu_msg_get_flags (msg);
|
|
||||||
if (flags == MU_FLAG_INVALID) {
|
if (flags == MU_FLAG_INVALID) {
|
||||||
print_error (MU_ERROR_IN_PARAMETERS, "invalid flags");
|
print_error (MU_ERROR_IN_PARAMETERS, "invalid flags");
|
||||||
|
mu_msg_unref (msg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -459,9 +459,7 @@ mu_str_xapian_escape_in_place (char *term, gboolean esc_space)
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
/* escape all other special stuff */
|
/* escape all other special stuff */
|
||||||
if (*cur < '0' || (*cur > '9' && *cur < 'A')
|
if (*cur < 0x80 && !isalnum (*cur))
|
||||||
|| (*cur > 'Z' && *cur < 'a') ||
|
|
||||||
(*cur > 'z' && *cur < 0x80))
|
|
||||||
*cur = escchar;
|
*cur = escchar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -137,15 +137,13 @@ generate_pdf (MuMsg *msg, const char *str, GError **err)
|
||||||
g_object_set (G_OBJECT(settings),
|
g_object_set (G_OBJECT(settings),
|
||||||
"enable-scripts", FALSE,
|
"enable-scripts", FALSE,
|
||||||
"auto-load-images", TRUE,
|
"auto-load-images", TRUE,
|
||||||
"enable-plugins", FALSE,
|
"enable-plugins", FALSE, NULL);
|
||||||
NULL);
|
|
||||||
|
|
||||||
view = webkit_web_view_new ();
|
view = webkit_web_view_new ();
|
||||||
|
|
||||||
/* to support cid: */
|
/* to support cid: */
|
||||||
g_signal_connect (G_OBJECT(view), "resource-request-starting",
|
g_signal_connect (G_OBJECT(view), "resource-request-starting",
|
||||||
G_CALLBACK (on_resource_request_starting),
|
G_CALLBACK (on_resource_request_starting), msg);
|
||||||
msg);
|
|
||||||
|
|
||||||
webkit_web_view_set_settings (WEBKIT_WEB_VIEW(view), settings);
|
webkit_web_view_set_settings (WEBKIT_WEB_VIEW(view), settings);
|
||||||
webkit_web_view_load_string (WEBKIT_WEB_VIEW(view),
|
webkit_web_view_load_string (WEBKIT_WEB_VIEW(view),
|
||||||
|
@ -248,24 +246,27 @@ main(int argc, char *argv[])
|
||||||
err = NULL;
|
err = NULL;
|
||||||
msg = mu_msg_new_from_file (argv[1], NULL, &err);
|
msg = mu_msg_new_from_file (argv[1], NULL, &err);
|
||||||
if (!msg) {
|
if (!msg) {
|
||||||
g_printerr ("failed to create msg for %s: %s\n",
|
g_printerr ("failed to create msg for %s\n", argv[1]);
|
||||||
argv[1],
|
goto err;
|
||||||
err && err->message ? err->message :
|
|
||||||
"unknown error");
|
|
||||||
g_clear_error (&err);
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!convert_to_pdf (msg, &err)) {
|
if (!convert_to_pdf (msg, &err)) {
|
||||||
g_printerr ("failed to create pdf from %s: %s\n",
|
g_printerr ("failed to create pdf from %s\n", argv[1]);
|
||||||
argv[1],
|
goto err;
|
||||||
err && err->message ? err->message :
|
|
||||||
"unknown error");
|
|
||||||
g_clear_error (&err);
|
|
||||||
mu_msg_unref (msg);
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* it worked! */
|
||||||
|
mu_msg_unref (msg);
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
err:
|
||||||
|
/* some error occured */
|
||||||
mu_msg_unref (msg);
|
mu_msg_unref (msg);
|
||||||
|
|
||||||
return 0;
|
if (err)
|
||||||
|
g_printerr ("error: %s", err->message);
|
||||||
|
|
||||||
|
g_clear_error (&err);
|
||||||
|
return 1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,8 @@
|
||||||
super-efficient handling of e-mail; searching, reading, replying, moving,
|
super-efficient handling of e-mail; searching, reading, replying, moving,
|
||||||
deleting. The overall 'feel' is a bit of a mix of =dired= and [[http://www.gohome.org/wl/][Wanderlust]].
|
deleting. The overall 'feel' is a bit of a mix of =dired= and [[http://www.gohome.org/wl/][Wanderlust]].
|
||||||
|
|
||||||
For all the details, please see the [[file:mu4e/index.html][manual]]. Or check the screenshots below.
|
For all the details, please see the [[file:mu4e/index.html][manual]]. Or check the screenshots
|
||||||
|
below. The code is [[https://github.com/djcb/mu][available on Github]].
|
||||||
|
|
||||||
** Screenshots
|
** Screenshots
|
||||||
|
|
||||||
|
@ -28,11 +29,10 @@
|
||||||
|
|
||||||
*** The message/headers split view (0.9.8.4)
|
*** The message/headers split view (0.9.8.4)
|
||||||
|
|
||||||
#+html:<a href="mu4e-splitview.png" border="0"><img src="mu4e-splitview-small.png" align="right" margin="10px"/></a>
|
[[file:mu4e-splitview.png]]
|
||||||
|
|
||||||
The message/headers split view, and speedbar support.
|
The message/headers split view, and speedbar support.
|
||||||
|
|
||||||
|
|
||||||
*** View message as pdf (0.9.8.4)
|
*** View message as pdf (0.9.8.4)
|
||||||
|
|
||||||
[[file:mu4egraph.png]]
|
[[file:mu4egraph.png]]
|
||||||
|
|
Loading…
Reference in New Issue