diff --git a/scheme/nuit-engine.scm b/scheme/nuit-engine.scm index f58f130..f3592ba 100644 --- a/scheme/nuit-engine.scm +++ b/scheme/nuit-engine.scm @@ -376,14 +376,19 @@ (paint-bar-2) (paint-command-window-contents) (set! command-buffer (move-cursor command-buffer)) + (refresh-command-window) (loop (wait-for-input)))) (else (set! command-buffer (input command-buffer ch)) + (debug-message "loop after input " command-buffer) (werase (app-window-curses-win command-window)) - (print-command-buffer (app-window-curses-win command-window) - command-buffer) + (set! command-buffer + (print-command-buffer (app-window-curses-win command-window) + command-buffer)) + (debug-message "loop after print-command-buffer " command-buffer) (set! command-buffer (move-cursor command-buffer)) + (refresh-command-window) (loop (wait-for-input)))))))))) (define (window-init-curses-win! window) @@ -455,7 +460,9 @@ (werase (app-window-curses-win command-window)) (set! command-buffer (print-command-buffer (app-window-curses-win command-window) - command-buffer)) + command-buffer))) + +(define (refresh-command-window) (wrefresh (app-window-curses-win command-window))) (define (paint-result-window) @@ -474,7 +481,8 @@ (paint-command-frame-window) (paint-command-window-contents) (paint-result-window) - (move-cursor command-buffer)) + (move-cursor command-buffer) + (refresh-command-window)) (define (wait-for-input) (noecho) @@ -813,7 +821,8 @@ (buffer-pos-fin-ln command-buffer))) (let ((posx (modulo (buffer-pos-col command-buffer) (buffer-num-cols command-buffer)))) - (set-buffer-pos-x! command-buffer posx))) + (set-buffer-pos-x! command-buffer posx)) + (debug-message "compute-y-x " command-buffer)) (begin (if (>= pos-result result-lines) (set! result-buffer-pos-y result-lines)