# HG changeset patch # User Rishabh Madan # Date 1503873718 -19800 # Node ID 2a37459aedf20cfd78d4d82811ef685d93fd190d # Parent 9d5d040160e69c58813f5d3586f3aaceee274812 releasenotes: view admonition titles using -l flag Since this extension is fairly new for almost all the contributors, remembering the admonition (with titles) is difficult. The list (-l) flag provides a list of all the active admonitions along with titles. For usage, hg releasenotes -l returns the list. Differential Revision: https://phab.mercurial-scm.org/D454 diff -r 9d5d040160e6 -r 2a37459aedf2 hgext/releasenotes.py --- a/hgext/releasenotes.py Sat Aug 26 16:00:07 2017 -0700 +++ b/hgext/releasenotes.py Mon Aug 28 04:11:58 2017 +0530 @@ -275,6 +275,10 @@ ss = ", ".join(sorted(similar)) ui.write(_("(did you mean one of %s?)\n") % ss) +def _getadmonitionlist(ui, sections): + for section in sections: + ui.write("%s: %s\n" % (section[0], section[1])) + def parsenotesfromrevisions(repo, directives, revs): notes = parsedreleasenotes() @@ -467,7 +471,9 @@ @command('releasenotes', [('r', 'rev', '', _('revisions to process for release notes'), _('REV')), ('c', 'check', False, _('checks for validity of admonitions (if any)'), - _('REV'))], + _('REV')), + ('l', 'list', False, _('list the available admonitions with their title'), + None)], _('hg releasenotes [-r REV] [-c] FILE')) def releasenotes(ui, repo, file_=None, **opts): """parse release notes from commit messages into an output file @@ -546,8 +552,10 @@ release note after it has been added to the release notes file. """ sections = releasenotessections(ui, repo) + if opts.get('list'): + return _getadmonitionlist(ui, sections) + rev = opts.get('rev') - revs = scmutil.revrange(repo, [rev or 'not public()']) if opts.get('check'): return checkadmonitions(ui, repo, sections.names(), revs) diff -r 9d5d040160e6 -r 2a37459aedf2 tests/test-releasenotes-formatting.t --- a/tests/test-releasenotes-formatting.t Sat Aug 26 16:00:07 2017 -0700 +++ b/tests/test-releasenotes-formatting.t Mon Aug 28 04:11:58 2017 +0530 @@ -407,3 +407,16 @@ $ hg releasenotes -r . -c Invalid admonition 'fixes' present in changeset 0e7130d2705c (did you mean fix?) + + $ cd .. + +Usage of --list flag + + $ hg init relnotes-list + $ cd relnotes-list + $ hg releasenotes -l + feature: New Features + bc: Backwards Compatibility Changes + fix: Bug Fixes + perf: Performance Improvements + api: API Changes