From c3454179249c84651f50fdfb88950b66f5760923 Mon Sep 17 00:00:00 2001 From: Steve Sprang Date: Tue, 9 Jan 2018 14:10:04 -0800 Subject: [PATCH 2/3] package: Improve output appearance when listing packages. * guix/scripts/package.scm (process-query): Use pretty-print-table when listing installed and available packages. --- guix/scripts/package.scm | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 617e102d9..ced85f850 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -723,15 +723,14 @@ processed, #f otherwise." (manifest (profile-manifest profile)) (installed (manifest-entries manifest))) (leave-on-EPIPE - (for-each (match-lambda - (($ name version output path _) - (when (or (not regexp) - (regexp-exec regexp name)) - (format #t "~a\t~a\t~a\t~a~%" - name (or version "?") output path)))) - - ;; Show most recently installed packages last. - (reverse installed))) + (let ((rows (filter-map + (match-lambda + (($ name version output path _) + (and (regexp-exec regexp name) + (list name (or version "?") output path)))) + installed))) + ;; Show most recently installed packages last. + (pretty-print-table (reverse rows)))) #t)) (('list-available regexp) @@ -749,16 +748,16 @@ processed, #f otherwise." r))) '()))) (leave-on-EPIPE - (for-each (lambda (p) - (format #t "~a\t~a\t~a\t~a~%" - (package-name p) - (package-version p) - (string-join (package-outputs p) ",") - (location->string (package-location p)))) - (sort available - (lambda (p1 p2) - (stringstring (package-location p)))) + (sort available + (lambda (p1 p2) + (string