Junio C Hamano <gitster@xxxxxxxxx> writes: >> I think you need to append "\n" to the message strings here (and >> below) to match the behavior of printf_ln(). > > Good eyes. You'll get the final "\n" but the line breaks inside the > paragraph you give to advise*() functions are your responsibility. > Even though advice.c:vadvise() handles multi-line message better > (unlike usage.c:vreportf() that is used for error() and die()) by > giving a line header for each line of the message, we do not wrap > lines at runtime. Perhaps something like this. The overly long lines are getting a bit annoying but I do not offhand think of a good way to shorten them. Also, having to assemble the message in a buffer and emit them all once with ("%s" % sb.buf) is a highly annoying pattern. Perhaps given enough examples, somebody will come up with a simpler API to do the same thing, but that is not in the scope of this series. builtin/am.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git i/builtin/am.c w/builtin/am.c index 0e97b827e4..227036d732 100644 --- i/builtin/am.c +++ w/builtin/am.c @@ -1155,14 +1155,13 @@ static void NORETURN die_user_resolve(const struct am_state *state) const char *cmdline = state->interactive ? "git am -i" : "git am"; struct strbuf sb = STRBUF_INIT; - strbuf_addf(&sb, _("When you have resolved this problem, run \"%s --continue\"."), cmdline); - strbuf_addf(&sb, _("If you prefer to skip this patch, run \"%s --skip\" instead."), cmdline); + strbuf_addf(&sb, _("When you have resolved this problem, run \"%s --continue\".\n"), cmdline); + strbuf_addf(&sb, _("If you prefer to skip this patch, run \"%s --skip\" instead.\n"), cmdline); if (advice_enabled(ADVICE_AM_WORK_DIR) && is_empty_or_missing_file(am_path(state, "patch")) && !repo_index_has_changes(the_repository, NULL, NULL)) - strbuf_addf(&sb, _("To record the empty patch as an empty commit, run \"%s --allow-empty\"."), cmdline); - + strbuf_addf(&sb, _("To record the empty patch as an empty commit, run \"%s --allow-empty\".\n"), cmdline); strbuf_addf(&sb, _("To restore the original branch and stop patching, run \"%s --abort\"."), cmdline); advise_if_enabled(ADVICE_MERGE_CONFLICT, "%s", sb.buf);