diff mbox series

[bug#55615] gnu: Add r-pscbs.

Message ID 87zgj3cs09.fsf@elephly.net
State Accepted
Headers show
Series [bug#55615] gnu: Add r-pscbs. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Ricardo Wurmus May 27, 2022, 8:12 a.m. UTC
zimoun <zimon.toutoune@gmail.com> writes:

> Hi,
>
> On Tue, 24 May 2022 at 23:30, Ricardo Wurmus <rekado@elephly.net> wrote:
>
>> Applied with formatting changes.  Thanks!
>
> Indeed, sorry.  I reformatted the output of "guix import" but then I
> forgot to reformat again the phase modification (my bad!).  And I ran
> "guix lint" which reported nothing.   But "guix style" reformats;
> which I do not use (yet).
>
> Well, it is many manual error-prone steps.  My questions are :
>
>  1. Could we adapted "guix import cran" to output something using the
> format of "guix style"?

How about this:

Comments

Simon Tournier June 1, 2022, 9:02 a.m. UTC | #1
Hi Ricardo,

On Fri, 27 May 2022 at 10:13, Ricardo Wurmus <rekado@elephly.net> wrote:

> How about this:

I am late and you already applied it.  Cool!  :-)

Thanks,
simon
diff mbox series

Patch

From a10afc4c60ce734941c3c080cf13ec6636f0be33 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Fri, 27 May 2022 10:07:26 +0200
Subject: [PATCH] scripts/import: Use pretty printer from (guix scripts style).

* guix/scripts/import.scm (guix-import): Use pretty-print-with-comments.
(newline-rewriting-port): Remove procedure.
---
 guix/scripts/import.scm | 39 +++------------------------------------
 1 file changed, 3 insertions(+), 36 deletions(-)

diff --git a/guix/scripts/import.scm b/guix/scripts/import.scm
index fa79f3211e..62aa7bdbc5 100644
--- a/guix/scripts/import.scm
+++ b/guix/scripts/import.scm
@@ -2,7 +2,7 @@ 
 ;;; Copyright © 2012, 2013, 2014, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 David Thompson <davet@gnu.org>
 ;;; Copyright © 2018 Kyle Meyer <kyle@kyleam.com>
-;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2019, 2022 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
@@ -25,6 +25,7 @@ 
 (define-module (guix scripts import)
   #:use-module (guix ui)
   #:use-module (guix scripts)
+  #:use-module (guix scripts style)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-11)
@@ -32,41 +33,9 @@  (define-module (guix scripts import)
   #:use-module (srfi srfi-37)
   #:use-module (ice-9 format)
   #:use-module (ice-9 match)
-  #:use-module (ice-9 pretty-print)
   #:export (%standard-import-options
             guix-import))
 
-
-;;;
-;;; Helper.
-;;;
-
-(define (newline-rewriting-port output)
-  "Return an output port that rewrites strings containing the \\n escape
-to an actual newline.  This works around the behavior of `pretty-print'
-and `write', which output these as \\n instead of actual newlines,
-whereas we want the `description' field to contain actual newlines
-rather than \\n."
-  (define (write-string str)
-    (let loop ((chars (string->list str)))
-      (match chars
-        (()
-         #t)
-        ((#\\ #\n rest ...)
-         (newline output)
-         (loop rest))
-        ((chr rest ...)
-         (write-char chr output)
-         (loop rest)))))
-
-  (make-soft-port (vector (cut write-char <>)
-                          write-string
-                          (lambda _ #t)           ; flush
-                          #f
-                          (lambda _ #t)           ; close
-                          #f)
-                  "w"))
-
 
 ;;;
 ;;; Command line options.
@@ -119,9 +88,7 @@  (define-command (guix-import . args)
     ((importer args ...)
      (if (member importer importers)
          (let ((print (lambda (expr)
-                        (pretty-print expr (newline-rewriting-port
-                                            (current-output-port))
-                                      #:max-expr-width 80))))
+                        (pretty-print-with-comments (current-output-port) expr))))
            (match (apply (resolve-importer importer) args)
              ((and expr (or ('package _ ...)
                             ('let _ ...)
-- 
2.36.1