{ "edit [<editor> <switches>]", 0 },
#define REFILEOPT 1
{ "refile [<switches>] +folder", 0 },
-#define BUILDMIMESW 2
- { "mime [<switches>]", 0 },
-#define DISPSW 3
+#define DISPSW 2
{ "display [<switches>]", 0 },
-#define LISTSW 4
+#define LISTSW 3
{ "list [<switches>]", 0 },
-#define SENDSW 5
+#define SENDSW 4
{ "send [<switches>]", 0 },
-#define PUSHSW 6
+#define PUSHSW 5
{ "push [<switches>]", 0 },
-#define QUITSW 7
+#define QUITSW 6
{ "quit [-delete]", 0 },
-#define DELETESW 8
+#define DELETESW 7
{ "delete", 0 },
-#define CDCMDSW 9
+#define CDCMDSW 8
{ "cd [directory]", 0 },
-#define PWDCMDSW 10
+#define PWDCMDSW 9
{ "pwd", 0 },
-#define LSCMDSW 11
+#define LSCMDSW 10
{ "ls", 0 },
-#define ATTACHCMDSW 12
+#define ATTACHCMDSW 11
{ "attach", 0 },
-#define DETACHCMDSW 13
+#define DETACHCMDSW 12
{ "detach [-n]", 2 },
-#define ALISTCMDSW 14
+#define ALISTCMDSW 13
{ "alist [-ln] ", 2 },
{ NULL, 0 }
};
char *, char *, int);
static int sendfile(char **, char *, int);
static void sendit(char *, char **, char *, int);
-static int buildfile(char **, char *);
-static int check_draft(char *);
static int removefile(char *);
static void writelscmd(char *, int, char **);
static void writesomecmd(char *buf, int bufsz, char *cmd, char *trailcmd, char **argp);
advise(NULL, "no alternate message to display");
break;
- case BUILDMIMESW:
- /* Translate MIME composition file */
- buildfile(++argp, drft);
- break;
-
case EDITSW:
/* Call an editor on the draft file */
if (*++argp)
** working directory to relative path names.
** Add the attachment annotation to the draft.
*/
-
if ((f = popen_in_dir(cwd, buf, "r")) != (FILE *)0) {
while (fgets(shell, sizeof (shell), f)
!= NULL) {
int i, vecp;
char *cp, *sp, *vec[MAXARGS];
- /* Translate MIME composition file, if necessary */
- if ((cp = context_find("automimeproc")) && (strcmp(cp, "1")==0) &&
- !getenv("NOMHNPROC") && check_draft(file) &&
- (buildfile(NULL, file) == NOTOK))
- return 0;
-
- /* For backwards compatibility */
- if ((cp = context_find("automhnproc")) && !getenv("NOMHNPROC")
- && check_draft(file) && (i = editfile(&cp, NULL,
- file, NOUSE, NULL, NULL, NULL, 0)))
- return 0;
-
/*
** If the sendproc is the nmh command `send', then we call
** those routines directly rather than exec'ing the command.
}
-/*
-** Translate MIME composition file (call buildmimeproc)
-*/
-
-static int
-buildfile(char **argp, char *file)
-{
- int i;
- char **args, *ed;
-
- ed = buildmimeproc;
-
- /* allocate space for arguments */
- i = 0;
- if (argp) {
- while (argp[i])
- i++;
- }
- args = (char **) mh_xmalloc((i + 2) * sizeof(char *));
-
- /*
- ** For backward compatibility, we need to add -build
- ** if we are using mhn as buildmimeproc
- */
- i = 0;
- if (strcmp(mhbasename(ed), "mhn") == 0)
- args[i++] = "-build";
-
- /* copy any other arguments */
- while (argp && *argp)
- args[i++] = *argp++;
- args[i] = NULL;
-
- i = editfile(&ed, args, file, NOUSE, NULL, NULL, NULL, 0);
- free(args);
-
- return (i ? NOTOK : OK);
-}
-
-
-/*
-** Check if draft is a mhbuild composition file
-*/
-
-static int
-check_draft(char *msgnam)
-{
- int state;
- char buf[BUFSIZ], name[NAMESZ];
- FILE *fp;
-
- if ((fp = fopen(msgnam, "r")) == NULL)
- return 0;
- for (state = FLD;;)
- switch (state = m_getfld(state, name, buf, sizeof(buf), fp)) {
- case FLD:
- case FLDPLUS:
- case FLDEOF:
- /*
- ** If draft already contains any of the
- ** Content-XXX fields, then assume it already
- ** been converted.
- */
- if (uprf(name, XXX_FIELD_PRF)) {
- fclose(fp);
- return 0;
- }
- while (state == FLDPLUS)
- state = m_getfld(state, name, buf,
- sizeof(buf), fp);
- break;
-
- case BODY:
- do {
- char *bp;
-
- for (bp = buf; *bp; bp++)
- if (*bp != ' ' && *bp != '\t' &&
- *bp != '\n') {
- fclose(fp);
- return 1;
- }
-
- state = m_getfld(state, name, buf,
- sizeof(buf), fp);
- } while (state == BODY);
- /* and fall... */
-
- default:
- fclose(fp);
- return 0;
- }
-}
-
-
static struct swit sendswitches[] = {
#define ALIASW 0
{ "alias aliasfile", 0 },