From: Philip Oakley Date: Tue, 10 Dec 2019 11:16:44 GMT Subject: Re: [PATCH 2/6] config: add string mapping for enum config_scope Message-ID: In-Reply-To: <20191210023335.49987-3-emilyshaffer@google.com> Hi Emily, On 10/12/2019 02:33, Emily Shaffer wrote: > If a user is interacting with their config files primarily by the 'git > config' command, using the location flags (--global, --system, etc) then > they may be more interested to see the scope of the config file they are > editing, rather than the filepath. There's asimilar issue being worked on under Git-for-Windows with some proposed code for this very 'problem' https://github.com/git-for-windows/git/pull/2399 and a GitGitGadget PR https://github.com/gitgitgadget/git/pull/478 cc'ing Matthew to help coordination. Philip > > Signed-off-by: Emily Shaffer > --- > config.c | 17 +++++++++++++++++ > config.h | 1 + > 2 files changed, 18 insertions(+) > > diff --git a/config.c b/config.c > index e7052b3977..a20110e016 100644 > --- a/config.c > +++ b/config.c > @@ -3312,6 +3312,23 @@ enum config_scope current_config_scope(void) > return current_parsing_scope; > } > > +const char *config_scope_to_string(enum config_scope scope) > +{ > + switch (scope) { > + case CONFIG_SCOPE_SYSTEM: > + return _("system"); > + case CONFIG_SCOPE_GLOBAL: > + return _("global"); > + case CONFIG_SCOPE_REPO: > + return _("repo"); > + case CONFIG_SCOPE_CMDLINE: > + return _("cmdline"); > + case CONFIG_SCOPE_UNKNOWN: > + default: > + return _("unknown"); > + } > +} > + > int lookup_config(const char **mapping, int nr_mapping, const char *var) > { > int i; > diff --git a/config.h b/config.h > index f0ed464004..612f43acd0 100644 > --- a/config.h > +++ b/config.h > @@ -139,6 +139,7 @@ enum config_scope { > }; > > enum config_scope current_config_scope(void); > +const char *config_scope_to_string(enum config_scope); > const char *current_config_origin_type(void); > const char *current_config_name(void); >