You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It looks like helix's rendering code happens in one place, since most of the drawing commands basically just enqueues.
Basically what should be done to make it work is sending DCS = 1 s (start) right before drawing and then DCS = 2 s (end) right after writing everything to pty. As a result screen updates from helix will be synchronized to terminal screen updates resulting in tearing/flicker free rendering.
As an example of terminals that support this could be tmux, iterm2, and alacritty. For tmux the Sync terminfo capability is required in controlling terminal to make it work.
It looks like helix's rendering code happens in one place, since most of the drawing commands basically just enqueues.
Basically what should be done to make it work is sending
DCS = 1 s
(start) right before drawing and thenDCS = 2 s
(end) right after writing everything to pty. As a result screen updates from helix will be synchronized to terminal screen updates resulting in tearing/flicker free rendering.As an example of terminals that support this could be
tmux
,iterm2
, andalacritty
. Fortmux
theSync
terminfo capability is required in controlling terminal to make it work.For more look at https://gitlab.com/gnachman/iterm2/-/wikis/synchronized-updates-spec.
--
It seems like adding those 2 sequences to
fn draw
should work, since that's the only entry point for writing in pty in helix?The text was updated successfully, but these errors were encountered: