--- a/mercurial/commands.py Wed Oct 31 16:23:23 2012 -0700
+++ b/mercurial/commands.py Tue Nov 06 16:49:54 2012 -0800
@@ -4206,6 +4206,9 @@
Returns 0 on success.
"""
+
+ fm = ui.formatter('manifest', opts)
+
if opts.get('all'):
if rev or node:
raise util.Abort(_("can't specify a revision with --all"))
@@ -4223,7 +4226,9 @@
finally:
lock.release()
for f in res:
- ui.write("%s\n" % f)
+ fm.startitem()
+ fm.write("path", '%s\n', f)
+ fm.end()
return
if rev and node:
@@ -4232,14 +4237,17 @@
if not node:
node = rev
- decor = {'l':'644 @ ', 'x':'755 * ', '':'644 '}
+ char = {'l': '@', 'x': '*', '': ''}
+ mode = {'l': '644', 'x': '755', '': '644'}
ctx = scmutil.revsingle(repo, node)
+ mf = ctx.manifest()
for f in ctx:
- if ui.debugflag:
- ui.write("%40s " % hex(ctx.manifest()[f]))
- if ui.verbose:
- ui.write(decor[ctx.flags(f)])
- ui.write("%s\n" % f)
+ fm.startitem()
+ fl = ctx[f].flags()
+ fm.condwrite(ui.debugflag, 'hash', '%s ', hex(mf[f]))
+ fm.condwrite(ui.verbose, 'mode type', '%s %1s ', mode[fl], char[fl])
+ fm.write('path', '%s\n', f)
+ fm.end()
@command('^merge',
[('f', 'force', None, _('force a merge with outstanding changes')),
@@ -5426,17 +5434,16 @@
copy = copies.pathcopies(repo[node1], repo[node2])
fm = ui.formatter('status', opts)
- format = '%s %s' + end
- if opts.get('no_status'):
- format = '%.0s%s' + end
+ fmt = '%s' + end
+ showchar = not opts.get('no_status')
for state, char, files in changestates:
if state in show:
label = 'status.' + state
for f in files:
fm.startitem()
- fm.write("status path", format, char,
- repo.pathto(f, cwd), label=label)
+ fm.condwrite(showchar, 'status', '%s ', char, label=label)
+ fm.write('path', fmt, repo.pathto(f, cwd), label=label)
if f in copy:
fm.write("copy", ' %s' + end, repo.pathto(copy[f], cwd),
label='status.copied')
@@ -5742,7 +5749,7 @@
release(lock, wlock)
@command('tags', [], '')
-def tags(ui, repo):
+def tags(ui, repo, **opts):
"""list repository tags
This lists both regular and local tags. When the -v/--verbose
@@ -5751,27 +5758,27 @@
Returns 0 on success.
"""
+ fm = ui.formatter('tags', opts)
hexfunc = ui.debugflag and hex or short
tagtype = ""
for t, n in reversed(repo.tagslist()):
- if ui.quiet:
- ui.write("%s\n" % t, label='tags.normal')
- continue
-
hn = hexfunc(n)
- r = "%5d:%s" % (repo.changelog.rev(n), hn)
- rev = ui.label(r, 'log.changeset changeset.%s' % repo[n].phasestr())
- spaces = " " * (30 - encoding.colwidth(t))
-
- tag = ui.label(t, 'tags.normal')
- if ui.verbose:
- if repo.tagtype(t) == 'local':
- tagtype = " local"
- tag = ui.label(t, 'tags.local')
- else:
- tagtype = ""
- ui.write("%s%s %s%s\n" % (tag, spaces, rev, tagtype))
+ label = 'tags.normal'
+ tagtype = ''
+ if repo.tagtype(t) == 'local':
+ label = 'tags.local'
+ tagtype = 'local'
+
+ fm.startitem()
+ fm.write('tag', '%s', t, label=label)
+ fmt = " " * (30 - encoding.colwidth(t)) + ' %5d:%s'
+ fm.condwrite(not ui.quiet, 'rev id', fmt,
+ repo.changelog.rev(n), hn, label=label)
+ fm.condwrite(ui.verbose and tagtype, 'type', ' %s',
+ tagtype, label=label)
+ fm.plain('\n')
+ fm.end()
@command('tip',
[('p', 'patch', None, _('show patch')),
--- a/mercurial/formatter.py Wed Oct 31 16:23:23 2012 -0700
+++ b/mercurial/formatter.py Tue Nov 06 16:49:54 2012 -0800
@@ -31,6 +31,10 @@
'''do default text output while assigning data to item'''
for k, v in zip(fields.split(), fielddata):
self._item[k] = v
+ def condwrite(self, cond, fields, deftext, *fielddata, **opts):
+ '''do conditional write (primarily for plain formatter)'''
+ for k, v in zip(fields.split(), fielddata):
+ self._item[k] = v
def plain(self, text, **opts):
'''show raw text for non-templated mode'''
pass
@@ -51,6 +55,10 @@
pass
def write(self, fields, deftext, *fielddata, **opts):
self._ui.write(deftext % fielddata, **opts)
+ def condwrite(self, cond, fields, deftext, *fielddata, **opts):
+ '''do conditional write'''
+ if cond:
+ self._ui.write(deftext % fielddata, **opts)
def plain(self, text, **opts):
self._ui.write(text, **opts)
def end(self):
--- a/tests/test-eolfilename.t Wed Oct 31 16:23:23 2012 -0700
+++ b/tests/test-eolfilename.t Tue Nov 06 16:49:54 2012 -0800
@@ -68,9 +68,9 @@
$ touch "$A"
$ touch "$B"
$ hg status --color=always
- \x1b[0;35;1;4m? foo\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mfoo\x1b[0m (esc)
\x1b[0;35;1;4mbar\x1b[0m (esc)
- \x1b[0;35;1;4m? foo\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mfoo\x1b[0m (esc)
\x1b[0;35;1;4mbar.baz\x1b[0m (esc)
$ cd ..
--- a/tests/test-mq.t Wed Oct 31 16:23:23 2012 -0700
+++ b/tests/test-mq.t Tue Nov 06 16:49:54 2012 -0800
@@ -198,11 +198,11 @@
status --mq with color (issue2096)
$ hg status --mq --config extensions.color= --config color.mode=ansi --color=always
- \x1b[0;32;1mA .hgignore\x1b[0m (esc)
- \x1b[0;32;1mA A\x1b[0m (esc)
- \x1b[0;32;1mA B\x1b[0m (esc)
- \x1b[0;32;1mA series\x1b[0m (esc)
- \x1b[0;35;1;4m? flaf\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1m.hgignore\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mA\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mB\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mseries\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mflaf\x1b[0m (esc)
try the --mq option on a command provided by an extension
--- a/tests/test-status-color.t Wed Oct 31 16:23:23 2012 -0700
+++ b/tests/test-status-color.t Tue Nov 06 16:49:54 2012 -0800
@@ -15,100 +15,100 @@
hg status in repo root:
$ hg status --color=always
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
hg status . in repo root:
$ hg status --color=always .
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd a
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd a .
- \x1b[0;35;1;4m? 1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_a\x1b[0m (esc)
$ hg status --color=always --cwd a ..
- \x1b[0;35;1;4m? 1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? ../b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? ../b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? ../b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? ../in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../b/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../b/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../b/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../in_root\x1b[0m (esc)
$ hg status --color=always --cwd b
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd b .
- \x1b[0;35;1;4m? 1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? 2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b\x1b[0m (esc)
$ hg status --color=always --cwd b ..
- \x1b[0;35;1;4m? ../a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? ../a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? 1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? 2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? ../in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../a/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../a/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../in_root\x1b[0m (esc)
$ hg status --color=always --cwd a/1
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd a/1 .
- \x1b[0;35;1;4m? in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_a_1\x1b[0m (esc)
$ hg status --color=always --cwd a/1 ..
- \x1b[0;35;1;4m? in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? ../in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../in_a\x1b[0m (esc)
$ hg status --color=always --cwd b/1
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd b/1 .
- \x1b[0;35;1;4m? in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b_1\x1b[0m (esc)
$ hg status --color=always --cwd b/1 ..
- \x1b[0;35;1;4m? in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? ../2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? ../in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../in_b\x1b[0m (esc)
$ hg status --color=always --cwd b/2
- \x1b[0;35;1;4m? a/1/in_a_1\x1b[0m (esc)
- \x1b[0;35;1;4m? a/in_a\x1b[0m (esc)
- \x1b[0;35;1;4m? b/1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? b/2/in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? b/in_b\x1b[0m (esc)
- \x1b[0;35;1;4m? in_root\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/1/in_a_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4ma/in_a\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/2/in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4mb/in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_root\x1b[0m (esc)
$ hg status --color=always --cwd b/2 .
- \x1b[0;35;1;4m? in_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b_2\x1b[0m (esc)
$ hg status --color=always --cwd b/2 ..
- \x1b[0;35;1;4m? ../1/in_b_1\x1b[0m (esc)
- \x1b[0;35;1;4m? in_b_2\x1b[0m (esc)
- \x1b[0;35;1;4m? ../in_b\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../1/in_b_1\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4min_b_2\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4m../in_b\x1b[0m (esc)
$ cd ..
$ hg init repo2
@@ -128,59 +128,59 @@
hg status:
$ hg status --color=always
- \x1b[0;32;1mA added\x1b[0m (esc)
- \x1b[0;31;1mR removed\x1b[0m (esc)
- \x1b[0;36;1;4m! deleted\x1b[0m (esc)
- \x1b[0;35;1;4m? unknown\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1madded\x1b[0m (esc)
+ \x1b[0;31;1mR \x1b[0m\x1b[0;31;1mremoved\x1b[0m (esc)
+ \x1b[0;36;1;4m! \x1b[0m\x1b[0;36;1;4mdeleted\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4munknown\x1b[0m (esc)
hg status modified added removed deleted unknown never-existed ignored:
$ hg status --color=always modified added removed deleted unknown never-existed ignored
never-existed: * (glob)
- \x1b[0;32;1mA added\x1b[0m (esc)
- \x1b[0;31;1mR removed\x1b[0m (esc)
- \x1b[0;36;1;4m! deleted\x1b[0m (esc)
- \x1b[0;35;1;4m? unknown\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1madded\x1b[0m (esc)
+ \x1b[0;31;1mR \x1b[0m\x1b[0;31;1mremoved\x1b[0m (esc)
+ \x1b[0;36;1;4m! \x1b[0m\x1b[0;36;1;4mdeleted\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4munknown\x1b[0m (esc)
$ hg copy modified copied
hg status -C:
$ hg status --color=always -C
- \x1b[0;32;1mA added\x1b[0m (esc)
- \x1b[0;32;1mA copied\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1madded\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mcopied\x1b[0m (esc)
\x1b[0;0m modified\x1b[0m (esc)
- \x1b[0;31;1mR removed\x1b[0m (esc)
- \x1b[0;36;1;4m! deleted\x1b[0m (esc)
- \x1b[0;35;1;4m? unknown\x1b[0m (esc)
+ \x1b[0;31;1mR \x1b[0m\x1b[0;31;1mremoved\x1b[0m (esc)
+ \x1b[0;36;1;4m! \x1b[0m\x1b[0;36;1;4mdeleted\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4munknown\x1b[0m (esc)
hg status -A:
$ hg status --color=always -A
- \x1b[0;32;1mA added\x1b[0m (esc)
- \x1b[0;32;1mA copied\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1madded\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mcopied\x1b[0m (esc)
\x1b[0;0m modified\x1b[0m (esc)
- \x1b[0;31;1mR removed\x1b[0m (esc)
- \x1b[0;36;1;4m! deleted\x1b[0m (esc)
- \x1b[0;35;1;4m? unknown\x1b[0m (esc)
- \x1b[0;30;1mI ignored\x1b[0m (esc)
- \x1b[0;0mC .hgignore\x1b[0m (esc)
- \x1b[0;0mC modified\x1b[0m (esc)
+ \x1b[0;31;1mR \x1b[0m\x1b[0;31;1mremoved\x1b[0m (esc)
+ \x1b[0;36;1;4m! \x1b[0m\x1b[0;36;1;4mdeleted\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4munknown\x1b[0m (esc)
+ \x1b[0;30;1mI \x1b[0m\x1b[0;30;1mignored\x1b[0m (esc)
+ \x1b[0;0mC \x1b[0m\x1b[0;0m.hgignore\x1b[0m (esc)
+ \x1b[0;0mC \x1b[0m\x1b[0;0mmodified\x1b[0m (esc)
hg status -A (with terminfo color):
$ mkdir "$TESTTMP/terminfo"
$ TERMINFO="$TESTTMP/terminfo" tic "$TESTDIR/hgterm.ti"
$ TERM=hgterm TERMINFO="$TESTTMP/terminfo" hg status --config color.mode=terminfo --color=always -A
- \x1b[30m\x1b[32m\x1b[1mA added\x1b[30m (esc)
- \x1b[30m\x1b[32m\x1b[1mA copied\x1b[30m (esc)
+ \x1b[30m\x1b[32m\x1b[1mA \x1b[30m\x1b[30m\x1b[32m\x1b[1madded\x1b[30m (esc)
+ \x1b[30m\x1b[32m\x1b[1mA \x1b[30m\x1b[30m\x1b[32m\x1b[1mcopied\x1b[30m (esc)
\x1b[30m\x1b[30m modified\x1b[30m (esc)
- \x1b[30m\x1b[31m\x1b[1mR removed\x1b[30m (esc)
- \x1b[30m\x1b[36m\x1b[1m\x1b[4m! deleted\x1b[30m (esc)
- \x1b[30m\x1b[35m\x1b[1m\x1b[4m? unknown\x1b[30m (esc)
- \x1b[30m\x1b[30m\x1b[1mI ignored\x1b[30m (esc)
- \x1b[30m\x1b[30mC .hgignore\x1b[30m (esc)
- \x1b[30m\x1b[30mC modified\x1b[30m (esc)
+ \x1b[30m\x1b[31m\x1b[1mR \x1b[30m\x1b[30m\x1b[31m\x1b[1mremoved\x1b[30m (esc)
+ \x1b[30m\x1b[36m\x1b[1m\x1b[4m! \x1b[30m\x1b[30m\x1b[36m\x1b[1m\x1b[4mdeleted\x1b[30m (esc)
+ \x1b[30m\x1b[35m\x1b[1m\x1b[4m? \x1b[30m\x1b[30m\x1b[35m\x1b[1m\x1b[4munknown\x1b[30m (esc)
+ \x1b[30m\x1b[30m\x1b[1mI \x1b[30m\x1b[30m\x1b[30m\x1b[1mignored\x1b[30m (esc)
+ \x1b[30m\x1b[30mC \x1b[30m\x1b[30m\x1b[30m.hgignore\x1b[30m (esc)
+ \x1b[30m\x1b[30mC \x1b[30m\x1b[30m\x1b[30mmodified\x1b[30m (esc)
$ echo "^ignoreddir$" > .hgignore
@@ -194,7 +194,7 @@
hg status -i ignoreddir/file:
$ hg status --color=always -i ignoreddir/file
- \x1b[0;30;1mI ignoreddir/file\x1b[0m (esc)
+ \x1b[0;30;1mI \x1b[0m\x1b[0;30;1mignoreddir/file\x1b[0m (esc)
$ cd ..
check 'status -q' and some combinations
@@ -220,11 +220,11 @@
$ hg --config color.status.modified=periwinkle status --color=always
ignoring unknown color/effect 'periwinkle' (configured in color.status.modified)
M modified
- \x1b[0;32;1mA added\x1b[0m (esc)
- \x1b[0;32;1mA copied\x1b[0m (esc)
- \x1b[0;31;1mR removed\x1b[0m (esc)
- \x1b[0;36;1;4m! deleted\x1b[0m (esc)
- \x1b[0;35;1;4m? unknown\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1madded\x1b[0m (esc)
+ \x1b[0;32;1mA \x1b[0m\x1b[0;32;1mcopied\x1b[0m (esc)
+ \x1b[0;31;1mR \x1b[0m\x1b[0;31;1mremoved\x1b[0m (esc)
+ \x1b[0;36;1;4m! \x1b[0m\x1b[0;36;1;4mdeleted\x1b[0m (esc)
+ \x1b[0;35;1;4m? \x1b[0m\x1b[0;35;1;4munknown\x1b[0m (esc)
Run status with 2 different flags.
Check if result is the same or different.