Try to get handlers right

part of darcs patch Thu Sep 22 19:36:25 EEST 2005  Martin Gasbichler <gasbichl@informatik.uni-tuebingen.de>
This commit is contained in:
eknauel 2005-09-27 16:36:07 +00:00
parent 04e4dba6a2
commit ae9052aeaf
1 changed files with 21 additions and 25 deletions

View File

@ -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)