diff --git a/collects/macro-debugger/syntax-browser/color.ss b/collects/macro-debugger/syntax-browser/color.ss index 8430481377..70ba1ee006 100644 --- a/collects/macro-debugger/syntax-browser/color.ss +++ b/collects/macro-debugger/syntax-browser/color.ss @@ -8,8 +8,9 @@ (provide syntax-text-colorer%) (define colors - (list "black" "darkred" "red" - "green" "mediumforestgreen" "darkgreen" + (list "black" "red" "blue" + "mediumforestgreen" "darkgreen" + "darkred" "cornflowerblue" "royalblue" "steelblue" "darkslategray" "darkblue" "indigo" "purple" "orange" "salmon" "darkgoldenrod" "olive")) diff --git a/collects/macro-debugger/syntax-browser/pretty-helper.ss b/collects/macro-debugger/syntax-browser/pretty-helper.ss index 4f62b9b0a4..e9cc88da3e 100644 --- a/collects/macro-debugger/syntax-browser/pretty-helper.ss +++ b/collects/macro-debugger/syntax-browser/pretty-helper.ss @@ -84,6 +84,8 @@ (pairloop (cdr obj)))] [(null? obj) null] + [(and (syntax? obj) (null? (syntax-e obj))) + null] [else (loop obj)])) (values (loop stx) flat=>stx diff --git a/collects/macro-debugger/view/gui.ss b/collects/macro-debugger/view/gui.ss index c74beef175..48c4221d44 100644 --- a/collects/macro-debugger/view/gui.ss +++ b/collects/macro-debugger/view/gui.ss @@ -61,7 +61,10 @@ (class base-frame% (init policy macro-hiding?) - (init (show-hiding-panel? #t)) + (init (show-hiding-panel? #t) + (identifier=? #f) + (width (sb:pref:width)) + (height (sb:pref:height))) (inherit get-menu% get-menu-item% get-menu-bar @@ -70,9 +73,9 @@ get-help-menu) (super-new (label "Macro stepper") - (width (sb:pref:width)) - (height (sb:pref:height))) - + (width width) + (height height)) + (define/override (on-size w h) (send widget update/preserve-view)) @@ -137,8 +140,16 @@ (policy policy) (macro-hiding? macro-hiding?) (show-hiding-panel? show-hiding-panel?))) - (define/public (get-widget) widget) + + (begin + (when identifier=? + (let ([p (assoc identifier=? (sb:identifier=-choices))]) + (when p + (send (send widget get-controller) + on-update-identifier=? + (cdr p)))))) + (frame:reorder-menus this) )) @@ -311,7 +322,7 @@ (unless step (let ([result (lift/deriv-e2 synth-deriv)]) (when result - (send sbview add-text "Normal form\n") + (send sbview add-text "Expansion finished\n") (send sbview add-syntax (lift/deriv-e2 synth-deriv))) (unless result (send sbview add-text "Error\n"))))