X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/a5a1425258ffb1f72e853b6adc6ff0ae58c636bd..8a204aba2ea3f7cf477af48a90afad655276e500:/uip/folder.c diff --git a/uip/folder.c b/uip/folder.c index 423ef7b3..8db9e3e6 100644 --- a/uip/folder.c +++ b/uip/folder.c @@ -1,6 +1,4 @@ - -/* - * folder(s).c -- set/list the current message and/or folder +/* folder.c -- set/list the current message and/or folder * -- push/pop a folder onto/from the folder stack * -- list the folder stack * @@ -12,6 +10,7 @@ #include #include #include +#include "../sbr/m_maildir.h" #define FOLDER_SWITCHES \ X("all", 0, ALLSW) \ @@ -118,7 +117,7 @@ main (int argc, char **argv) * If program was invoked with name ending * in `s', then add switch `-all'. */ - all = HasSuffixC(argv[0], 's'); + all = has_suffix_c(argv[0], 's'); arguments = getarguments (invo_name, argc, argv, 1); argp = arguments; @@ -227,13 +226,11 @@ main (int argc, char **argv) if (*cp == '+' || *cp == '@') { if (argfolder) adios (NULL, "only one folder at a time!"); - else - argfolder = pluspath (cp); + argfolder = pluspath (cp); } else { if (msg) adios (NULL, "only one (current) message at a time!"); - else - msg = cp; + msg = cp; } } @@ -306,7 +303,7 @@ main (int argc, char **argv) /* Listing the folder stack */ if (listsw) { - printf ("%s", argfolder ? argfolder : getfolder (1)); + fputs(argfolder ? argfolder : getfolder (1), stdout); if ((cp = context_find (stack))) { dp = mh_xstrdup(cp); for (ap = brkstring (dp, " ", "\n"); *ap; ap++) @@ -335,9 +332,10 @@ main (int argc, char **argv) */ if (!argfolder) { if (msg) - admonish (NULL, "no folder given for message %s", msg); + inform("no folder given for message %s, continuing...", msg); readonly_folders (); /* do any readonly folders */ - strncpy (folder, (cp = context_find (pfolder)) ? cp : "", sizeof(folder)); + cp = context_find(pfolder); + strncpy (folder, FENDNULL(cp), sizeof(folder)); crawl_folders (".", get_folder_info_callback, NULL); } else { strncpy (folder, argfolder, sizeof(folder)); @@ -407,7 +405,7 @@ get_folder_info_body (char *fold, char *msg, boolean *crawl_children) * create message structure and get folder info */ if (!(mp = folder_read (fold, fpack))) { - admonish (NULL, "unable to read folder %s", fold); + inform("unable to read folder %s, continuing...", fold); *crawl_children = FALSE; return 0; } @@ -546,7 +544,7 @@ print_folders (void) if (all || fshort || ftotal < 1) { for (i = 0; i < total_folders; i++) { if (fshort) { - printf ("%s\n", fi[i].name); + puts(fi[i].name); continue; } @@ -569,9 +567,9 @@ print_folders (void) nummsgdigits, "no", fi[i].others ? lowmsgdigits + hghmsgdigits + 5 : 0, ""); } else { - printf ("has %*d message%s (%*d-%*d)", + printf ("has %*d message%1s (%*d-%*d)", nummsgdigits, fi[i].nummsg, - (fi[i].nummsg == 1) ? " " : "s", + PLURALS(fi[i].nummsg), lowmsgdigits, fi[i].lowmsg, hghmsgdigits, fi[i].hghmsg); if (fi[i].curmsg >= fi[i].lowmsg && fi[i].curmsg <= fi[i].hghmsg) { @@ -592,16 +590,16 @@ print_folders (void) if (ftotal > 0 || (all && !fshort && ftotal >= 0)) { if (all) putchar('\n'); - printf ("TOTAL = %d message%c in %d folder%s.\n", - total_msgs, total_msgs != 1 ? 's' : ' ', - total_folders, total_folders != 1 ? "s" : ""); + printf ("TOTAL = %d message%s in %d folder%s.\n", + total_msgs, PLURALS(total_msgs), + total_folders, PLURALS(total_folders)); } fflush (stdout); } /* - * Set the current message and sychronize sequences + * Set the current message and synchronize sequences */ static int @@ -612,7 +610,7 @@ sfold (struct msgs *mp, char *msg) return 0; if (mp->numsel > 1) { - admonish (NULL, "only one message at a time!"); + inform("only one message at a time!, continuing..."); return 0; } seq_setprev (mp); /* set the previous-sequence */