Renamed -version switch to -Version to remove the conflict with -verbose.
[mmh] / uip / mhparam.c
index f92a3ec..6c6fedb 100644 (file)
@@ -11,9 +11,6 @@
 
 #include <h/mh.h>
 
-extern char *mhlibdir;
-extern char *mhetcdir;
-
 static struct swit switches[] = {
 #define COMPSW  0
        { "components", 0 },
@@ -22,7 +19,7 @@ static struct swit switches[] = {
 #define ALLSW  2
        { "all", 0 },
 #define VERSIONSW 3
-       { "version", 0 },
+       { "Version", 0 },
 #define HELPSW  4
        { "help", 0 },
 #define DEBUGSW   5
@@ -36,36 +33,24 @@ struct proc {
 };
 
 static struct proc procs [] = {
-        { "context",       &context },
-        { "mh-sequences",  &mh_seq },
-        { "buildmimeproc", &buildmimeproc },
-        { "editor",        &defaulteditor },
-        { "faceproc",      &faceproc },
-        { "fileproc",      &fileproc },
-        { "foldprot",      &foldprot },
-        { "incproc",       &incproc },
-        { "installproc",   &installproc  },
-        { "lproc",         &lproc },
-        { "mailproc",      &mailproc },
-        { "mhlproc",       &mhlproc },
-        { "moreproc",      &moreproc },
-        { "msgprot",       &msgprot },
-        { "packproc",      &packproc },
-        { "postproc",      &postproc },
-        { "rmfproc",       &rmfproc },
-        { "rmmproc",       &rmmproc },
-        { "sendmail",      &sendmail },
-        { "sendproc",      &sendproc },
-        { "showmimeproc",  &showmimeproc },
-        { "showproc",      &showproc },
-        { "version",       &version_num },
-        { "whatnowproc",   &whatnowproc },
-        { "etcdir",        &mhetcdir },
-        { "libdir",        &mhlibdir },
-        { "backup-prefix", &backup_prefix },
-        { "altmsg-link",   &altmsglink },
-        { "draft-folder",  &draftfolder },
-        { NULL,            NULL },
+       { "attachment-header",  &attach_hdr },
+       { "context",       &context },
+       { "mh-sequences",  &mh_seq },
+       { "editor",        &defaulteditor },
+       { "foldprot",      &foldprot },
+       { "listproc",      &listproc },
+       { "mimetypequeryproc", &mimetypequeryproc },
+       { "msgprot",       &msgprot },
+       { "pager",         &defaultpager },
+       { "sendmail",      &sendmail },
+       { "version",       &version_num },
+       { "whatnowproc",   &whatnowproc },
+       { "etcdir",        &mhetcdir },
+       { "backup-prefix", &backup_prefix },
+       { "altmsg-link",   &altmsglink },
+       { "draft-folder",  &draftfolder },
+       { "trash-folder",  &trashfolder },
+       { NULL,            NULL },
 };
 
 
@@ -84,46 +69,45 @@ main(int argc, char **argv)
        char *cp, buf[BUFSIZ], **argp;
        char **arguments, *comps[MAXARGS];
 
-       invo_name = r1bindex (argv[0], '/');
+       invo_name = mhbasename(argv[0]);
 
        /* read user profile/context */
        context_read();
 
-       arguments = getarguments (invo_name, argc, argv, 1);
+       arguments = getarguments(invo_name, argc, argv, 1);
        argp = arguments;
 
        while ((cp = *argp++)) {
                if (*cp == '-') {
-                       switch (smatch (++cp, switches)) {
-                               case AMBIGSW:
-                                       ambigsw (cp, switches);
-                                       done (1);
-                               case UNKWNSW:
-                                       adios (NULL, "-%s unknown", cp);
-
-                               case HELPSW:
-                                       snprintf (buf, sizeof(buf), "%s [profile-components] [switches]",
-                                               invo_name);
-                                       print_help (buf, switches, 1);
-                                       done (1);
-                               case VERSIONSW:
-                                       print_version(invo_name);
-                                       done (1);
-
-                               case COMPSW:
-                                       components = 1;
-                                       break;
-                               case NCOMPSW:
-                                       components = 0;
-                                       break;
-
-                               case ALLSW:
-                                       all = 1;
-                                       break;
-
-                               case DEBUGSW:
-                                       debug = 1;
-                                       break;
+                       switch (smatch(++cp, switches)) {
+                       case AMBIGSW:
+                               ambigsw(cp, switches);
+                               done(1);
+                       case UNKWNSW:
+                               adios(NULL, "-%s unknown", cp);
+
+                       case HELPSW:
+                               snprintf(buf, sizeof(buf), "%s [profile-components] [switches]", invo_name);
+                               print_help(buf, switches, 1);
+                               done(1);
+                       case VERSIONSW:
+                               print_version(invo_name);
+                               done(1);
+
+                       case COMPSW:
+                               components = 1;
+                               break;
+                       case NCOMPSW:
+                               components = 0;
+                               break;
+
+                       case ALLSW:
+                               all = 1;
+                               break;
+
+                       case DEBUGSW:
+                               debug = 1;
+                               break;
                        }
                } else {
                        comps[compp++] = cp;
@@ -138,7 +122,7 @@ main(int argc, char **argv)
 
                if (components >= 0)
                        advise(NULL, "-%scomponents ignored with -all",
-                                  components ? "" : "no");
+                                       components ? "" : "no");
 
                /* print all entries in context/profile list */
                for (np = m_defs; np; np = np->n_next)
@@ -153,7 +137,7 @@ main(int argc, char **argv)
                ** value (as determined after context is read).
                */
                for (ps = procs; ps->p_name; ps++)
-                       printf ("%s: %s\n", ps->p_name,
+                       printf("%s: %s\n", ps->p_name,
                                        *ps->p_field ? *ps->p_field : "");
 
        } else {
@@ -163,9 +147,9 @@ main(int argc, char **argv)
                for (i = 0; i < compp; i++)  {
                        register char *value;
 
-                       value = context_find (comps[i]);
+                       value = context_find(comps[i]);
                        if (!value)
-                               value = p_find (comps[i]);
+                               value = p_find(comps[i]);
                        if (value) {
                                if (components)
                                        printf("%s: ", comps[i]);
@@ -176,7 +160,7 @@ main(int argc, char **argv)
                }
        }
 
-       done (missed);
+       done(missed);
        return 1;
 }
 
@@ -187,7 +171,7 @@ p_find(char *str)
        struct proc *ps;
 
        for (ps = procs; ps->p_name; ps++)
-               if (!mh_strcasecmp (ps->p_name, str))
+               if (!mh_strcasecmp(ps->p_name, str))
                        return (*ps->p_field);
 
        return NULL;