{ "atfile", 0 },
#define NOATFILESW 30
{ "noatfile", 0 },
+#define FMTPROCSW 31
+ { "fmtproc program", 0 },
+#define NFMTPROCSW 32
+ { "nofmtproc", 0 },
{ NULL, 0 }
};
int anot = 0, inplace = 1;
int nedit = 0, nwhat = 0;
int atfile = 1;
+ int fmtproc = -1;
char *cp, *cwd, *dp, *maildir, *file = NULL;
char *folder = NULL, *msg = NULL, *dfolder = NULL;
char *dmsg = NULL, *ed = NULL, drft[BUFSIZ], buf[BUFSIZ];
case NOATFILESW:
atfile = 0;
continue;
+
+ case FMTPROCSW:
+ if (!(formatproc = *argp++) || *formatproc == '-')
+ adios (NULL, "missing argument to %s", argp[-2]);
+ fmtproc = 1;
+ continue;
+ case NFMTPROCSW:
+ fmtproc = 0;
+ continue;
}
}
if (*cp == '+' || *cp == '@') {
form = etcpath (replcomps);
}
- replout (in, msg, drft, mp, outputlinelen, mime, form, filter, fcc);
+ replout (in, msg, drft, mp, outputlinelen, mime, form, filter,
+ fcc, fmtproc);
fclose (in);
if (nwhat)
done (0);
- what_now (ed, nedit, NOUSE, drft, atfile ? msg : NULL, 0, mp,
- anot ? "Replied" : NULL, inplace, cwd);
+ what_now (ed, nedit, NOUSE, drft, msg, 0, mp, anot ? "Replied" : NULL,
+ inplace, cwd, atfile);
done (1);
return 1;
}