#include <gnutls/gnutls.h>
#include <gpgme.h>
-static const char *Notice = N_("\
-Copyright (C) 1996-2002 Michael R. Elkins and others.\n\
-Copyright (C) 2005 The Mutt-ng Team\n\
-Copyright (C) 2006 Pierre Habouzit undation, Inc.\n\
-This is free software. You may redistribute copies of it under the terms of\n\
-the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\n\
-There is NO WARRANTY, to the extent permitted by law.\n");
-
-void mutt_exit (int code)
+void mutt_exit(int code)
{
- mutt_endwin (NULL);
- exit (code);
+ mutt_endwin(NULL);
+ exit(code);
}
static void mutt_usage (void)
{
- puts (mutt_make_version());
-
- puts
- _("usage: madmutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f <file> ]\n\
- madmutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -Q <query> [ -Q <query> ] [...]\n\
- madmutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -A <alias> [ -A <alias> ] [...]\n\
- madmutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -t");
- puts
- _("\
- madmutt [ -nR ] [ -e <cmd> ] [ -F <file> ] -T\n\
- madmutt [ -nx ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] [ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ ... ]\n\
- madmutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p\n\
- madmutt -v\n\
-\n\
-options:\n\
- -A <alias>\texpand the given alias\n\
- -a <file>\tattach a file to the message\n\
- -b <address>\tspecify a blind carbon-copy (BCC) address\n\
- -c <address>\tspecify a carbon-copy (CC) address");
- puts _("\
- -e <command>\tspecify a command to be executed after initialization\n\
- -f <file>\tspecify which mailbox to read\n\
- -F <file>\tspecify an alternate muttrngc file\n\
- -g <server>\tspecify a newsserver (if compiled with NNTP)\n\
- -G\t\tselect a newsgroup (if compiled with NNTP)\n\
- -H <file>\tspecify a draft file to read header and body from\n\
- -i <file>\tspecify a file which Madmutt should include in the body");
- puts _("\
- -d <level>\t specify debugging level of Madmutt\n\
- -m <type>\tspecify a default mailbox type\n\
- -n\t\tcauses Madmutt not to read the system Madmuttrc\n\
- -p\t\trecall a postponed message\n\
- -Q <variable>\tquery a configuration variable\n\
- -R\t\topen mailbox in read-only mode\n\
- -s <subj>\tspecify a subject (must be in quotes if it has spaces)");
- puts _("\
- -t\t\tprint the value of all variables to stdout\n\
- -T\t\tprint the value of all changed variables to stdout\n\
- -v\t\tshow version and compile-time definitions\n\
- -y\t\tselect a mailbox specified in your `mailboxes' list\n\
- -z\t\texit immediately if there are no messages in the mailbox\n\
- -Z\t\topen the first folder with new message, exit immediately if none\n\
- -h\t\tthis help message");
+ puts(mutt_make_version());
- exit (0);
+ puts(_("\
+usage: madmutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -f <file> ]\n\
+ madmutt [ -n ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] [ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ ... ]\n\
+ madmutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p\n\
+ madmutt -v\n"));
+
+ puts(_("Options:"));
+ puts(_(" -a <file> attach a file to the message"));
+ puts(_(" -b <address> specify a blind carbon-copy (BCC) address"));
+ puts(_(" -c <address> specify a carbon-copy (CC) address"));
+ puts(_(" -e <command> specify a command to be executed after initialization"));
+ puts(_(" -f <file> specify which mailbox to read"));
+ puts(_(" -F <file> specify an alternate Madmuttrc file"));
+#ifdef USE_NNTP
+ puts(_(" -g <server> specify a newsserver"));
+ puts(_(" -G select a newsgroup"));
+#endif
+ puts(_(" -H <file> specify a draft file to read header and body from"));
+ puts(_(" -i <file> specify a file which Madmutt should include in the body"));
+ puts(_(" -n causes Madmutt not to read the system Madmuttrc"));
+ puts(_(" -p recall a postponed message"));
+ puts(_(" -R open mailbox in read-only mode"));
+ puts(_(" -s <subj> specify a subject (must be in quotes if it has spaces)"));
+ puts(_(" -v show version and compile-time definitions"));
+ puts(_(" -y select a mailbox specified in your `mailboxes' list"));
+ puts(_(" -z exit immediately if there are no messages in the mailbox"));
+ puts(_(" -Z open the first folder with new message, exit immediately if none"));
+ puts(_(" -h this help message"));
+
+ exit(0);
}
static void show_version (void)
{
- struct utsname uts;
-
- puts (mutt_make_version());
- puts (_(Notice));
-
- uname (&uts);
-
-#ifdef _AIX
- printf ("System:\n %s %s.%s", uts.sysname, uts.version, uts.release);
-#elif defined (SCO)
- printf ("System:\n SCO %s", uts.release);
-#else
- printf ("System:\n %s %s", uts.sysname, uts.release);
-#endif
-
- printf (" (%s)\nExternal Libraries:\n", uts.machine);
-
+ struct utsname uts;
+ uname(&uts);
+
+ puts(mutt_make_version());
+ puts(_(" Copyright (C) 1996-2002 Michael R. Elkins and others."));
+ puts(_(" Copyright (C) 2005 The Mutt-ng Team"));
+ puts(_(" Copyright (C) 2006-2007 Pierre Habouzit"));
+ puts(_(" MadMutt is based on Mutt-ng wich was based on Mutt before"));
+ puts("");
+
+ printf("System:\n %s %s (%s)\n", uts.sysname, uts.release, uts.machine);
+ puts("External Libraries:");
#ifdef NCURSES_VERSION
- printf (" ncurses %s\n", NCURSES_VERSION);
+ printf(" ncurses %s\n", NCURSES_VERSION);
#endif
-
#ifdef _LIBICONV_VERSION
- printf (" libiconv %d.%d\n", _LIBICONV_VERSION >> 8,
- _LIBICONV_VERSION & 0xff);
+ printf(" libiconv %d.%d\n", _LIBICONV_VERSION >> 8,
+ _LIBICONV_VERSION & 0xff);
#endif
-
-#ifdef HAVE_LIBIDN
- printf (" libidn %s (compiled with %s)\n",
- stringprep_check_version (NULL), STRINGPREP_VERSION);
+#ifdef STRINGPREP_VERSION
+ printf(" libidn %s\n", STRINGPREP_VERSION);
#endif
-
#ifdef USE_HCACHE
#if defined(HAVE_QDBM)
- printf (" qdbm %s\n", dpversion);
+ printf(" qdbm %s\n", dpversion);
#elif defined(HAVE_GDBM)
- printf (" gdbm %s\n", gdbm_version);
+ printf(" gdbm %s\n", gdbm_version);
#endif
#endif
+ printf(" gnutls %s\n", LIBGNUTLS_VERSION);
+ printf(" gpgme %s\n", GPGME_VERSION);
+ puts (_("Compile Options:"));
- printf (" gnutls %s\n", LIBGNUTLS_VERSION);
- printf (" gpgme %s\n", GPGME_VERSION);
- puts (_("Compile Options:"));
-
- puts (
+ puts (
#ifdef USE_SETGID
- "+USE_SETGID "
+ " +USE_SETGID"
#else
- "-USE_SETGID "
+ " -USE_SETGID"
#endif
#ifdef USE_FCNTL
- "+USE_FCNTL "
+ " +USE_FCNTL"
#else
- "-USE_FCNTL "
+ " -USE_FCNTL"
#endif
#ifdef USE_FLOCK
- "+USE_FLOCK "
+ " +USE_FLOCK"
#else
- "-USE_FLOCK "
+ " -USE_FLOCK"
#endif
#ifdef USE_HCACHE
- "+USE_HCACHE "
+ " +USE_HCACHE"
#else
- "-USE_HCACHE "
+ " -USE_HCACHE"
#endif
- );
- puts (
#ifdef USE_NNTP
- "+USE_NNTP "
+ " +USE_NNTP"
#else
- "-USE_NNTP "
+ " -USE_NNTP"
#endif
#ifdef HAVE_LIBIDN
- "+HAVE_LIBIDN "
+ " +HAVE_LIBIDN"
#else
- "-HAVE_LIBIDN "
+ " -HAVE_LIBIDN"
#endif
- );
+ );
- puts (_("Built-In Defaults:"));
- printf (" +SENDMAIL=\"%s\"\n", SENDMAIL);
- printf (" +MAILPATH=\"%s\"\n", MAILPATH);
- printf (" +PKGDATADIR=\"%s\"\n", PKGDATADIR);
- printf (" +PKGDOCDIR=\"%s\"\n", PKGDOCDIR);
- printf (" +SYSCONFDIR=\"%s\"\n", SYSCONFDIR);
+ puts(_("Built-In Defaults:"));
+ printf(" SENDMAIL \"%s\"\n", SENDMAIL);
+ printf(" MAILPATH \"%s\"\n", MAILPATH);
+ printf(" PKGDATADIR \"%s\"\n", PKGDATADIR);
+ printf(" PKGDOCDIR \"%s\"\n", PKGDOCDIR);
+ printf(" SYSCONFDIR \"%s\"\n", SYSCONFDIR);
- puts (_("MadMutt is based on Madmutt wich was based on Mutt before\n"));
+ puts("");
+ puts(_("This is free software. You may redistribute copies of it under the terms of"));
+ puts(_("the GNU General Public License <http://www.gnu.org/licenses/gpl.html>."));
+ puts(_("There is NO WARRANTY, to the extent permitted by law."));
- exit (0);
+ exit(0);
}
static void start_curses (void)
char *subject = NULL;
char *includeFile = NULL;
char *draftFile = NULL;
- char *newMagic = NULL;
HEADER *msg = NULL;
string_list_t *attach = NULL;
string_list_t *commands = NULL;
- string_list_t *queries = NULL;
- string_list_t *alias_queries = NULL;
int sendflags = 0;
int flags = 0;
int version = 0;
int i;
int explicit_folder = 0;
- int dump_variables = -1;
/* initialize random number for tmp file creation */
srand48((unsigned int) time (NULL));
p_clear(Options, countof(Options));
p_clear(QuadOptions, countof(QuadOptions));
- while ((i = getopt(argc, argv, "A:a:b:F:f:c:e:H:s:i:hm:npQ:RTtvyzZ"
+ while ((i = getopt(argc, argv, "a:b:F:f:c:e:H:s:i:hnpRTtvyzZ"
#ifdef USE_NNTP
"g:G"
#endif
)) >= 0)
switch (i) {
- case 'A':
- alias_queries = mutt_add_list (alias_queries, optarg);
- break;
case 'a':
if (strlen(optarg)<=512)
attach = mutt_add_list (attach, optarg);
msg->env->cc = rfc822_parse_adrlist (msg->env->cc, optarg);
break;
- case 't':
- dump_variables = 2;
- break;
-
- case 'T':
- dump_variables = 1;
- break;
-
case 'e':
commands = mutt_add_list (commands, optarg);
break;
includeFile = optarg;
break;
- case 'm':
- /* should take precedence over .muttrc setting, so save it for later */
- newMagic = optarg;
- break;
-
case 'n':
flags |= M_NOSYSRC;
break;
sendflags |= SENDPOSTPONED;
break;
- case 'Q':
- queries = mutt_add_list (queries, optarg);
- break;
-
case 'R':
flags |= M_RO; /* read-only mode */
break;
}
/* Check for a batch send. */
- if (!isatty (0) || queries || alias_queries || dump_variables > 0) {
- set_option (OPTNOCURSES);
+ if (!isatty (0)) {
+ set_option(OPTNOCURSES);
sendflags = SENDBATCH;
}
mutt_init (flags & M_NOSYSRC, commands);
string_list_wipe(&commands);
- if (queries)
- return mutt_query_variables (queries);
- if (dump_variables > 0)
- return (mutt_dump_variables (dump_variables-1));
-
- if (alias_queries) {
- int rv = 0;
- address_t *a;
-
- for (; alias_queries; alias_queries = alias_queries->next) {
- if ((a = address_list_dup(alias_lookup(alias_queries->data)))) {
- /* output in machine-readable form */
- mutt_addrlist_to_idna (a, NULL);
- mutt_write_address_list (a, stdout, 0, 0);
- address_list_wipe(&a);
- } else {
- rv = 1;
- printf ("%s\n", alias_queries->data);
- }
- }
- return rv;
- }
-
- if (newMagic)
- mx_set_magic (newMagic);
-
if (!option(OPTNOCURSES)) {
ui_layout_init();
}