diff --git a/scheme/nuit-engine.scm b/scheme/nuit-engine.scm index d06d58a..c9b47bf 100644 --- a/scheme/nuit-engine.scm +++ b/scheme/nuit-engine.scm @@ -236,10 +236,7 @@ (command-plugin (find-command-plugin command)) (viewer (find/init-plugin-for-result - (with-errno-handler - ((errno data) - (else data)) - ((command-plugin-evaluater command-plugin) command args)))) + ((command-plugin-evaluater command-plugin) command args))) (new-entry (make-history-entry command args viewer))) ;; FIXME, use insert here @@ -273,7 +270,9 @@ (receive (command args) (split-scheme-command-line command-line) (let* ((viewer (find/init-plugin-for-result - (eval-scheme-command command args))) + (with-inspector-handler + (lambda () + (eval-scheme-command command args))))) (new-entry (make-history-entry command args viewer))) (append-to-history! new-entry) @@ -285,28 +284,25 @@ (move-cursor (command-buffer) (result-buffer)) (refresh-command-window) (release-lock paint-lock)))) - (define (eval-command-in-scheme-mode command-line) - (with-inspector-handler - (lambda () - (if (scheme-command-line? command-line) - (process-scheme-command command-line) - (let ((viewer - (find/init-plugin-for-result - (eval-string command-line)))) - (let ((new-entry - (make-history-entry command-line '() viewer))) - ;; #### shouldn't we use some kind of insertion here? - (append-to-history! new-entry) - (signal-result-buffer-object-change) - (obtain-lock paint-lock) - (paint-active-command-window) - (paint-result-window new-entry) - (refresh-result-window) - (move-cursor (command-buffer) (result-buffer)) - (refresh-command-window) - (release-lock paint-lock))))))) + (if (scheme-command-line? command-line) + (process-scheme-command command-line) + (let ((viewer + (find/init-plugin-for-result + (eval-string command-line))) + (new-entry + (make-history-entry command-line '() viewer))) + ;; #### shouldn't we use some kind of insertion here? + (append-to-history! new-entry) + (signal-result-buffer-object-change) + (obtain-lock paint-lock) + (paint-active-command-window) + (paint-result-window new-entry) + (refresh-result-window) + (move-cursor (command-buffer) (result-buffer)) + (refresh-command-window) + (release-lock paint-lock)))) ;; #### crufty, and a very dumb idea (define split-command-line string-tokenize)