Make git_status_config() file scope static to builtin-commit.c
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
23900a9646
commit
f766b36783
@ -826,6 +826,66 @@ static int dry_run_commit(int argc, const char **argv, const char *prefix,
|
|||||||
return commitable ? 0 : 1;
|
return commitable ? 0 : 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int parse_status_slot(const char *var, int offset)
|
||||||
|
{
|
||||||
|
if (!strcasecmp(var+offset, "header"))
|
||||||
|
return WT_STATUS_HEADER;
|
||||||
|
if (!strcasecmp(var+offset, "updated")
|
||||||
|
|| !strcasecmp(var+offset, "added"))
|
||||||
|
return WT_STATUS_UPDATED;
|
||||||
|
if (!strcasecmp(var+offset, "changed"))
|
||||||
|
return WT_STATUS_CHANGED;
|
||||||
|
if (!strcasecmp(var+offset, "untracked"))
|
||||||
|
return WT_STATUS_UNTRACKED;
|
||||||
|
if (!strcasecmp(var+offset, "nobranch"))
|
||||||
|
return WT_STATUS_NOBRANCH;
|
||||||
|
if (!strcasecmp(var+offset, "unmerged"))
|
||||||
|
return WT_STATUS_UNMERGED;
|
||||||
|
die("bad config variable '%s'", var);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int git_status_config(const char *k, const char *v, void *cb)
|
||||||
|
{
|
||||||
|
struct wt_status *s = cb;
|
||||||
|
|
||||||
|
if (!strcmp(k, "status.submodulesummary")) {
|
||||||
|
int is_bool;
|
||||||
|
s->submodule_summary = git_config_bool_or_int(k, v, &is_bool);
|
||||||
|
if (is_bool && s->submodule_summary)
|
||||||
|
s->submodule_summary = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (!strcmp(k, "status.color") || !strcmp(k, "color.status")) {
|
||||||
|
s->use_color = git_config_colorbool(k, v, -1);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (!prefixcmp(k, "status.color.") || !prefixcmp(k, "color.status.")) {
|
||||||
|
int slot = parse_status_slot(k, 13);
|
||||||
|
if (!v)
|
||||||
|
return config_error_nonbool(k);
|
||||||
|
color_parse(v, k, s->color_palette[slot]);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (!strcmp(k, "status.relativepaths")) {
|
||||||
|
s->relative_paths = git_config_bool(k, v);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (!strcmp(k, "status.showuntrackedfiles")) {
|
||||||
|
if (!v)
|
||||||
|
return config_error_nonbool(k);
|
||||||
|
else if (!strcmp(v, "no"))
|
||||||
|
s->show_untracked_files = SHOW_NO_UNTRACKED_FILES;
|
||||||
|
else if (!strcmp(v, "normal"))
|
||||||
|
s->show_untracked_files = SHOW_NORMAL_UNTRACKED_FILES;
|
||||||
|
else if (!strcmp(v, "all"))
|
||||||
|
s->show_untracked_files = SHOW_ALL_UNTRACKED_FILES;
|
||||||
|
else
|
||||||
|
return error("Invalid untracked files mode '%s'", v);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return git_diff_ui_config(k, v, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
int cmd_status(int argc, const char **argv, const char *prefix)
|
int cmd_status(int argc, const char **argv, const char *prefix)
|
||||||
{
|
{
|
||||||
struct wt_status s;
|
struct wt_status s;
|
||||||
|
60
wt-status.c
60
wt-status.c
@ -19,24 +19,6 @@ static char default_wt_status_colors[][COLOR_MAXLEN] = {
|
|||||||
GIT_COLOR_RED, /* WT_STATUS_UNMERGED */
|
GIT_COLOR_RED, /* WT_STATUS_UNMERGED */
|
||||||
};
|
};
|
||||||
|
|
||||||
static int parse_status_slot(const char *var, int offset)
|
|
||||||
{
|
|
||||||
if (!strcasecmp(var+offset, "header"))
|
|
||||||
return WT_STATUS_HEADER;
|
|
||||||
if (!strcasecmp(var+offset, "updated")
|
|
||||||
|| !strcasecmp(var+offset, "added"))
|
|
||||||
return WT_STATUS_UPDATED;
|
|
||||||
if (!strcasecmp(var+offset, "changed"))
|
|
||||||
return WT_STATUS_CHANGED;
|
|
||||||
if (!strcasecmp(var+offset, "untracked"))
|
|
||||||
return WT_STATUS_UNTRACKED;
|
|
||||||
if (!strcasecmp(var+offset, "nobranch"))
|
|
||||||
return WT_STATUS_NOBRANCH;
|
|
||||||
if (!strcasecmp(var+offset, "unmerged"))
|
|
||||||
return WT_STATUS_UNMERGED;
|
|
||||||
die("bad config variable '%s'", var);
|
|
||||||
}
|
|
||||||
|
|
||||||
static const char *color(int slot, struct wt_status *s)
|
static const char *color(int slot, struct wt_status *s)
|
||||||
{
|
{
|
||||||
return s->use_color > 0 ? s->color_palette[slot] : "";
|
return s->use_color > 0 ? s->color_palette[slot] : "";
|
||||||
@ -594,45 +576,3 @@ void wt_status_print(struct wt_status *s)
|
|||||||
printf("nothing to commit (working directory clean)\n");
|
printf("nothing to commit (working directory clean)\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int git_status_config(const char *k, const char *v, void *cb)
|
|
||||||
{
|
|
||||||
struct wt_status *s = cb;
|
|
||||||
|
|
||||||
if (!strcmp(k, "status.submodulesummary")) {
|
|
||||||
int is_bool;
|
|
||||||
s->submodule_summary = git_config_bool_or_int(k, v, &is_bool);
|
|
||||||
if (is_bool && s->submodule_summary)
|
|
||||||
s->submodule_summary = -1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!strcmp(k, "status.color") || !strcmp(k, "color.status")) {
|
|
||||||
s->use_color = git_config_colorbool(k, v, -1);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!prefixcmp(k, "status.color.") || !prefixcmp(k, "color.status.")) {
|
|
||||||
int slot = parse_status_slot(k, 13);
|
|
||||||
if (!v)
|
|
||||||
return config_error_nonbool(k);
|
|
||||||
color_parse(v, k, s->color_palette[slot]);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!strcmp(k, "status.relativepaths")) {
|
|
||||||
s->relative_paths = git_config_bool(k, v);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!strcmp(k, "status.showuntrackedfiles")) {
|
|
||||||
if (!v)
|
|
||||||
return config_error_nonbool(k);
|
|
||||||
else if (!strcmp(v, "no"))
|
|
||||||
s->show_untracked_files = SHOW_NO_UNTRACKED_FILES;
|
|
||||||
else if (!strcmp(v, "normal"))
|
|
||||||
s->show_untracked_files = SHOW_NORMAL_UNTRACKED_FILES;
|
|
||||||
else if (!strcmp(v, "all"))
|
|
||||||
s->show_untracked_files = SHOW_ALL_UNTRACKED_FILES;
|
|
||||||
else
|
|
||||||
return error("Invalid untracked files mode '%s'", v);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
return git_diff_ui_config(k, v, NULL);
|
|
||||||
}
|
|
||||||
|
@ -50,7 +50,6 @@ struct wt_status {
|
|||||||
struct string_list change;
|
struct string_list change;
|
||||||
};
|
};
|
||||||
|
|
||||||
int git_status_config(const char *var, const char *value, void *cb);
|
|
||||||
void wt_status_prepare(struct wt_status *s);
|
void wt_status_prepare(struct wt_status *s);
|
||||||
void wt_status_print(struct wt_status *s);
|
void wt_status_print(struct wt_status *s);
|
||||||
void wt_status_collect_changes(struct wt_status *s);
|
void wt_status_collect_changes(struct wt_status *s);
|
||||||
|
Loading…
Reference in New Issue
Block a user