diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2017-04-16 15:02:42 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2017-04-16 15:05:31 -0700 |
commit | ace7ffb714ce5314c665f28945ee0f3f1664f9ca (patch) | |
tree | 191088837e3a6c6fa6a38aae59431efa88c86cb9 /081print.mu | |
parent | ef73b04e744a69973208096a49d4ae52ddbb84d2 (diff) | |
download | mu-ace7ffb714ce5314c665f28945ee0f3f1664f9ca.tar.gz |
3824 - experiment: stop buffering in termbox
Now it's much more apparent why things are slow. You can see each repaint happening. Already I fixed one performance bug -- in clear-rest-of-screen. Since this subverts Mu's fake screen there may be bugs. Another salubrious side effect: I've finally internalized that switching to raw mode doesn't have to clear the screen. That was just an artifact of how termbox abstracted operations. Now I can conceive of using termbox to build a repl as well. (I was inspired to poke into termbox internals by http://viewsourcecode.org/snaptoken/kilo and https://github.com/antirez/linenoise)
Diffstat (limited to '081print.mu')
-rw-r--r-- | 081print.mu | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/081print.mu b/081print.mu index 487696c5..f654a5ae 100644 --- a/081print.mu +++ b/081print.mu @@ -50,13 +50,6 @@ def clear-screen screen:&:screen -> screen:&:screen [ *screen <- put *screen, cursor-column:offset, 0 ] -def sync-screen screen:&:screen -> screen:&:screen [ - local-scope - load-ingredients - return-if screen # do nothing for fake screens - sync-display -] - def fake-screen-is-empty? screen:&:screen -> result:bool [ local-scope load-ingredients @@ -620,22 +613,6 @@ def show-cursor screen:&:screen -> screen:&:screen [ show-cursor-on-display ] -def hide-screen screen:&:screen -> screen:&:screen [ - local-scope - load-ingredients - return-if screen # fake screen; do nothing - # real screen - hide-display -] - -def show-screen screen:&:screen -> screen:&:screen [ - local-scope - load-ingredients - return-if screen # fake screen; do nothing - # real screen - show-display -] - def print screen:&:screen, s:text -> screen:&:screen [ local-scope load-ingredients |