[PATCH v6] help: mark boolean flags with [no-] to explain that they can be negated (RFC)
Martin von Zweigbergk
martinvonz at google.com
Thu Sep 29 12:00:48 EDT 2016
Nice. Thanks for doing this. Queued with the "RFC"s removed in flight.
On Thu, Sep 29, 2016 at 8:07 AM, Augie Fackler <raf at durin42.com> wrote:
> # HG changeset patch
> # User Augie Fackler <augie at google.com>
> # Date 1473821892 14400
> # Tue Sep 13 22:58:12 2016 -0400
> # Node ID 95c7c3cbd873412d180f17b5b0dd292094f42746
> # Parent e83f89d3b1f733d0ee5f23f6a2293279a17fbbfb
> help: mark boolean flags with [no-] to explain that they can be negated (RFC)
>
> That is, help gets tweaked thus:
>
> global options ([+] can be repeated):
> -v --[no-]verbose enable additional output
>
>
> Still an RFC because it's still unclear what we should do. Other
> proposals have included:
>
> global options ([+] can be repeated, options marked [?] are boolean flags):
> -v --verbose[?] enable additional output
>
> and
>
> global options ([+] can be repeated, options marked [^] are boolean flags):
> -v --verbose[^] enable additional output
>
> which avoid the unfortunate visual noise in this patch. In this
> version's favor, it's consistent with what I'm used to seeing in man
> pages and similar documentation venues.
>
> diff --git a/mercurial/help.py b/mercurial/help.py
> --- a/mercurial/help.py
> +++ b/mercurial/help.py
> @@ -20,6 +20,7 @@ from . import (
> encoding,
> error,
> extensions,
> + fancyopts,
> filemerge,
> fileset,
> minirst,
> @@ -65,6 +66,7 @@ def extshelp(ui):
> def optrst(header, options, verbose):
> data = []
> multioccur = False
> + alllong = set(o[1] for o in options)
> for option in options:
> if len(option) == 5:
> shortopt, longopt, default, desc, optlabel = option
> @@ -87,6 +89,16 @@ def optrst(header, options, verbose):
> multioccur = True
> elif (default is not None) and not isinstance(default, bool):
> lo += " %s" % optlabel
> + elif longopt not in fancyopts.nevernegate:
> + if longopt.startswith('no-'):
> + # This odd if statement guards against showing
> + # --no-commit and --commit on backout (as a practical
> + # example) as --[no-]commit in help.
> + if (longopt[3:]) not in alllong:
> + lo = '--[no-]' + lo[5:]
> + else:
> + if ('no-' + longopt) not in alllong:
> + lo = '--[no-]' + lo[2:]
>
> data.append((so, lo, desc))
>
> diff --git a/tests/test-convert.t b/tests/test-convert.t
> --- a/tests/test-convert.t
> +++ b/tests/test-convert.t
> @@ -327,13 +327,13 @@
> -r --rev REV [+] import up to source revision REV
> -A --authormap FILE remap usernames using this file
> --filemap FILE remap file names using contents of file
> - --full apply filemap changes by converting all files again
> + --[no-]full apply filemap changes by converting all files again
> --splicemap FILE splice synthesized history into place
> --branchmap FILE change branch names while converting
> - --branchsort try to sort changesets by branches
> - --datesort try to sort changesets by date
> - --sourcesort preserve source changesets order
> - --closesort try to reorder closed revisions
> + --[no-]branchsort try to sort changesets by branches
> + --[no-]datesort try to sort changesets by date
> + --[no-]sourcesort preserve source changesets order
> + --[no-]closesort try to reorder closed revisions
>
> (some details hidden, use --verbose to show complete help)
> $ hg init a
> diff --git a/tests/test-dispatch.t b/tests/test-dispatch.t
> --- a/tests/test-dispatch.t
> +++ b/tests/test-dispatch.t
> @@ -23,7 +23,7 @@ Missing arg:
>
> -o --output FORMAT print output to file with formatted name
> -r --rev REV print the given revision
> - --decode apply any matching decode filter
> + --[no-]decode apply any matching decode filter
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
>
> diff --git a/tests/test-extdiff.t b/tests/test-extdiff.t
> --- a/tests/test-extdiff.t
> +++ b/tests/test-extdiff.t
> @@ -48,10 +48,10 @@ Should diff cloned directories:
> -o --option OPT [+] pass option to comparison program
> -r --rev REV [+] revision
> -c --change REV change made by revision
> - --patch compare patches for two revisions
> + --[no-]patch compare patches for two revisions
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> + -S --[no-]subrepos recurse into subrepositories
>
> (some details hidden, use --verbose to show complete help)
>
> diff --git a/tests/test-extension.t b/tests/test-extension.t
> --- a/tests/test-extension.t
> +++ b/tests/test-extension.t
> @@ -530,19 +530,19 @@ hide outer repo
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
>
>
> @@ -565,19 +565,19 @@ hide outer repo
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
>
>
> @@ -624,10 +624,10 @@ Extension module help vs command help:
> -o --option OPT [+] pass option to comparison program
> -r --rev REV [+] revision
> -c --change REV change made by revision
> - --patch compare patches for two revisions
> + --[no-]patch compare patches for two revisions
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> + -S --[no-]subrepos recurse into subrepositories
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -851,19 +851,19 @@ extension help itself
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> Make sure that single '-v' option shows help and built-ins only for 'dodo' command
> $ hg help -v dodo
> @@ -875,7 +875,7 @@ Make sure that single '-v' option shows
>
> options:
>
> - --mq operate on patch repository
> + --[no-]mq operate on patch repository
>
> global options ([+] can be repeated):
>
> @@ -884,19 +884,19 @@ Make sure that single '-v' option shows
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> In case when extension name doesn't match any of its commands,
> help message should ask for '-v' to get list of built-in aliases
> @@ -955,19 +955,19 @@ help options '-v' and '-v -e' should be
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> $ hg help -v -e dudu
> dudu extension -
> @@ -987,19 +987,19 @@ help options '-v' and '-v -e' should be
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> Disabled extension commands:
>
> diff --git a/tests/test-help.t b/tests/test-help.t
> --- a/tests/test-help.t
> +++ b/tests/test-help.t
> @@ -318,19 +318,19 @@ Test short command list with verbose opt
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> (use 'hg help' for the full list of commands)
>
> @@ -353,8 +353,8 @@ Test short command list with verbose opt
>
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> - -n --dry-run do not perform actions, just print output
> + -S --[no-]subrepos recurse into subrepositories
> + -n --[no-]dry-run do not perform actions, just print output
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -404,8 +404,8 @@ Verbose help for add
>
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> - -n --dry-run do not perform actions, just print output
> + -S --[no-]subrepos recurse into subrepositories
> + -n --[no-]dry-run do not perform actions, just print output
>
> global options ([+] can be repeated):
>
> @@ -414,19 +414,19 @@ Verbose help for add
> --cwd DIR change working directory
> -y --noninteractive do not prompt, automatically pick the first choice for
> all prompts
> - -q --quiet suppress output
> - -v --verbose enable additional output
> + -q --[no-]quiet suppress output
> + -v --[no-]verbose enable additional output
> --config CONFIG [+] set/override config option (use 'section.name=value')
> - --debug enable debugging output
> - --debugger start debugger
> + --[no-]debug enable debugging output
> + --[no-]debugger start debugger
> --encoding ENCODE set the charset encoding (default: ascii)
> --encodingmode MODE set the charset encoding mode (default: strict)
> - --traceback always print a traceback on exception
> - --time time how long the command takes
> - --profile print command execution profile
> + --[no-]traceback always print a traceback on exception
> + --[no-]time time how long the command takes
> + --[no-]profile print command execution profile
> --version output version information and exit
> -h --help display help and exit
> - --hidden consider hidden changesets
> + --[no-]hidden consider hidden changesets
>
> Test the textwidth config option
>
> @@ -464,8 +464,8 @@ Test help option with version option
>
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> - -n --dry-run do not perform actions, just print output
> + -S --[no-]subrepos recurse into subrepositories
> + -n --[no-]dry-run do not perform actions, just print output
>
> (use 'hg add -h' to show more help)
> [255]
> @@ -534,23 +534,23 @@ Test command without options
>
> options ([+] can be repeated):
>
> - -r --rev REV [+] revision
> - -c --change REV change made by revision
> - -a --text treat all files as text
> - -g --git use git extended diff format
> - --nodates omit dates from diff headers
> - --noprefix omit a/ and b/ prefixes from filenames
> - -p --show-function show which function each change is in
> - --reverse produce a diff that undoes the changes
> - -w --ignore-all-space ignore white space when comparing lines
> - -b --ignore-space-change ignore changes in the amount of white space
> - -B --ignore-blank-lines ignore changes whose lines are all blank
> - -U --unified NUM number of lines of context to show
> - --stat output diffstat-style summary of changes
> - --root DIR produce diffs relative to subdirectory
> - -I --include PATTERN [+] include names matching the given patterns
> - -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> + -r --rev REV [+] revision
> + -c --change REV change made by revision
> + -a --[no-]text treat all files as text
> + -g --[no-]git use git extended diff format
> + --[no-]nodates omit dates from diff headers
> + --[no-]noprefix omit a/ and b/ prefixes from filenames
> + -p --[no-]show-function show which function each change is in
> + --[no-]reverse produce a diff that undoes the changes
> + -w --[no-]ignore-all-space ignore white space when comparing lines
> + -b --[no-]ignore-space-change ignore changes in the amount of white space
> + -B --[no-]ignore-blank-lines ignore changes whose lines are all blank
> + -U --unified NUM number of lines of context to show
> + --[no-]stat output diffstat-style summary of changes
> + --root DIR produce diffs relative to subdirectory
> + -I --include PATTERN [+] include names matching the given patterns
> + -X --exclude PATTERN [+] exclude names matching the given patterns
> + -S --[no-]subrepos recurse into subrepositories
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -596,22 +596,22 @@ Test command without options
>
> options ([+] can be repeated):
>
> - -A --all show status of all files
> - -m --modified show only modified files
> - -a --added show only added files
> - -r --removed show only removed files
> - -d --deleted show only deleted (but tracked) files
> - -c --clean show only files without changes
> - -u --unknown show only unknown (not tracked) files
> - -i --ignored show only ignored files
> - -n --no-status hide status prefix
> - -C --copies show source of copied files
> - -0 --print0 end filenames with NUL, for use with xargs
> + -A --[no-]all show status of all files
> + -m --[no-]modified show only modified files
> + -a --[no-]added show only added files
> + -r --[no-]removed show only removed files
> + -d --[no-]deleted show only deleted (but tracked) files
> + -c --[no-]clean show only files without changes
> + -u --[no-]unknown show only unknown (not tracked) files
> + -i --[no-]ignored show only ignored files
> + -n --[no-]status hide status prefix
> + -C --[no-]copies show source of copied files
> + -0 --[no-]print0 end filenames with NUL, for use with xargs
> --rev REV [+] show difference from revision
> --change REV list the changed files of a revision
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - -S --subrepos recurse into subrepositories
> + -S --[no-]subrepos recurse into subrepositories
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -717,7 +717,7 @@ Test for aliases
>
> options:
>
> - --remote check for push and pull
> + --[no-]remote check for push and pull
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -743,7 +743,7 @@ Test command with no help text
>
> --longdesc VALUE xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (default: 3)
> - -n -- normal desc
> + -n --[no-] normal desc
> --newline VALUE line1 line2
>
> (some details hidden, use --verbose to show complete help)
> @@ -1128,9 +1128,9 @@ test deprecated and experimental options
>
> test deprecated and experimental options is shown with -v
> $ hg help -v debugoptDEP | grep dopt
> - --dopt option is (DEPRECATED)
> + --[no-]dopt option is (DEPRECATED)
> $ hg help -v debugoptEXP | grep eopt
> - --eopt option is (EXPERIMENTAL)
> + --[no-]eopt option is (EXPERIMENTAL)
>
> #if gettext
> test deprecated option is hidden with translation with untranslated description
> @@ -2474,10 +2474,10 @@ Dish up an empty repo; serve it cold.
> <td>--exclude PATTERN [+]</td>
> <td>exclude names matching the given patterns</td></tr>
> <tr><td>-S</td>
> - <td>--subrepos</td>
> + <td>--[no-]subrepos</td>
> <td>recurse into subrepositories</td></tr>
> <tr><td>-n</td>
> - <td>--dry-run</td>
> + <td>--[no-]dry-run</td>
> <td>do not perform actions, just print output</td></tr>
> </table>
> <p>
> @@ -2494,19 +2494,19 @@ Dish up an empty repo; serve it cold.
> <td>--noninteractive</td>
> <td>do not prompt, automatically pick the first choice for all prompts</td></tr>
> <tr><td>-q</td>
> - <td>--quiet</td>
> + <td>--[no-]quiet</td>
> <td>suppress output</td></tr>
> <tr><td>-v</td>
> - <td>--verbose</td>
> + <td>--[no-]verbose</td>
> <td>enable additional output</td></tr>
> <tr><td></td>
> <td>--config CONFIG [+]</td>
> <td>set/override config option (use 'section.name=value')</td></tr>
> <tr><td></td>
> - <td>--debug</td>
> + <td>--[no-]debug</td>
> <td>enable debugging output</td></tr>
> <tr><td></td>
> - <td>--debugger</td>
> + <td>--[no-]debugger</td>
> <td>start debugger</td></tr>
> <tr><td></td>
> <td>--encoding ENCODE</td>
> @@ -2515,13 +2515,13 @@ Dish up an empty repo; serve it cold.
> <td>--encodingmode MODE</td>
> <td>set the charset encoding mode (default: strict)</td></tr>
> <tr><td></td>
> - <td>--traceback</td>
> + <td>--[no-]traceback</td>
> <td>always print a traceback on exception</td></tr>
> <tr><td></td>
> - <td>--time</td>
> + <td>--[no-]time</td>
> <td>time how long the command takes</td></tr>
> <tr><td></td>
> - <td>--profile</td>
> + <td>--[no-]profile</td>
> <td>print command execution profile</td></tr>
> <tr><td></td>
> <td>--version</td>
> @@ -2530,7 +2530,7 @@ Dish up an empty repo; serve it cold.
> <td>--help</td>
> <td>display help and exit</td></tr>
> <tr><td></td>
> - <td>--hidden</td>
> + <td>--[no-]hidden</td>
> <td>consider hidden changesets</td></tr>
> </table>
>
> @@ -2661,13 +2661,13 @@ Dish up an empty repo; serve it cold.
> </p>
> <table>
> <tr><td>-A</td>
> - <td>--after</td>
> + <td>--[no-]after</td>
> <td>record delete for missing files</td></tr>
> <tr><td>-f</td>
> - <td>--force</td>
> + <td>--[no-]force</td>
> <td>forget added files, delete modified files</td></tr>
> <tr><td>-S</td>
> - <td>--subrepos</td>
> + <td>--[no-]subrepos</td>
> <td>recurse into subrepositories</td></tr>
> <tr><td>-I</td>
> <td>--include PATTERN [+]</td>
> @@ -2690,19 +2690,19 @@ Dish up an empty repo; serve it cold.
> <td>--noninteractive</td>
> <td>do not prompt, automatically pick the first choice for all prompts</td></tr>
> <tr><td>-q</td>
> - <td>--quiet</td>
> + <td>--[no-]quiet</td>
> <td>suppress output</td></tr>
> <tr><td>-v</td>
> - <td>--verbose</td>
> + <td>--[no-]verbose</td>
> <td>enable additional output</td></tr>
> <tr><td></td>
> <td>--config CONFIG [+]</td>
> <td>set/override config option (use 'section.name=value')</td></tr>
> <tr><td></td>
> - <td>--debug</td>
> + <td>--[no-]debug</td>
> <td>enable debugging output</td></tr>
> <tr><td></td>
> - <td>--debugger</td>
> + <td>--[no-]debugger</td>
> <td>start debugger</td></tr>
> <tr><td></td>
> <td>--encoding ENCODE</td>
> @@ -2711,13 +2711,13 @@ Dish up an empty repo; serve it cold.
> <td>--encodingmode MODE</td>
> <td>set the charset encoding mode (default: strict)</td></tr>
> <tr><td></td>
> - <td>--traceback</td>
> + <td>--[no-]traceback</td>
> <td>always print a traceback on exception</td></tr>
> <tr><td></td>
> - <td>--time</td>
> + <td>--[no-]time</td>
> <td>time how long the command takes</td></tr>
> <tr><td></td>
> - <td>--profile</td>
> + <td>--[no-]profile</td>
> <td>print command execution profile</td></tr>
> <tr><td></td>
> <td>--version</td>
> @@ -2726,7 +2726,7 @@ Dish up an empty repo; serve it cold.
> <td>--help</td>
> <td>display help and exit</td></tr>
> <tr><td></td>
> - <td>--hidden</td>
> + <td>--[no-]hidden</td>
> <td>consider hidden changesets</td></tr>
> </table>
>
> diff --git a/tests/test-mq-qrefresh-interactive.t b/tests/test-mq-qrefresh-interactive.t
> --- a/tests/test-mq-qrefresh-interactive.t
> +++ b/tests/test-mq-qrefresh-interactive.t
> @@ -31,13 +31,13 @@ help qrefresh (no record)
>
> options ([+] can be repeated):
>
> - -e --edit invoke editor on commit messages
> - -g --git use git extended diff format
> - -s --short refresh only files already in the patch and
> + -e --[no-]edit invoke editor on commit messages
> + -g --[no-]git use git extended diff format
> + -s --[no-]short refresh only files already in the patch and
> specified files
> - -U --currentuser add/update author field in patch with current user
> + -U --[no-]currentuser add/update author field in patch with current user
> -u --user USER add/update author field in patch with given user
> - -D --currentdate add/update date field in patch with current date
> + -D --[no-]currentdate add/update date field in patch with current date
> -d --date DATE add/update date field in patch with given date
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> @@ -73,19 +73,19 @@ help qrefresh (record)
>
> options ([+] can be repeated):
>
> - -e --edit invoke editor on commit messages
> - -g --git use git extended diff format
> - -s --short refresh only files already in the patch and
> + -e --[no-]edit invoke editor on commit messages
> + -g --[no-]git use git extended diff format
> + -s --[no-]short refresh only files already in the patch and
> specified files
> - -U --currentuser add/update author field in patch with current user
> + -U --[no-]currentuser add/update author field in patch with current user
> -u --user USER add/update author field in patch with given user
> - -D --currentdate add/update date field in patch with current date
> + -D --[no-]currentdate add/update date field in patch with current date
> -d --date DATE add/update date field in patch with given date
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> -m --message TEXT use text as commit message
> -l --logfile FILE read commit message from file
> - -i --interactive interactively select changes to refresh
> + -i --[no-]interactive interactively select changes to refresh
>
> (some details hidden, use --verbose to show complete help)
>
> diff --git a/tests/test-qrecord.t b/tests/test-qrecord.t
> --- a/tests/test-qrecord.t
> +++ b/tests/test-qrecord.t
> @@ -59,22 +59,22 @@ help record (record)
>
> options ([+] can be repeated):
>
> - -A --addremove mark new/missing files as added/removed before
> - committing
> - --close-branch mark a branch head as closed
> - --amend amend the parent of the working directory
> - -s --secret use the secret phase for committing
> - -e --edit invoke editor on commit messages
> - -I --include PATTERN [+] include names matching the given patterns
> - -X --exclude PATTERN [+] exclude names matching the given patterns
> - -m --message TEXT use text as commit message
> - -l --logfile FILE read commit message from file
> - -d --date DATE record the specified date as commit date
> - -u --user USER record the specified user as committer
> - -S --subrepos recurse into subrepositories
> - -w --ignore-all-space ignore white space when comparing lines
> - -b --ignore-space-change ignore changes in the amount of white space
> - -B --ignore-blank-lines ignore changes whose lines are all blank
> + -A --[no-]addremove mark new/missing files as added/removed before
> + committing
> + --[no-]close-branch mark a branch head as closed
> + --[no-]amend amend the parent of the working directory
> + -s --[no-]secret use the secret phase for committing
> + -e --[no-]edit invoke editor on commit messages
> + -I --include PATTERN [+] include names matching the given patterns
> + -X --exclude PATTERN [+] exclude names matching the given patterns
> + -m --message TEXT use text as commit message
> + -l --logfile FILE read commit message from file
> + -d --date DATE record the specified date as commit date
> + -u --user USER record the specified user as committer
> + -S --[no-]subrepos recurse into subrepositories
> + -w --[no-]ignore-all-space ignore white space when comparing lines
> + -b --[no-]ignore-space-change ignore changes in the amount of white space
> + -B --[no-]ignore-blank-lines ignore changes whose lines are all blank
>
> (some details hidden, use --verbose to show complete help)
>
> @@ -135,20 +135,20 @@ help (mq present)
>
> options ([+] can be repeated):
>
> - -e --edit invoke editor on commit messages
> - -g --git use git extended diff format
> - -U --currentuser add "From: <current user>" to patch
> - -u --user USER add "From: <USER>" to patch
> - -D --currentdate add "Date: <current date>" to patch
> - -d --date DATE add "Date: <DATE>" to patch
> - -I --include PATTERN [+] include names matching the given patterns
> - -X --exclude PATTERN [+] exclude names matching the given patterns
> - -m --message TEXT use text as commit message
> - -l --logfile FILE read commit message from file
> - -w --ignore-all-space ignore white space when comparing lines
> - -b --ignore-space-change ignore changes in the amount of white space
> - -B --ignore-blank-lines ignore changes whose lines are all blank
> - --mq operate on patch repository
> + -e --[no-]edit invoke editor on commit messages
> + -g --[no-]git use git extended diff format
> + -U --[no-]currentuser add "From: <current user>" to patch
> + -u --user USER add "From: <USER>" to patch
> + -D --[no-]currentdate add "Date: <current date>" to patch
> + -d --date DATE add "Date: <DATE>" to patch
> + -I --include PATTERN [+] include names matching the given patterns
> + -X --exclude PATTERN [+] exclude names matching the given patterns
> + -m --message TEXT use text as commit message
> + -l --logfile FILE read commit message from file
> + -w --[no-]ignore-all-space ignore white space when comparing lines
> + -b --[no-]ignore-space-change ignore changes in the amount of white space
> + -B --[no-]ignore-blank-lines ignore changes whose lines are all blank
> + --[no-]mq operate on patch repository
>
> (some details hidden, use --verbose to show complete help)
>
> diff --git a/tests/test-record.t b/tests/test-record.t
> --- a/tests/test-record.t
> +++ b/tests/test-record.t
> @@ -45,22 +45,22 @@ Record help
>
> options ([+] can be repeated):
>
> - -A --addremove mark new/missing files as added/removed before
> - committing
> - --close-branch mark a branch head as closed
> - --amend amend the parent of the working directory
> - -s --secret use the secret phase for committing
> - -e --edit invoke editor on commit messages
> - -I --include PATTERN [+] include names matching the given patterns
> - -X --exclude PATTERN [+] exclude names matching the given patterns
> - -m --message TEXT use text as commit message
> - -l --logfile FILE read commit message from file
> - -d --date DATE record the specified date as commit date
> - -u --user USER record the specified user as committer
> - -S --subrepos recurse into subrepositories
> - -w --ignore-all-space ignore white space when comparing lines
> - -b --ignore-space-change ignore changes in the amount of white space
> - -B --ignore-blank-lines ignore changes whose lines are all blank
> + -A --[no-]addremove mark new/missing files as added/removed before
> + committing
> + --[no-]close-branch mark a branch head as closed
> + --[no-]amend amend the parent of the working directory
> + -s --[no-]secret use the secret phase for committing
> + -e --[no-]edit invoke editor on commit messages
> + -I --include PATTERN [+] include names matching the given patterns
> + -X --exclude PATTERN [+] exclude names matching the given patterns
> + -m --message TEXT use text as commit message
> + -l --logfile FILE read commit message from file
> + -d --date DATE record the specified date as commit date
> + -u --user USER record the specified user as committer
> + -S --[no-]subrepos recurse into subrepositories
> + -w --[no-]ignore-all-space ignore white space when comparing lines
> + -b --[no-]ignore-space-change ignore changes in the amount of white space
> + -B --[no-]ignore-blank-lines ignore changes whose lines are all blank
>
> (some details hidden, use --verbose to show complete help)
>
> diff --git a/tests/test-shelve.t b/tests/test-shelve.t
> --- a/tests/test-shelve.t
> +++ b/tests/test-shelve.t
> @@ -58,22 +58,22 @@ shelve has a help message
>
> options ([+] can be repeated):
>
> - -A --addremove mark new/missing files as added/removed before
> + -A --[no-]addremove mark new/missing files as added/removed before
> shelving
> - -u --unknown store unknown files in the shelve
> - --cleanup delete all shelved changes
> + -u --[no-]unknown store unknown files in the shelve
> + --[no-]cleanup delete all shelved changes
> --date DATE shelve with the specified commit date
> - -d --delete delete the named shelved change(s)
> - -e --edit invoke editor on commit messages
> - -l --list list current shelves
> + -d --[no-]delete delete the named shelved change(s)
> + -e --[no-]edit invoke editor on commit messages
> + -l --[no-]list list current shelves
> -m --message TEXT use text as shelve message
> -n --name NAME use the given name for the shelved commit
> - -p --patch show patch
> - -i --interactive interactive mode, only works while creating a shelve
> - --stat output diffstat-style summary of changes
> + -p --[no-]patch show patch
> + -i --[no-]interactive interactive mode, only works while creating a shelve
> + --[no-]stat output diffstat-style summary of changes
> -I --include PATTERN [+] include names matching the given patterns
> -X --exclude PATTERN [+] exclude names matching the given patterns
> - --mq operate on patch repository
> + --[no-]mq operate on patch repository
>
> (some details hidden, use --verbose to show complete help)
>
> diff --git a/tests/test-strip.t b/tests/test-strip.t
> --- a/tests/test-strip.t
> +++ b/tests/test-strip.t
> @@ -710,12 +710,12 @@ Make sure no one adds back a -b option:
>
> -r --rev REV [+] strip specified revision (optional, can specify
> revisions without this option)
> - -f --force force removal of changesets, discard uncommitted
> + -f --[no-]force force removal of changesets, discard uncommitted
> changes (no backup)
> - --no-backup no backups
> - -k --keep do not modify working directory during strip
> + --[no-]backup no backups
> + -k --[no-]keep do not modify working directory during strip
> -B --bookmark VALUE [+] remove revs only reachable from given bookmark
> - --mq operate on patch repository
> + --[no-]mq operate on patch repository
>
> (use 'hg strip -h' to show more help)
> [255]
>
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list