Apologies for sending another version so soon, but I realized that I hadn't removed the use of a compound literal from the first commit where I had added it, so it still appeared in the patches. The overall diff for v5 is the same as for v4. Andy Koppe (7): pretty-formats: enclose options in angle brackets decorate: refactor format_decorations() decorate: avoid some unnecessary color overhead decorate: color each token separately pretty: add %(decorate[:<options>]) format pretty: add pointer and tag options to %(decorate) decorate: use commit color for HEAD arrow Junio C Hamano (1): pretty-formats: define "literal formatting code" Documentation/pretty-formats.txt | 47 +++++++++++++------- log-tree.c | 72 +++++++++++++++++++++--------- log-tree.h | 17 ++++--- pretty.c | 76 +++++++++++++++++++++++++++++--- t/t4205-log-pretty-formats.sh | 32 ++++++++++++++ t/t4207-log-decoration-colors.sh | 44 ++++++++++-------- 6 files changed, 219 insertions(+), 69 deletions(-) -- 2.42.0-rc2