Re: [PATCH v5 09/11] pretty: add struct cmt_fmt_map::default_date_mode_type
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 20, 2019, 03:15 UTC
- Message-ID
- <xmqqr223ck5t.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <ec05907b6202b07733c02ca4af55de2d01681b7e.1574211027.git.liu.denton@gmail.com>
Denton Liu <liu.denton@gmail.com> writes:
Show 8 quoted lines
> In a future commit, we plan on having a pretty format which will use a > default date format unless otherwise overidden. Add support for this by > adding a `default_date_mode_type` member in `struct cmt_fmt_map`. > > Signed-off-by: Denton Liu <liu.denton@gmail.com> > --- > pretty.c | 3 +++ > 1 file changed, 3 insertions(+)
Yup, that is what I meant. expand_tabs_in_log and friends are good examples of per-format tweak defined in this table, and the default date mode is a good addition.
Thanks.
Show 22 quoted lines
>
> diff --git a/pretty.c b/pretty.c
> index 61014cc25a..63fa600276 100644
> --- a/pretty.c
> +++ b/pretty.c
> @@ -20,6 +20,7 @@ static struct cmt_fmt_map {
> int is_tformat;
> int expand_tabs_in_log;
> int is_alias;
> + enum date_mode_type default_date_mode_type;
> const char *user_format;
> } *commit_formats;
> static size_t builtin_formats_len;
> @@ -181,6 +182,8 @@ void get_commit_format(const char *arg, struct rev_info *rev)
> rev->commit_format = commit_format->format;
> rev->use_terminator = commit_format->is_tformat;
> rev->expand_tabs_in_log_default = commit_format->expand_tabs_in_log;
> + if (!rev->date_mode_explicit && commit_format->default_date_mode_type)
> + rev->date_mode.type = commit_format->default_date_mode_type;
> if (commit_format->format == CMIT_FMT_USERFORMAT) {
> save_user_format(rev, commit_format->user_format,
> commit_format->is_tformat);