diff --git a/mercurial/help.py b/mercurial/help.py --- a/mercurial/help.py +++ b/mercurial/help.py @@ -160,20 +160,18 @@ if shortopt: so = '-' + shortopt lo = '--' + longopt - if isinstance(default, bool): + if default is True: lo = '--[no-]' + longopt if isinstance(default, fancyopts.customopt): default = default.getdefaultvalue() - if (default and not callable(default)) or default is False: + if (default and not callable(default)): # default is of unknown type, and in Python 2 we abused # the %s-shows-repr property to handle integers etc. To # match that behavior on Python 3, we do str(default) and # then convert it to bytes. - defaultstr = pycompat.bytestr(default) - if isinstance(default, bool): - defaultstr = _("on") if default else _("off") - desc += _(" (default: %s)") % defaultstr + if default is not True: + desc += _(" (default: %s)") % pycompat.bytestr(default) if isinstance(default, list): lo += " %s [+]" % optlabel diff --git a/tests/test-extension.t b/tests/test-extension.t --- a/tests/test-extension.t +++ b/tests/test-extension.t @@ -716,7 +716,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -755,7 +755,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -1043,7 +1043,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -1080,7 +1080,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -1155,7 +1155,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -1191,7 +1191,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) diff --git a/tests/test-fix.t b/tests/test-fix.t --- a/tests/test-fix.t +++ b/tests/test-fix.t @@ -104,13 +104,12 @@ options ([+] can be repeated): - --[no-]all fix all non-public non-obsolete revisions (default: - off) - --base REV [+] revisions to diff against (overrides automatic - selection, and applies to every revision being fixed) - -r --rev REV [+] revisions to fix - -w --[no-]working-dir fix the working directory (default: off) - --[no-]whole always fix every line of a file (default: off) + --all fix all non-public non-obsolete revisions + --base REV [+] revisions to diff against (overrides automatic selection, + and applies to every revision being fixed) + -r --rev REV [+] revisions to fix + -w --working-dir fix the working directory + --whole always fix every line of a file (some details hidden, use --verbose to show complete help) diff --git a/tests/test-help.t b/tests/test-help.t --- a/tests/test-help.t +++ b/tests/test-help.t @@ -440,7 +440,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -540,7 +540,7 @@ --profile print command execution profile --version output version information and exit -h --help display help and exit - --[no-]hidden consider hidden changesets (default: off) + --hidden consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -905,8 +905,8 @@ xxxxxxxxxxxxxxxxxxxxxxx (default: 3) -n -- normal desc --newline VALUE line1 line2 - --[no-]default-off enable X (default: off) - --[no-]default-on enable Y (default: on) + --default-off enable X + --[no-]default-on enable Y --callableopt VALUE adds foo --customopt VALUE adds bar --customopt-withdefault VALUE adds bar (default: foo) @@ -2889,8 +2889,8 @@ --help display help and exit - --[no-]hidden - consider hidden changesets (default: off) + --hidden + consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) @@ -3093,8 +3093,8 @@ --help display help and exit - --[no-]hidden - consider hidden changesets (default: off) + --hidden + consider hidden changesets --pager TYPE when to paginate (boolean, always, auto, or never) (default: auto) diff --git a/tests/test-narrow-trackedcmd.t b/tests/test-narrow-trackedcmd.t --- a/tests/test-narrow-trackedcmd.t +++ b/tests/test-narrow-trackedcmd.t @@ -99,20 +99,18 @@ options ([+] can be repeated): - --addinclude VALUE [+] new paths to include - --removeinclude VALUE [+] old paths to no longer include - --addexclude VALUE [+] new paths to exclude - --import-rules VALUE import narrowspecs from a file - --removeexclude VALUE [+] old paths to no longer exclude - --[no-]clear whether to replace the existing - narrowspec (default: off) - --[no-]force-delete-local-changes forces deletion of local changes when - narrowing (default: off) - -e --ssh CMD specify ssh command to use - --remotecmd CMD specify hg command to run on the remote - side - --insecure do not verify server certificate - (ignoring web.cacerts config) + --addinclude VALUE [+] new paths to include + --removeinclude VALUE [+] old paths to no longer include + --addexclude VALUE [+] new paths to exclude + --import-rules VALUE import narrowspecs from a file + --removeexclude VALUE [+] old paths to no longer exclude + --clear whether to replace the existing narrowspec + --force-delete-local-changes forces deletion of local changes when + narrowing + -e --ssh CMD specify ssh command to use + --remotecmd CMD specify hg command to run on the remote side + --insecure do not verify server certificate (ignoring + web.cacerts config) (use 'hg tracked -h' to show more help) [255] diff --git a/tests/test-shelve.t b/tests/test-shelve.t --- a/tests/test-shelve.t +++ b/tests/test-shelve.t @@ -75,7 +75,7 @@ --cleanup delete all shelved changes --date DATE shelve with the specified commit date -d --delete delete the named shelved change(s) - -e --[no-]edit invoke editor on commit messages (default: off) + -e --edit invoke editor on commit messages -l --list list current shelves -m --message TEXT use text as shelve message -n --name NAME use the given name for the shelved commit diff --git a/tests/test-uncommit.t b/tests/test-uncommit.t --- a/tests/test-uncommit.t +++ b/tests/test-uncommit.t @@ -34,8 +34,7 @@ options ([+] can be repeated): - --[no-]keep allow an empty commit after uncommiting (default: - off) + --keep allow an empty commit after uncommiting -I --include PATTERN [+] include names matching the given patterns -X --exclude PATTERN [+] exclude names matching the given patterns