Discussion:
[PATCH 2/2] Fix broken reflowing for readline prompts
Balazs Kezes
2014-11-07 16:31:15 UTC
Permalink
Steps to reproduce:
1. Create a vertical split. Make the left one quite narrow.
2. Assuming we are running bash in the left pane, enter some text so
that it is at least 2-3 lines long.
3. Press home (or C-a) then enter (or escape-# to comment out the line).
4. Make the left pane bigger
tmux resize-pane -R 5
5. Observe that the lines are not reflowed.

This is because when readline is not on the last line, it will print
newlines to go there. Whenever tmux sees a newline, it marks the
corresponding line as a not wrapped line.

This works well in gnu screen and it is implemented by only setting the
wrapped flag only if there is an overflow, otherwise the flag is left as
is. This patch implements the same behavior.
---
screen-write.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/screen-write.c b/screen-write.c
index b3555b6..9430a77 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -795,8 +795,6 @@ screen_write_linefeed(struct screen_write_ctx *ctx, int wrapped)
gl = &s->grid->linedata[s->grid->hsize + s->cy];
if (wrapped)
gl->flags |= GRID_LINE_WRAPPED;
- else
- gl->flags &= ~GRID_LINE_WRAPPED;

if (s->cy == s->rlower)
grid_view_scroll_region_up(s->grid, s->rupper, s->rlower);
--
2.1.3


------------------------------------------------------------------------------
Loading...