diff options
author | Conley Owens <cco3@android.com> | 2015-01-02 20:56:25 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-01-02 20:56:25 +0000 |
commit | 42e679b9f63086dc1a27aed2d99deb3c1da428fc (patch) | |
tree | 266db16bcb5013eb967bd6b035dde236c34c73a7 /color.py | |
parent | c8d882ae2a75c732ef590ef425a3039b8b04403e (diff) | |
parent | 902665bce668a58996de657a65c5ae3002a8810b (diff) | |
download | git-repo-42e679b9f63086dc1a27aed2d99deb3c1da428fc.tar.gz |
Merge "add a global --color option"
Diffstat (limited to 'color.py')
-rw-r--r-- | color.py | 27 |
1 files changed, 25 insertions, 2 deletions
@@ -83,15 +83,38 @@ def _Color(fg = None, bg = None, attr = None): | |||
83 | return code | 83 | return code |
84 | 84 | ||
85 | 85 | ||
86 | DEFAULT = None | ||
87 | |||
88 | def SetDefaultColoring(state): | ||
89 | """Set coloring behavior to |state|. | ||
90 | |||
91 | This is useful for overriding config options via the command line. | ||
92 | """ | ||
93 | if state is None: | ||
94 | # Leave it alone -- return quick! | ||
95 | return | ||
96 | |||
97 | global DEFAULT | ||
98 | state = state.lower() | ||
99 | if state in ('auto',): | ||
100 | DEFAULT = state | ||
101 | elif state in ('always', 'yes', 'true', True): | ||
102 | DEFAULT = 'always' | ||
103 | elif state in ('never', 'no', 'false', False): | ||
104 | DEFAULT = 'never' | ||
105 | |||
106 | |||
86 | class Coloring(object): | 107 | class Coloring(object): |
87 | def __init__(self, config, section_type): | 108 | def __init__(self, config, section_type): |
88 | self._section = 'color.%s' % section_type | 109 | self._section = 'color.%s' % section_type |
89 | self._config = config | 110 | self._config = config |
90 | self._out = sys.stdout | 111 | self._out = sys.stdout |
91 | 112 | ||
92 | on = self._config.GetString(self._section) | 113 | on = DEFAULT |
93 | if on is None: | 114 | if on is None: |
94 | on = self._config.GetString('color.ui') | 115 | on = self._config.GetString(self._section) |
116 | if on is None: | ||
117 | on = self._config.GetString('color.ui') | ||
95 | 118 | ||
96 | if on == 'auto': | 119 | if on == 'auto': |
97 | if pager.active or os.isatty(1): | 120 | if pager.active or os.isatty(1): |