scriblib/autbib: fix the "." in "al."

Make the "." in "al." an abbreviation-ending period, instead of a
sentence-ending period.
This commit is contained in:
Matthew Flatt 2017-11-02 08:54:55 -06:00
parent 5ae38495cd
commit 9f799cd86e

View File

@ -264,8 +264,8 @@
[(date<? b a) #f] [(date<? b a) #f]
[else (string-ci<? (auto-bib-key a) (auto-bib-key b))])))) [else (string-ci<? (auto-bib-key a) (auto-bib-key b))]))))
(define (ambiguous? a b) (define (ambiguous? a b)
(and (string-ci=? (author-element-cite (extract-bib-author a)) (and (string-ci=? (content->string (author-element-cite (extract-bib-author a)))
(author-element-cite (extract-bib-author b))) (content->string (author-element-cite (extract-bib-author b))))
(auto-bib-date a) (auto-bib-date a)
(auto-bib-date b) (auto-bib-date b)
(date=? a b))) (date=? a b)))
@ -593,8 +593,8 @@
(make-other-author-element (make-other-author-element
#f #f
(list "Alia") (list "Alia")
"al." (list "al" ._)
"al.")) (list "al" ._)))
(define (authors name . names*) (define (authors name . names*)
(define names (map parse-author (cons name names*))) (define names (map parse-author (cons name names*)))
@ -603,11 +603,12 @@
(case (length names) (case (length names)
[(1) (author-element-cite (car names))] [(1) (author-element-cite (car names))]
[(2) (if (other-author-element? (cadr names)) [(2) (if (other-author-element? (cadr names))
(format "~a et al." (author-element-cite (car names))) (list (author-element-cite (car names)) " et al" @._)
(format "~a and ~a" (list
(author-element-cite (car names)) (author-element-cite (car names))
" and "
(author-element-cite (cadr names))))] (author-element-cite (cadr names))))]
[else (format "~a et al." (author-element-cite (car names)))])) [else (list (author-element-cite (car names)) " et al" ._)]))
(make-author-element (make-author-element
#f #f
(let loop ([names names] [prefix 0]) (let loop ([names names] [prefix 0])
@ -615,10 +616,10 @@
(case prefix (case prefix
[(0) names] [(0) names]
[(1) (if (other-author-element? (car names)) [(1) (if (other-author-element? (car names))
(list " et al.") (list " et al" ._)
(list " and " (car names)))] (list " and " (car names)))]
[else (if (other-author-element? (car names)) [else (if (other-author-element? (car names))
(list ", et al.") (list ", et al" ._)
(list ", and " (car names)))])] (list ", and " (car names)))])]
[else [else
(case prefix (case prefix