aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2024-09-08 02:00:00 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2025-02-09 01:00:00 +0100
commitf7744227699d27045e87be9eac3464c2f62ff7e3 (patch)
treeeb1eff569e64c33792ea4a0e2eb9758f6c5ddab7
parent30719e5ef105547c4cf272c9cc55488782ca1a0b (diff)
downloadguix-f7744227699d27045e87be9eac3464c2f62ff7e3.tar.gz
guix-f7744227699d27045e87be9eac3464c2f62ff7e3.zip
read-print: Attempt to indent package arguments less.
* guix/read-print.scm (pretty-print-with-comments): Add an exception to the rule that values immediately follow keywords, when printing G-expressions within package arguments. Change-Id: I214a096701c87ab8bc34ab79e357dcb56e2db334
-rw-r--r--guix/read-print.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/guix/read-print.scm b/guix/read-print.scm
index 1f7902c546..e8caa2cfef 100644
--- a/guix/read-print.scm
+++ b/guix/read-print.scm
@@ -604,7 +604,13 @@ FORMAT-VERTICAL-SPACE; a useful value of 'canonicalize-vertical-space'."
(display (make-string indent #\space) port))
(let ((column (if newline? indent column)))
(print tail
- (keyword? item) ;keep #:key value next to one another
+ (and (keyword? item) ;keep #:key VALUE next to one another
+ ;; An exception to which is a G-expression immediately
+ ;; following a package argument such as #:phases.
+ (match tail
+ ((('gexp . _) . _)
+ (not (prefix? '(list arguments package) context)))
+ (_ #t)))
(blank? item)
(loop indent column
(or newline? delimited?)