mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-18 13:36:36 +01:00
lint: Ignore initials from double space check.
Prevent false positives in initials as the are commonly used in names, e.g. Margaret E. Hamilton - which obviously do not end sentences. Check whether a period character `.' is preceded by at least two characters. This should save us from false positives when linting. * guix/lint.scm(check-description-style)[check-end-of-sentence-space] Add condition. * tests/lint.scm: Add test case. Change-Id: I42a1365aaaed2afc7308b88ebd4b0720ad362761 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
27b4c319c0
commit
9447629672
2 changed files with 11 additions and 6 deletions
|
@ -466,11 +466,16 @@ (define (check-end-of-sentence-space description)
|
|||
(reverse (fold-matches
|
||||
"\\. [A-Z]" description '()
|
||||
(lambda (m r)
|
||||
;; Filter out matches of common abbreviations.
|
||||
(if (find (lambda (s)
|
||||
(string-suffix-ci? s (match:prefix m)))
|
||||
'("i.e" "e.g" "a.k.a" "resp"))
|
||||
r (cons (match:start m) r)))))))
|
||||
;; Filter out matches of common abbreviations and
|
||||
;; initials.
|
||||
(let ((pre (match:prefix m)))
|
||||
(if (or
|
||||
(string-match "[A-Z]$" pre) ;; Initial found
|
||||
(find (lambda (s)
|
||||
(string-suffix-ci? s pre))
|
||||
'("i.e" "e.g" "a.k.a" "resp")))
|
||||
r
|
||||
(cons (match:start m) r))))))))
|
||||
(if (null? infractions)
|
||||
'()
|
||||
(list
|
||||
|
|
|
@ -173,7 +173,7 @@ (define (warning-contains? str warnings)
|
|||
'()
|
||||
(let ((pkg (dummy-package "x"
|
||||
(description
|
||||
"E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD)."))))
|
||||
"E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD). Name O. Person"))))
|
||||
(check-description-style pkg)))
|
||||
|
||||
(test-equal "description: may not contain trademark signs: ™"
|
||||
|
|
Loading…
Reference in a new issue