Re: [dev] [st] Drawing optimizations

From: Peter John Hartman <>
Date: Sun, 22 Jan 2012 13:22:20 -0500

On Sat, Jan 21, 2012 at 11:54:17PM +0100, Aurélien Aptel wrote:
> Hi all,
> I've made st ~10x faster on my computer. If there are no major bugs I
> will tag tip as version 0.2.
> Here's the relevant commit message:
> * add a timeout value (SELECT_TIMEOUT) of 20ms in the select() call
> * wait at least 20ms (DRAW_TIMEOUT) between draw() calls
> * only copy dirty lines from the buffer to the screen
> what draw() does:
> * clears dirty lines in the buffer
> * draws the longest same-attributes string of each
> dirty line to the buffer with multiple xdraws() call
> * copies the current dirty line from buffer to the screen with a single
> xcopy() call
> this changeset makes st run ~10x faster.


Unfortunately, the tmux-split-pane problem still persists. The
tmux-split-pane problem is this: if one pane in tmux is spitting
out a bunch of text (e.g. a sudo cat /var/log/messages or most
compilations) you can't really switch panes or do much of anything
at all.


sic dicit magister P
University of Toronto / Fordham University
Collins Hall B6; Office Hours MR3-4
gpg --keyserver --recv-keys E0DBD3D6 
Received on Sun Jan 22 2012 - 19:22:20 CET

This archive was generated by hypermail 2.3.0 : Sun Jan 22 2012 - 19:24:08 CET