import-utils: Do not include punctuation when wrapping in @code{}.
* guix/import/utils.scm (beautify-description): Exclude punctuation. * tests/import-utils.scm: Add new test.
parent
b4c7fe02ae
commit
c8a642de9a
|
@ -342,7 +342,14 @@ LENGTH characters."
|
|||
(let ((pattern (make-regexp "([A-Z][a-z]+[A-Z]|[a-z]+[A-Z])")))
|
||||
(match (list-matches pattern word)
|
||||
(() word)
|
||||
(_ (string-append "@code{" word "}")))))))))
|
||||
((m . rest)
|
||||
;; Do not include leading or trailing punctuation.
|
||||
(let* ((last-text (or (and=> (string-skip-right word char-set:punctuation) 1+)
|
||||
(string-length word)))
|
||||
(inner (substring word (match:start m) last-text))
|
||||
(pre (string-take word (match:start m)))
|
||||
(post (substring word last-text (string-length word))))
|
||||
(string-append pre "@code{" inner "}" post))))))))))
|
||||
(words
|
||||
(string-tokenize (string-trim-both description)
|
||||
(char-set-complement
|
||||
|
|
|
@ -61,6 +61,10 @@ Differences are hard to spot, e.g. in CLOS vs. GOOPS."))
|
|||
"The term API is not code, but @code{myAPI} might be."
|
||||
(beautify-description "The term API is not code, but myAPI might be."))
|
||||
|
||||
(test-equal "beautify-description: do not include punctuation when wrapping in @code"
|
||||
"Code (@code{DelayedMatrix}, @code{MaMa}, or @code{MeMe}) should be wrapped."
|
||||
(beautify-description "Code (DelayedMatrix, MaMa, or MeMe) should be wrapped."))
|
||||
|
||||
(test-equal "license->symbol"
|
||||
'license:lgpl2.0
|
||||
(license->symbol license:lgpl2.0))
|
||||
|
|
Reference in New Issue