From f7c136b408f55098a93b207a03be7f2f2c361b8d Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 15 Feb 2025 11:15:59 +0530 Subject: [PATCH] Only output prompt type markers if we are outputting first cell in line --- kitty/line.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/kitty/line.c b/kitty/line.c index 4b5059924..ccf163b73 100644 --- a/kitty/line.c +++ b/kitty/line.c @@ -563,12 +563,14 @@ line_as_ansi(Line *self, ANSILineState *s, index_type start_at, index_type stop_ s->escape_code_written = false; if (prefix_char) write_ch_to_ansi_buf(s, prefix_char); - switch (self->attrs.prompt_kind) { - case UNKNOWN_PROMPT_KIND: - break; - case PROMPT_START: write_mark_to_ansi_buf(s, "A"); break; - case SECONDARY_PROMPT: write_mark_to_ansi_buf(s, "A;k=s"); break; - case OUTPUT_START: write_mark_to_ansi_buf(s, "C"); break; + if (start_at == 0) { + switch (self->attrs.prompt_kind) { + case UNKNOWN_PROMPT_KIND: + break; + case PROMPT_START: write_mark_to_ansi_buf(s, "A"); break; + case SECONDARY_PROMPT: write_mark_to_ansi_buf(s, "A;k=s"); break; + case OUTPUT_START: write_mark_to_ansi_buf(s, "C"); break; + } } if (s->limit <= start_at) return s->escape_code_written;