Browse Source
Create header for pretty.c to make formatting interface more structured. This is a middle point, this file would be merged further with other files which contain formatting stuff. Signed-off-by: Olga Telezhnaia <olyatelezhnaya@gmail.com> Mentored-by: Christian Couder <christian.couder@gmail.com> Mentored by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint


6 changed files with 92 additions and 84 deletions
@ -0,0 +1,87 @@ |
|||||||
|
#ifndef PRETTY_H |
||||||
|
#define PRETTY_H |
||||||
|
|
||||||
|
struct commit; |
||||||
|
|
||||||
|
/* Commit formats */ |
||||||
|
enum cmit_fmt { |
||||||
|
CMIT_FMT_RAW, |
||||||
|
CMIT_FMT_MEDIUM, |
||||||
|
CMIT_FMT_DEFAULT = CMIT_FMT_MEDIUM, |
||||||
|
CMIT_FMT_SHORT, |
||||||
|
CMIT_FMT_FULL, |
||||||
|
CMIT_FMT_FULLER, |
||||||
|
CMIT_FMT_ONELINE, |
||||||
|
CMIT_FMT_EMAIL, |
||||||
|
CMIT_FMT_MBOXRD, |
||||||
|
CMIT_FMT_USERFORMAT, |
||||||
|
|
||||||
|
CMIT_FMT_UNSPECIFIED |
||||||
|
}; |
||||||
|
|
||||||
|
struct pretty_print_context { |
||||||
|
/* |
||||||
|
* Callers should tweak these to change the behavior of pp_* functions. |
||||||
|
*/ |
||||||
|
enum cmit_fmt fmt; |
||||||
|
int abbrev; |
||||||
|
const char *after_subject; |
||||||
|
int preserve_subject; |
||||||
|
struct date_mode date_mode; |
||||||
|
unsigned date_mode_explicit:1; |
||||||
|
int print_email_subject; |
||||||
|
int expand_tabs_in_log; |
||||||
|
int need_8bit_cte; |
||||||
|
char *notes_message; |
||||||
|
struct reflog_walk_info *reflog_info; |
||||||
|
struct rev_info *rev; |
||||||
|
const char *output_encoding; |
||||||
|
struct string_list *mailmap; |
||||||
|
int color; |
||||||
|
struct ident_split *from_ident; |
||||||
|
|
||||||
|
/* |
||||||
|
* Fields below here are manipulated internally by pp_* functions and |
||||||
|
* should not be counted on by callers. |
||||||
|
*/ |
||||||
|
struct string_list in_body_headers; |
||||||
|
int graph_width; |
||||||
|
}; |
||||||
|
|
||||||
|
static inline int cmit_fmt_is_mail(enum cmit_fmt fmt) |
||||||
|
{ |
||||||
|
return (fmt == CMIT_FMT_EMAIL || fmt == CMIT_FMT_MBOXRD); |
||||||
|
} |
||||||
|
|
||||||
|
struct userformat_want { |
||||||
|
unsigned notes:1; |
||||||
|
}; |
||||||
|
|
||||||
|
void userformat_find_requirements(const char *fmt, struct userformat_want *w); |
||||||
|
void pp_commit_easy(enum cmit_fmt fmt, const struct commit *commit, |
||||||
|
struct strbuf *sb); |
||||||
|
void pp_user_info(struct pretty_print_context *pp, const char *what, |
||||||
|
struct strbuf *sb, const char *line, |
||||||
|
const char *encoding); |
||||||
|
void pp_title_line(struct pretty_print_context *pp, const char **msg_p, |
||||||
|
struct strbuf *sb, const char *encoding, |
||||||
|
int need_8bit_cte); |
||||||
|
void pp_remainder(struct pretty_print_context *pp, const char **msg_p, |
||||||
|
struct strbuf *sb, int indent); |
||||||
|
|
||||||
|
void format_commit_message(const struct commit *commit, |
||||||
|
const char *format, struct strbuf *sb, |
||||||
|
const struct pretty_print_context *context); |
||||||
|
|
||||||
|
void get_commit_format(const char *arg, struct rev_info *); |
||||||
|
|
||||||
|
void pretty_print_commit(struct pretty_print_context *pp, |
||||||
|
const struct commit *commit, |
||||||
|
struct strbuf *sb); |
||||||
|
|
||||||
|
const char *format_subject(struct strbuf *sb, const char *msg, |
||||||
|
const char *line_separator); |
||||||
|
|
||||||
|
int commit_format_is_empty(enum cmit_fmt); |
||||||
|
|
||||||
|
#endif /* PRETTY_H */ |
Loading…
Reference in new issue