Mercurial > hg
view tests/test-duplicateoptions.py @ 35527:f43dc62cfe11
crecord: honor "ui.color = no" config option
The current implementation of crecord ignores the ui.color setting.
This patch checks the ui.color config option and does the curses setup
without colors when the option is set to a falsy value. For other (or
missing) setting of ui.color, curses setup is done as before and uses
colors.
author | Elmar Bartel <elb_hg@leo.org> |
---|---|
date | Thu, 04 Jan 2018 12:12:07 +0100 |
parents | 5b2f331d0a33 |
children | 9abe91a503da |
line wrap: on
line source
from __future__ import absolute_import, print_function import os from mercurial import ( commands, extensions, ui as uimod, ) ignore = {b'highlight', b'win32text', b'factotum'} if os.name != 'nt': ignore.add(b'win32mbcs') disabled = [ext for ext in extensions.disabled().keys() if ext not in ignore] hgrc = open(os.environ["HGRCPATH"], 'wb') hgrc.write(b'[extensions]\n') for ext in disabled: hgrc.write(ext + b'=\n') hgrc.close() u = uimod.ui.load() extensions.loadall(u) globalshort = set() globallong = set() for option in commands.globalopts: option[0] and globalshort.add(option[0]) option[1] and globallong.add(option[1]) for cmd, entry in commands.table.items(): seenshort = globalshort.copy() seenlong = globallong.copy() for option in entry[1]: if (option[0] and option[0] in seenshort) or \ (option[1] and option[1] in seenlong): print("command '" + cmd + "' has duplicate option " + str(option)) seenshort.add(option[0]) seenlong.add(option[1])