diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-04-14 23:43:31 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-04-15 00:32:18 +0200 |
commit | 069d43a7652e5b8bf07d33fd1013bdb8465012ac (patch) | |
tree | e0cc4366c200606f6baae9b2d83b07da1703bd23 | |
parent | 29ff6d9fcc05b283b6d797146330e950286028ed (diff) | |
download | guix-069d43a7652e5b8bf07d33fd1013bdb8465012ac.tar guix-069d43a7652e5b8bf07d33fd1013bdb8465012ac.tar.gz |
ui: 'package->recutils' accurately honors the number of columns.
* guix/ui.scm (package->recutils)[width*]: New variable. Use it instead
of WIDTH.
-rw-r--r-- | guix/ui.scm | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/guix/ui.scm b/guix/ui.scm index f95c63a81b..391af9a99f 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -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_) |