diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-04-14 22:50:48 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-04-15 00:32:18 +0200 |
commit | 4d276c640374c9981dad2681f98af8c8d133939a (patch) | |
tree | d5060ec00f01b7511adaef4873150fa38bcf04b0 | |
parent | 8a2154fefaafe631905c12891c9c2587dadbc863 (diff) | |
download | guix-4d276c640374c9981dad2681f98af8c8d133939a.tar guix-4d276c640374c9981dad2681f98af8c8d133939a.tar.gz |
download: Add 'current-terminal-columns' parameter.
* guix/build/download.scm (current-terminal-columns): New variable.
(progress-proc): Use it instead of the hard-coded "80".
-rw-r--r-- | guix/build/download.scm | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/guix/build/download.scm b/guix/build/download.scm index 3c8359b602..bd354a6985 100644 --- a/guix/build/download.scm +++ b/guix/build/download.scm @@ -39,6 +39,7 @@ maybe-expand-mirrors url-fetch byte-count->string + current-terminal-columns progress-proc uri-abbreviation store-path-abbreviation)) @@ -53,6 +54,10 @@ ;; Size of the HTTP receive buffer. 65536) +(define current-terminal-columns + ;; Number of columns of the terminal. + (make-parameter 80)) + (define (nearest-exact-integer x) "Given a real number X, return the nearest exact integer, with ties going to the nearest exact even integer." @@ -166,9 +171,10 @@ used to shorten FILE for display." (byte-count->string throughput) (seconds->string elapsed) (progress-bar %) %))) - ;; TODO: Make this adapt to the actual terminal width. (display "\r\x1b[K" log-port) - (display (string-pad-middle left right 80) log-port) + (display (string-pad-middle left right + (current-terminal-columns)) + log-port) (flush-output-port log-port) (cont)))) (lambda (transferred cont) @@ -182,9 +188,10 @@ used to shorten FILE for display." (byte-count->string throughput) (seconds->string elapsed) (byte-count->string transferred)))) - ;; TODO: Make this adapt to the actual terminal width. (display "\r\x1b[K" log-port) - (display (string-pad-middle left right 80) log-port) + (display (string-pad-middle left right + (current-terminal-columns)) + log-port) (flush-output-port log-port) (cont)))))))) |