From c0cd2fa6278d76bac99dd862ab37560b95aab6dd Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Thu, 15 Aug 2019 12:38:01 -0700 Subject: [PATCH] oops: wrap-qs wasn't reversed --- quad/quad/wrap.rkt | 3 ++- quad/quadwriter/layout.rkt | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/quad/quad/wrap.rkt b/quad/quad/wrap.rkt index 924f3867..c28e6e50 100644 --- a/quad/quad/wrap.rkt +++ b/quad/quad/wrap.rkt @@ -41,7 +41,8 @@ #:no-break [no-break-func-arg #false] ;; size of potential wrap. ;; simple: measure q and add it to last-dist - ;; sophisticated: process all wrap-qs and measure resulting + ;; sophisticated: process all wrap-qs and measure resulting + ;; wrap-qs are reversed from typographic order #:distance [distance-func (λ (q last-dist wrap-qs) (+ last-dist (if (printable? q) (distance q) 0)))] ;; called when wrap counter increments. diff --git a/quad/quadwriter/layout.rkt b/quad/quadwriter/layout.rkt index ebd1b9f7..e1f786b7 100644 --- a/quad/quadwriter/layout.rkt +++ b/quad/quadwriter/layout.rkt @@ -639,9 +639,9 @@ ;; can be repeated without damage. [((? null?) _) null] [((cons q rest) where) - #;(set-quad-from-parent! q (or where (quad-from q))) - #;(cons q rest) - (cons (quad-copy q [from-parent (or where (quad-from q))]) rest)]) + (set-quad-from-parent! q (or where (quad-from q))) + (cons q rest) + #;(cons (quad-copy q [from-parent (or where (quad-from q))]) rest)]) (define ((col-finish-wrap col-quad) lns . _) (match lns @@ -670,7 +670,7 @@ #:no-break (λ (q) (quad-ref q :no-colbr)) ; cooperates with make-nobreak #:distance (λ (q dist-so-far wrap-qs) ;; do trial block insertions - (for/sum ([x (in-list (insert-blocks wrap-qs))]) + (for/sum ([x (in-list (insert-blocks (reverse wrap-qs)))]) (pt-y (size x)))) #:finish-wrap (col-finish-wrap column-quad)) col-spacer))