mirror of git://git.sv.gnu.org/nano.git
options: add -? as a synonym of -h (--help)
The short option '-?' was removed nine years ago in commit43019189
, then restored six years later in5bd92d4c
, and then removed again two months later in743100fe
due to getopt() returning '?' for options that aren't recognized, preventing the use of '-?' as a valid option. However, getopt() provides a way to check for unrecognized options via the 'optopt' variable, which gets set only for invalid options. Signed-off-by: Mateusz Kazimierczuk <mataha+savannah@protonmail.com> Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
This commit is contained in:
parent
d3dd403dc7
commit
e65b0ba654
|
@ -250,7 +250,7 @@ Make the cursor visible in the file browser (putting it on the
|
|||
highlighted item) and in the help viewer. Useful for braille users
|
||||
and people with poor vision.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
.BR \-h ", " \-? ", " \-\-help
|
||||
Show a summary of the available command-line options and exit.
|
||||
.TP
|
||||
.BR \-i ", " \-\-autoindent
|
||||
|
|
|
@ -574,6 +574,7 @@ highlighted item) and in the help viewer. Useful for braille users
|
|||
and people with poor vision.
|
||||
|
||||
@item -h
|
||||
@itemx -?
|
||||
@itemx --help
|
||||
Show a summary of command-line options and exit.
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ not allow appending or prepending to any file.
|
|||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
.BR \-h ", " \-? ", " \-\-help
|
||||
Show the available command-line options and exit.
|
||||
.P
|
||||
For all existing options, see the \fBnano\fR(1) man page.
|
||||
|
|
15
src/nano.c
15
src/nano.c
|
@ -607,7 +607,7 @@ void usage(void)
|
|||
#if defined(ENABLE_BROWSER) || defined(ENABLE_HELP)
|
||||
print_opt("-g", "--showcursor", N_("Show cursor in file browser & help text"));
|
||||
#endif
|
||||
print_opt("-h", "--help", N_("Show this help text and exit"));
|
||||
print_opt("-h, -?", "--help", N_("Show this help text and exit"));
|
||||
#ifndef NANO_TINY
|
||||
print_opt("-i", "--autoindent", N_("Automatically indent new lines"));
|
||||
print_opt("-j", "--jumpyscrolling", N_("Scroll per half-screen, not per line"));
|
||||
|
@ -1849,7 +1849,7 @@ int main(int argc, char **argv)
|
|||
SET(RESTRICTED);
|
||||
|
||||
while ((optchr = getopt_long(argc, argv, "ABC:DEFGHIJ:KLMNOPQ:RS$T:UVWX:Y:Z"
|
||||
"abcdef:ghijklmno:pqr:s:tuvwxy!%_0", long_options, NULL)) != -1) {
|
||||
"abcdef:gh?ijklmno:pqr:s:tuvwxy!%_0", long_options, NULL)) != -1) {
|
||||
switch (optchr) {
|
||||
#ifndef NANO_TINY
|
||||
case 'A':
|
||||
|
@ -1999,9 +1999,6 @@ int main(int argc, char **argv)
|
|||
SET(SHOW_CURSOR);
|
||||
break;
|
||||
#endif
|
||||
case 'h':
|
||||
usage();
|
||||
exit(0);
|
||||
#ifndef NANO_TINY
|
||||
case 'i':
|
||||
SET(AUTOINDENT);
|
||||
|
@ -2098,7 +2095,13 @@ int main(int argc, char **argv)
|
|||
SET(ZERO);
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
case 'h':
|
||||
case '?':
|
||||
/* If the option is valid, print the help text and exit. */
|
||||
if (!optopt) {
|
||||
usage();
|
||||
exit(0);
|
||||
}
|
||||
printf(_("Type '%s -h' for a list of available options.\n"), argv[0]);
|
||||
exit(1);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue