~ruther/guix-local

069d43a7652e5b8bf07d33fd1013bdb8465012ac — Ludovic Courtès 10 years ago 29ff6d9
ui: 'package->recutils' accurately honors the number of columns.

* guix/ui.scm (package->recutils)[width*]: New variable.  Use it instead
of WIDTH.
1 files changed, 7 insertions(+), 2 deletions(-)

M guix/ui.scm
M guix/ui.scm => guix/ui.scm +7 -2
@@ 855,11 855,16 @@ followed by \"+ \", which makes for a valid multi-line field value in the
(define* (package->recutils p port #:optional (width (%text-width)))
  "Write to PORT a `recutils' record of package P, arranging to fit within
WIDTH columns."
  (define width*
    ;; The available number of columns once we've taken into account space for
    ;; the initial "+ " prefix.
    (if (> width 2) (- width 2) width))

  (define (dependencies->recutils packages)
    (let ((list (string-join (map package-full-name
                                  (sort packages package<?)) " ")))
      (string->recutils
       (fill-paragraph list width
       (fill-paragraph list width*
                       (string-length "dependencies: ")))))

  (define (package<? p1 p2)


@@ 901,7 906,7 @@ WIDTH columns."
  (format port "~a~2%"
          (string->recutils
           (string-trim-right
            (parameterize ((%text-width width))
            (parameterize ((%text-width width*))
              (texi->plain-text
               (string-append "description: "
                              (or (and=> (package-description p) P_)