summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog26
-rw-r--r--mh/anno.c6
-rw-r--r--mh/comp.c11
-rw-r--r--mh/fmtcheck.c7
-rw-r--r--mh/folder.c31
-rw-r--r--mh/forw.c13
-rw-r--r--mh/inc.c10
-rw-r--r--mh/install-mh.c6
-rw-r--r--mh/mark.c6
-rw-r--r--mh/mh_getopt.h254
-rw-r--r--mh/mhl.c6
-rw-r--r--mh/mhn.c6
-rw-r--r--mh/mhpath.c6
-rw-r--r--mh/pick.c6
-rw-r--r--mh/refile.c6
-rw-r--r--mh/repl.c6
-rw-r--r--mh/rmf.c16
-rw-r--r--mh/rmm.c6
-rw-r--r--mh/scan.c10
-rw-r--r--mh/send.c6
-rw-r--r--mh/sortm.c8
-rw-r--r--mh/whatnow.c8
-rw-r--r--mh/whom.c8
23 files changed, 346 insertions, 122 deletions
diff --git a/ChangeLog b/ChangeLog
index a04915b77..dbeaa32cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+2003-03-19 Sergey Poznyakoff
+
+ * mh/anno.c: Minor changes for consistency with the overall
+ GNU mh options layout.
+ * mh/comp.c: Likewise.
+ * mh/fmtcheck.c: Likewise.
+ * mh/folder.c: Likewise.
+ * mh/forw.c: Likewise.
+ * mh/inc.c: Likewise.
+ * mh/install-mh.c: Likewise.
+ * mh/mark.c: Likewise.
+ * mh/mh_getopt.h: Likewise.
+ * mh/mhl.c: Likewise.
+ * mh/mhn.c: Likewise.
+ * mh/mhpath.c: Likewise.
+ * mh/pick.c: Likewise.
+ * mh/refile.c: Likewise.
+ * mh/repl.c: Likewise.
+ * mh/rmf.c: Likewise.
+ * mh/rmm.c: Likewise.
+ * mh/scan.c: Likewise.
+ * mh/send.c: Likewise.
+ * mh/sortm.c: Likewise.
+ * mh/whatnow.c: Likewise.
+ * mh/whom.c: Likewise.
+
2003-03-19 Sergey Poznyakoff
* doc/rfc/Makefile.am: Added rfc1521.txt
diff --git a/mh/anno.c b/mh/anno.c
index 13e77a200..d521a3026 100644
--- a/mh/anno.c
+++ b/mh/anno.c
@@ -39,6 +39,8 @@ static struct argp_option options[] = {
N_("Add this FIELD to the message header") },
{"text", ARG_TEXT, N_("STRING"), 0,
N_("Field value for the component") },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ NULL }
};
@@ -88,6 +90,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
anno_text = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/comp.c b/mh/comp.c
index be80da259..72d2ba0fd 100644
--- a/mh/comp.c
+++ b/mh/comp.c
@@ -53,6 +53,9 @@ static struct argp_option options[] = {
N_("* Ignore whatnowproc variable. Use standard `whatnow' shell instead.")},
{"use", ARG_USE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Use draft file preserved after the last session") },
+ {"nouse", ARG_NOUSE, NULL, OPTION_HIDDEN, ""},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -111,6 +114,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
use_draft = is_true (arg);
break;
+ case ARG_NOUSE:
+ use_draft = 0;
+ break;
+
case ARG_FILE:
wh_env.draftfile = mh_expand_name (NULL, arg, 0);
break;
@@ -128,6 +135,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
argp_error (state, _("option is not yet implemented"));
exit (1);
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/fmtcheck.c b/mh/fmtcheck.c
index b52ff06b3..7980b8c95 100644
--- a/mh/fmtcheck.c
+++ b/mh/fmtcheck.c
@@ -34,6 +34,9 @@ static struct argp_option options[] = {
N_("Dump the listing of compiled format code")},
{ "debug", ARG_DEBUG, NULL, 0,
N_("Enable parser debugging output"),},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
+
{ 0 }
};
@@ -84,6 +87,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
mh_format_debug (1);
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/folder.c b/mh/folder.c
index b99045e9f..720138c7e 100644
--- a/mh/folder.c
+++ b/mh/folder.c
@@ -59,15 +59,23 @@ static struct argp_option options[] = {
N_("List all folders"), 3},
{"create", ARG_CREATE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Create non-existing folders"), 3},
+ {"nocreate", ARG_NOCREATE, NULL, OPTION_HIDDEN, ""},
{"fast", ARG_FAST, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("List only the folder names"), 3},
+ {"nofast", ARG_NOFAST, NULL, OPTION_HIDDEN, ""},
{"header", ARG_HEADER, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Print the header line"), 3},
+ {"noheader", ARG_NOHEADER, NULL, OPTION_HIDDEN, ""},
{"recurse",ARG_RECURSIVE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Scan folders recursively"), 3},
+ {"norecurse", ARG_NORECURSIVE, NULL, OPTION_HIDDEN, ""},
{"total", ARG_TOTAL, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Output the total statistics"), 3},
+ {"nototal", ARG_NOTOTAL, NULL, OPTION_HIDDEN, ""},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
+
{NULL},
};
@@ -141,27 +149,50 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
create_flag = is_true (arg);
break;
+ case ARG_NOCREATE:
+ create_flag = 0;
+
case ARG_FAST:
fast_mode = is_true (arg);
break;
+ case ARG_NOFAST:
+ fast_mode = 0;
+ break;
+
case ARG_HEADER:
print_header = is_true (arg);
break;
+ case ARG_NOHEADER:
+ print_header = 0;
+ break;
+
case ARG_RECURSIVE:
recurse = is_true (arg);
break;
+ case ARG_NORECURSIVE:
+ recurse = 0;
+ break;
+
case ARG_TOTAL:
print_total = is_true (arg);
break;
+
+ case ARG_NOTOTAL:
+ print_total = 0;
+ break;
case ARG_FOLDER:
push_folder = mh_current_folder ();
current_folder = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/forw.c b/mh/forw.c
index 9db851a36..022a1790f 100644
--- a/mh/forw.c
+++ b/mh/forw.c
@@ -66,6 +66,11 @@ static struct argp_option options[] = {
N_("* Ignore whatnowproc variable. Use standard `whatnow' shell instead.")},
{"use", ARG_USE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Use draft file preserved after the last session") },
+ {"nouse", ARG_NOUSE, N_("BOOL"), OPTION_HIDDEN, "" },
+
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
+
{NULL},
};
@@ -128,6 +133,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
use_draft = is_true (arg);
break;
+ case ARG_NOUSE:
+ use_draft = 0;
+ break;
+
case ARG_WIDTH:
width = strtoul (arg, NULL, 0);
if (!width)
@@ -184,6 +193,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
argp_error (state, _("option is not yet implemented"));
exit (1);
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/inc.c b/mh/inc.c
index daf84bcbd..ad4f0a9db 100644
--- a/mh/inc.c
+++ b/mh/inc.c
@@ -36,12 +36,14 @@ static struct argp_option options[] = {
N_("Disable audit")},
{"changecur", ARG_CHANGECUR, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Mark first incorporated message as current (default)")},
+ {"nochangecur", ARG_NOCHANGECUR, NULL, OPTION_HIDDEN, ""},
{"form", ARG_FORM, N_("FILE"), 0,
N_("Read format from given file")},
{"format", ARG_FORMAT, N_("FORMAT"), 0,
N_("Use this format string")},
{"truncate", ARG_TRUNCATE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Truncate source mailbox after incorporating (default)")},
+ {"notruncate", ARG_NOTRUNCATE, NULL, OPTION_HIDDEN, ""},
{"width", ARG_WIDTH, N_("NUMBER"), 0,
N_("Set output width")},
{"quiet", ARG_QUIET, 0, 0,
@@ -97,6 +99,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
changecur = is_true(arg);
break;
+ case ARG_NOCHANGECUR:
+ changecur = 0;
+ break;
+
case ARG_FOLDER:
append_folder = arg;
break;
@@ -113,6 +119,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
truncate_source = is_true(arg);
break;
+ case ARG_NOTRUNCATE:
+ truncate_source = 0;
+ break;
+
case ARG_WIDTH:
width = strtoul (arg, NULL, 0);
if (!width)
diff --git a/mh/install-mh.c b/mh/install-mh.c
index f0cb1340a..365844209 100644
--- a/mh/install-mh.c
+++ b/mh/install-mh.c
@@ -26,6 +26,8 @@ static char args_doc[] = "";
static struct argp_option options[] = {
{"auto", ARG_AUTO, NULL, 0, N_("Do not ask for anything")},
{"compat", ARG_COMPAT, NULL, OPTION_HIDDEN, ""},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{NULL}
};
@@ -49,6 +51,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
case ARG_COMPAT:
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/mark.c b/mh/mark.c
index 40f20bc18..691147f3d 100644
--- a/mh/mark.c
+++ b/mh/mark.c
@@ -40,6 +40,8 @@ static struct argp_option options[] = {
{"zero", ARG_ZERO, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Empty the sequence before adding messages")},
{"nozero", ARG_NOZERO, NULL, OPTION_HIDDEN, "" },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{NULL}
};
@@ -112,6 +114,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
seq_flags &= ~SEQ_ZERO;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/mh_getopt.h b/mh/mh_getopt.h
index ba4241a22..c6aeb584a 100644
--- a/mh/mh_getopt.h
+++ b/mh/mh_getopt.h
@@ -38,128 +38,138 @@ struct mh_argp_data
char *doc;
};
-#define ARG_ADD 266
-#define ARG_AFTER 267
-#define ARG_ALIAS 268
-#define ARG_ALL 269
-#define ARG_AND 270
-#define ARG_ANNOTATE 271
-#define ARG_AUDIT 272
-#define ARG_AUTO 273
-#define ARG_BEFORE 274
-#define ARG_BELL 275
-#define ARG_BUILD 276
-#define ARG_CC 277
-#define ARG_CFLAGS 278
-#define ARG_CHANGECUR 279
-#define ARG_CHECK 280
-#define ARG_CLEAR 281
-#define ARG_COMPAT 282
-#define ARG_COMPONENT 283
-#define ARG_COMPOSE 284
-#define ARG_CREATE 285
-#define ARG_DATE 286
-#define ARG_DATEFIELD 287
-#define ARG_DEBUG 288
-#define ARG_DELETE 289
-#define ARG_DRAFT 290
-#define ARG_DRAFTFOLDER 291
-#define ARG_DRAFTMESSAGE 292
-#define ARG_DRY_RUN 293
-#define ARG_DUMP 294
-#define ARG_EDITOR 295
-#define ARG_FAST 296
-#define ARG_FCC 297
-#define ARG_FILE 298
-#define ARG_FILTER 299
-#define ARG_FOLDER 300
-#define ARG_FORM 301
-#define ARG_FORMAT 302
-#define ARG_FORWARD 303
-#define ARG_FROM 304
-#define ARG_HEADER 305
-#define ARG_INPLACE 306
-#define ARG_INTERACTIVE 307
-#define ARG_LBRACE 308
-#define ARG_LENGTH 309
-#define ARG_LICENSE 310
-#define ARG_LIMIT 311
-#define ARG_LINK 312
-#define ARG_LIST 313
-#define ARG_MIME 314
-#define ARG_MOREPROC 315
-#define ARG_MSGID 316
-#define ARG_NOAUDIT 317
-#define ARG_NOAUTO 318
-#define ARG_NOBELL 319
-#define ARG_NOCC 320
-#define ARG_NOCHECK 321
-#define ARG_NOCLEAR 322
-#define ARG_NOCOMPOSE 323
-#define ARG_NODATE 324
-#define ARG_NODATEFIELD 325
-#define ARG_NODRAFTFOLDER 326
-#define ARG_NOEDIT 327
-#define ARG_NOFILTER 328
-#define ARG_NOFORMAT 329
-#define ARG_NOFORWARD 330
-#define ARG_NOHEADERS 331
-#define ARG_NOINPLACE 332
-#define ARG_NOLIMIT 333
-#define ARG_NOLIST 334
-#define ARG_NOMIME 335
-#define ARG_NOMOREPROC 336
-#define ARG_NOMSGID 337
-#define ARG_NOPAUSE 338
-#define ARG_NOPUBLIC 339
-#define ARG_NOPUSH 340
-#define ARG_NOREALSIZE 341
-#define ARG_NOSERIALONLY 342
-#define ARG_NOSHOW 343
-#define ARG_NOSTORE 344
-#define ARG_NOT 345
-#define ARG_NOTEXTFIELD 346
-#define ARG_NOVERBOSE 347
-#define ARG_NOWATCH 348
-#define ARG_NOWHATNOWPROC 349
-#define ARG_NOZERO 350
-#define ARG_NUMFIELD 351
-#define ARG_OR 352
-#define ARG_PART 353
-#define ARG_PATTERN 354
-#define ARG_PAUSE 355
-#define ARG_POP 356
-#define ARG_PRESERVE 357
-#define ARG_PRINT 358
-#define ARG_PROMPT 359
-#define ARG_PUBLIC 360
-#define ARG_PUSH 361
-#define ARG_QUERY 362
-#define ARG_QUIET 363
-#define ARG_RBRACE 364
-#define ARG_REALSIZE 365
-#define ARG_RECURSIVE 366
-#define ARG_REORDER 367
-#define ARG_REVERSE 368
-#define ARG_SEQUENCE 369
-#define ARG_SERIALONLY 370
-#define ARG_SHOW 371
-#define ARG_SOURCE 372
-#define ARG_SPLIT 373
-#define ARG_STORE 374
-#define ARG_SUBJECT 375
-#define ARG_TEXT 376
-#define ARG_TEXTFIELD 377
-#define ARG_TO 378
-#define ARG_TOTAL 379
-#define ARG_TRUNCATE 380
-#define ARG_TYPE 381
-#define ARG_USE 382
-#define ARG_VERBOSE 383
-#define ARG_WATCH 384
-#define ARG_WHATNOWPROC 385
-#define ARG_WIDTH 386
-#define ARG_ZERO 387
+#define ARG_ADD 257
+#define ARG_AFTER 258
+#define ARG_ALIAS 259
+#define ARG_ALL 260
+#define ARG_AND 261
+#define ARG_ANNOTATE 262
+#define ARG_AUDIT 263
+#define ARG_AUTO 264
+#define ARG_BEFORE 265
+#define ARG_BELL 266
+#define ARG_BUILD 267
+#define ARG_CC 268
+#define ARG_CFLAGS 269
+#define ARG_CHANGECUR 270
+#define ARG_CHECK 271
+#define ARG_CLEAR 272
+#define ARG_COMPAT 273
+#define ARG_COMPONENT 274
+#define ARG_COMPOSE 275
+#define ARG_CREATE 276
+#define ARG_DATE 277
+#define ARG_DATEFIELD 278
+#define ARG_DEBUG 279
+#define ARG_DELETE 280
+#define ARG_DRAFT 281
+#define ARG_DRAFTFOLDER 282
+#define ARG_DRAFTMESSAGE 283
+#define ARG_DRY_RUN 284
+#define ARG_DUMP 285
+#define ARG_EDITOR 286
+#define ARG_FAST 287
+#define ARG_FCC 288
+#define ARG_FILE 289
+#define ARG_FILTER 290
+#define ARG_FOLDER 291
+#define ARG_FORM 292
+#define ARG_FORMAT 293
+#define ARG_FORWARD 294
+#define ARG_FROM 295
+#define ARG_HEADER 296
+#define ARG_INPLACE 297
+#define ARG_INTERACTIVE 298
+#define ARG_LBRACE 299
+#define ARG_LENGTH 300
+#define ARG_LICENSE 301
+#define ARG_LIMIT 302
+#define ARG_LINK 303
+#define ARG_LIST 304
+#define ARG_MIME 305
+#define ARG_MOREPROC 306
+#define ARG_MSGID 307
+#define ARG_NOAUDIT 308
+#define ARG_NOAUTO 309
+#define ARG_NOBELL 310
+#define ARG_NOCC 311
+#define ARG_NOCHANGECUR 312
+#define ARG_NOCHECK 313
+#define ARG_NOCLEAR 314
+#define ARG_NOCOMPOSE 315
+#define ARG_NOCREATE 316
+#define ARG_NODATE 317
+#define ARG_NODATEFIELD 318
+#define ARG_NODRAFTFOLDER 319
+#define ARG_NOEDIT 320
+#define ARG_NOFAST 321
+#define ARG_NOFILTER 322
+#define ARG_NOFORMAT 323
+#define ARG_NOFORWARD 324
+#define ARG_NOHEADER 325
+#define ARG_NOHEADERS 326
+#define ARG_NOINTERACTIVE 327
+#define ARG_NOINPLACE 328
+#define ARG_NOLIMIT 329
+#define ARG_NOLIST 330
+#define ARG_NOMIME 331
+#define ARG_NOMOREPROC 332
+#define ARG_NOMSGID 333
+#define ARG_NOPAUSE 334
+#define ARG_NOPUBLIC 335
+#define ARG_NOPUSH 336
+#define ARG_NOREALSIZE 337
+#define ARG_NORECURSIVE 338
+#define ARG_NOREVERSE 339
+#define ARG_NOSERIALONLY 340
+#define ARG_NOSHOW 341
+#define ARG_NOSTORE 342
+#define ARG_NOT 343
+#define ARG_NOTEXTFIELD 344
+#define ARG_NOTOTAL 345
+#define ARG_NOTRUNCATE 346
+#define ARG_NOUSE 347
+#define ARG_NOVERBOSE 348
+#define ARG_NOWATCH 349
+#define ARG_NOWHATNOWPROC 350
+#define ARG_NOZERO 351
+#define ARG_NUMFIELD 352
+#define ARG_OR 353
+#define ARG_PART 354
+#define ARG_PATTERN 355
+#define ARG_PAUSE 356
+#define ARG_POP 357
+#define ARG_PRESERVE 358
+#define ARG_PRINT 359
+#define ARG_PROMPT 360
+#define ARG_PUBLIC 361
+#define ARG_PUSH 362
+#define ARG_QUERY 363
+#define ARG_QUIET 364
+#define ARG_RBRACE 365
+#define ARG_REALSIZE 366
+#define ARG_RECURSIVE 367
+#define ARG_REORDER 368
+#define ARG_REVERSE 369
+#define ARG_SEQUENCE 370
+#define ARG_SERIALONLY 371
+#define ARG_SHOW 372
+#define ARG_SOURCE 373
+#define ARG_SPLIT 374
+#define ARG_STORE 375
+#define ARG_SUBJECT 376
+#define ARG_TEXT 377
+#define ARG_TEXTFIELD 378
+#define ARG_TO 379
+#define ARG_TOTAL 380
+#define ARG_TRUNCATE 381
+#define ARG_TYPE 382
+#define ARG_USE 383
+#define ARG_VERBOSE 384
+#define ARG_WATCH 385
+#define ARG_WHATNOWPROC 386
+#define ARG_WIDTH 387
+#define ARG_ZERO 388
void mh_argv_preproc __P((int argc, char **argv, struct mh_argp_data *data));
int mh_getopt __P((int argc, char **argv, struct mh_option *mh_opt,
diff --git a/mh/mhl.c b/mh/mhl.c
index 35f91f7d4..bd9fe90ed 100644
--- a/mh/mhl.c
+++ b/mh/mhl.c
@@ -46,6 +46,8 @@ static struct argp_option options[] = {
N_("Use given PROG instead of the default") },
{"nomoreproc", ARG_NOMOREPROC, NULL, 0,
N_("Disable use of moreproc program") },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ NULL }
};
@@ -129,6 +131,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
nomoreproc = 1;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/mhn.c b/mh/mhn.c
index 7e1310f7d..99c565bf5 100644
--- a/mh/mhn.c
+++ b/mh/mhn.c
@@ -82,6 +82,8 @@ static struct argp_option options[] = {
{"noverbose", ARG_NOVERBOSE, NULL, OPTION_HIDDEN, "", 41 },
{"quiet", ARG_QUIET, 0, 0,
N_("Be quiet")},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{NULL}
};
@@ -388,6 +390,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
mode_options |= OPT_QUIET;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/mhpath.c b/mh/mhpath.c
index 26cb4941b..71718f189 100644
--- a/mh/mhpath.c
+++ b/mh/mhpath.c
@@ -28,6 +28,8 @@ static char args_doc[] = N_("[+folder] [msgs]");
static struct argp_option options[] = {
{"folder", ARG_FOLDER, N_("FOLDER"), 0,
N_("Specify folder to operate upon")},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -45,6 +47,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
current_folder = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/pick.c b/mh/pick.c
index 78a29eb2d..c1a8b6591 100644
--- a/mh/pick.c
+++ b/mh/pick.c
@@ -89,6 +89,8 @@ static struct argp_option options[] = {
{"zero", ARG_ZERO, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Empty the sequence before adding messages"), 4},
{"nozero", ARG_NOZERO, NULL, OPTION_HIDDEN, "", 4 },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{NULL},
};
@@ -282,6 +284,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
pick_add_token (&lexlist, T_STRING, p);
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/refile.c b/mh/refile.c
index b33e446bd..481f954c0 100644
--- a/mh/refile.c
+++ b/mh/refile.c
@@ -45,6 +45,8 @@ static struct argp_option options[] = {
N_("Specify source folder. FOLDER will become the current folder after the program exits.")},
{"src", 0, NULL, OPTION_ALIAS, NULL},
{"file", ARG_FILE, N_("FILE"), 0, N_("Use FILE as the source message")},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -174,6 +176,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
source_file = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/repl.c b/mh/repl.c
index 088a1ffaf..17801a92d 100644
--- a/mh/repl.c
+++ b/mh/repl.c
@@ -61,6 +61,8 @@ static struct argp_option options[] = {
{"nowhatnowproc", ARG_NOWHATNOWPROC, NULL, 0,
N_("* Ignore whatnowproc variable. Use standard `whatnow' shell instead.")},
{"use", ARG_USE, N_("BOOL"), OPTION_ARG_OPTIONAL, N_("Use draft file preserved after the last session") },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -200,6 +202,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
argp_error (state, _("option is not yet implemented"));
exit (1);
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/rmf.c b/mh/rmf.c
index aec3f5aed..475e24a78 100644
--- a/mh/rmf.c
+++ b/mh/rmf.c
@@ -39,8 +39,12 @@ static struct argp_option options[] = {
N_("Specify the folder to delete")},
{"interactive", ARG_INTERACTIVE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Interactive mode: ask for confirmation before removing each folder")},
+ {"nointeractive", ARG_NOINTERACTIVE, NULL, OPTION_HIDDEN, ""},
{"recursive", ARG_RECURSIVE, NULL, 0,
N_("Recursively delete all subfolders")},
+ {"norecursive", ARG_NORECURSIVE, NULL, OPTION_HIDDEN, ""},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -68,10 +72,22 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
interactive = is_true (arg);
break;
+ case ARG_NOINTERACTIVE:
+ interactive = 0;
+ break;
+
case ARG_RECURSIVE:
recurse = is_true (arg);
break;
+ case ARG_NORECURSIVE:
+ recurse = 0;
+ break;
+
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/rmm.c b/mh/rmm.c
index ee79d5855..bc67fba5b 100644
--- a/mh/rmm.c
+++ b/mh/rmm.c
@@ -28,6 +28,8 @@ static char args_doc[] = N_("[+folder] [msgs]");
static struct argp_option options[] = {
{"folder", ARG_FOLDER, N_("FOLDER"), 0,
N_("Specify folder to operate upon")},
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -45,6 +47,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
current_folder = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/scan.c b/mh/scan.c
index 0c8a71ffd..38e8209b5 100644
--- a/mh/scan.c
+++ b/mh/scan.c
@@ -37,6 +37,7 @@ static struct argp_option options[] = {
N_("Specify folder to scan")},
{"clear", ARG_CLEAR, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("Clear screen after displaying the list")},
+ {"noclear", ARG_NOCLEAR, NULL, OPTION_HIDDEN, ""},
{"form", ARG_FORM, N_("FILE"), 0,
N_("Read format from given file")},
{"format", ARG_FORMAT, N_("FORMAT"), 0,
@@ -47,6 +48,7 @@ static struct argp_option options[] = {
N_("Set output width")},
{"reverse", ARG_REVERSE, N_("BOOL"), OPTION_ARG_OPTIONAL,
N_("List messages in reverse order")},
+ {"noreverse", ARG_NOREVERSE, NULL, OPTION_HIDDEN, ""},
{"file", ARG_FILE, N_("FILE"), 0,
N_("[Not yet implemented]")},
@@ -95,6 +97,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
case ARG_CLEAR:
clear = is_true(arg);
break;
+
+ case ARG_NOCLEAR:
+ clear = 0;
+ break;
case ARG_FORM:
mh_read_formfile (arg, &format_str);
@@ -120,6 +126,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
case ARG_REVERSE:
reverse = is_true(arg);
break;
+
+ case ARG_NOREVERSE:
+ reverse = 0;
+ break;
case ARG_FILE:
argp_error (state, _("option is not yet implemented"));
diff --git a/mh/send.c b/mh/send.c
index 45694dab8..200beeb19 100644
--- a/mh/send.c
+++ b/mh/send.c
@@ -71,6 +71,8 @@ static struct argp_option options[] = {
{"nowatch", ARG_NOWATCH, NULL, OPTION_HIDDEN, "" },
{"width", ARG_WIDTH, N_("NUMBER"), 0,
N_("* Make header fields no longer than NUMBER columns") },
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
{ 0 }
};
@@ -224,6 +226,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
}
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/sortm.c b/mh/sortm.c
index 54265e249..b264ffa35 100644
--- a/mh/sortm.c
+++ b/mh/sortm.c
@@ -73,6 +73,10 @@ static struct argp_option options[] = {
N_("Use shell algorithm"), 40 },
{"quicksort", ARG_QUICKSORT, 0, 0,
N_("Use quicksort algorithm (default)"), 40 },
+
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
+
{ NULL },
};
@@ -185,6 +189,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
algorithm = key;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/whatnow.c b/mh/whatnow.c
index e669d0ea7..7766761b3 100644
--- a/mh/whatnow.c
+++ b/mh/whatnow.c
@@ -34,6 +34,10 @@ static struct argp_option options[] = {
{"editor", ARG_EDITOR, N_("PROG"), 0, N_("Set the editor program to use")},
{"noedit", ARG_NOEDIT, 0, 0, N_("Suppress the initial edit")},
{"prompt", ARG_PROMPT, N_("STRING"), 0, N_("Set the prompt")},
+
+ {"license", ARG_LICENSE, 0, 0,
+ N_("Display software license"), -1},
+
{ NULL }
};
@@ -80,6 +84,10 @@ opt_handler (int key, char *arg, void *unused, struct argp_state *state)
wh_env.prompt = arg;
break;
+ case ARG_LICENSE:
+ mh_license (argp_program_version);
+ break;
+
default:
return 1;
}
diff --git a/mh/whom.c b/mh/whom.c
index 0ea61929c..ad2a9d46e 100644
--- a/mh/whom.c
+++ b/mh/whom.c
@@ -37,6 +37,10 @@ static struct argp_option options[] = {