Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Fun redraw issue with double-width characters
- X-seq: zsh-workers 28365
- From: Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx>
- To: zsh workers <zsh-workers@xxxxxxx>
- Subject: Re: Fun redraw issue with double-width characters
- Date: Mon, 25 Oct 2010 07:31:46 -0700
- In-reply-to: <AANLkTi=g=tVrmxK6XBoD=xzwK+C5yE1x5xXiMQAjc2km@xxxxxxxxxxxxxx>
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
- References: <AANLkTinpzD04E3cm+myCUDVEXvhUhQc7VyyNzz2WxzvL@xxxxxxxxxxxxxx> <20101024191229.0bc47b23@xxxxxxxxxxxxxxxxxxx> <AANLkTi=g=tVrmxK6XBoD=xzwK+C5yE1x5xXiMQAjc2km@xxxxxxxxxxxxxx>
On Oct 25, 6:14am, Mikael Magnusson wrote:
}
} I am asking this only out of curiosity, how come updates on the first
} line are done like [...]
} while updates on the second line (ie after wrapping everything) are
} done shorter, like [...]
There's a complicated algorithm based on querying terminfo/curses for
the "expense" involved in doing any given screen update, which is used
to decide whether it's more efficent to send terminal controls to move
the screen image around, or instead to simply overwrite what's there.
It's possible that the computation of "expense" is wrong when some of
the characters to be moved are multibyte, but it also might be that what
constitutes "expense" doesn't map directly to the number of bytes that
pass through write().
Messages sorted by:
Reverse Date,
Date,
Thread,
Author