[PATCH 6 of 6] branches: include active, closed and current flags in template output

Yuya Nishihara yuya at tcha.org
Thu Oct 2 09:59:08 CDT 2014


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1412259962 -32400
#      Thu Oct 02 23:26:02 2014 +0900
# Node ID 30290166698d0d3527605d5064f1a5bbc5feb311
# Parent  356766f9b906dea2d3224309695edfec76f14426
branches: include active, closed and current flags in template output

diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -1122,7 +1122,8 @@ def branches(ui, repo, active=False, clo
         else:
             label = 'branches.inactive'
             notice = _(' (inactive)')
-        if tag == repo.dirstate.branch():
+        current = (tag == repo.dirstate.branch())
+        if current:
             label = 'branches.current'
 
         fm.startitem()
@@ -1132,6 +1133,7 @@ def branches(ui, repo, active=False, clo
         fmt += ' %d:%s'
         fm.condwrite(not ui.quiet, 'rev node', fmt, rev, hexfunc(ctx.node()),
                      label='log.changeset changeset.%s' % ctx.phasestr())
+        fm.data(active=isactive, closed=not isopen, current=current)
         if not ui.quiet:
             fm.plain(notice)
         fm.plain('\n')
diff --git a/tests/test-branches.t b/tests/test-branches.t
--- a/tests/test-branches.t
+++ b/tests/test-branches.t
@@ -475,27 +475,42 @@ template output:
   $ hg branches -Tjson --closed
   [
    {
+    "active": true,
     "branch": "b",
+    "closed": false,
+    "current": true,
     "node": "e23b5505d1ad24aab6f84fd8c7cb8cd8e5e93be0",
     "rev": 13
    },
    {
+    "active": true,
     "branch": "a branch name much longer than the default justification used by branches",
+    "closed": false,
+    "current": false,
     "node": "10ff5895aa5793bd378da574af8cec8ea408d831",
     "rev": 7
    },
    {
+    "active": false,
     "branch": "c",
+    "closed": true,
+    "current": false,
     "node": "f894c25619d3f1484639d81be950e0a07bc6f1f6",
     "rev": 14
    },
    {
+    "active": false,
     "branch": "a",
+    "closed": false,
+    "current": false,
     "node": "d8cbc61dbaa6dc817175d1e301eecb863f280832",
     "rev": 5
    },
    {
+    "active": false,
     "branch": "default",
+    "closed": false,
+    "current": false,
     "node": "19709c5a4e75bf938f8e349aff97438539bb729e",
     "rev": 0
    }


More information about the Mercurial-devel mailing list