From 105c260f00479d404b140be534efb21f9f3d17fe Mon Sep 17 00:00:00 2001
From: Ludovic Courtès <ludo@gnu.org>
Date: Fri, 7 Nov 2014 17:34:15 +0100
Subject: lint: Skip starting-article test for the synopses of GNU packages.

* guix/scripts/lint.scm (check-synopsis-style)[check-start-article]:
  Change to (const #t) when PACKAGE matches 'gnu-package?'.
---
 guix/scripts/lint.scm | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

(limited to 'guix')

diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm
index d6bfffda13..350a35222c 100644
--- a/guix/scripts/lint.scm
+++ b/guix/scripts/lint.scm
@@ -23,6 +23,7 @@
   #:use-module (guix records)
   #:use-module (guix ui)
   #:use-module (guix utils)
+  #:use-module (guix gnu-maintenance)
   #:use-module (gnu packages)
   #:use-module (ice-9 match)
   #:use-module (ice-9 regex)
@@ -154,12 +155,17 @@ line."
                     "no period allowed at the end of the synopsis"
                     'synopsis)))
 
-  (define (check-start-article synopsis)
-    (when (or (string-prefix-ci? "A " synopsis)
-              (string-prefix-ci? "An " synopsis))
-      (emit-warning package
-                    "no article allowed at the beginning of the synopsis"
-                    'synopsis)))
+  (define check-start-article
+    ;; Skip this check for GNU packages, as suggested by Karl Berry's reply to
+    ;; <http://lists.gnu.org/archive/html/bug-womb/2014-11/msg00000.html>.
+    (if (false-if-exception (gnu-package? package))
+        (const #t)
+        (lambda (synopsis)
+          (when (or (string-prefix-ci? "A " synopsis)
+                    (string-prefix-ci? "An " synopsis))
+            (emit-warning package
+                          "no article allowed at the beginning of the synopsis"
+                          'synopsis)))))
 
   (define (check-synopsis-length synopsis)
     (when (>= (string-length synopsis) 80)
-- 
cgit v1.2.3