summaryrefslogtreecommitdiff
path: root/src/guile/skribilo/biblio/template.scm
diff options
context:
space:
mode:
Diffstat (limited to 'src/guile/skribilo/biblio/template.scm')
-rw-r--r--src/guile/skribilo/biblio/template.scm13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/guile/skribilo/biblio/template.scm b/src/guile/skribilo/biblio/template.scm
index 02b4e76..a38790e 100644
--- a/src/guile/skribilo/biblio/template.scm
+++ b/src/guile/skribilo/biblio/template.scm
@@ -21,9 +21,13 @@
(define-module (skribilo biblio template)
:use-module (srfi srfi-1)
+ :use-module (srfi srfi-34)
+ :use-module (srfi srfi-35)
+
:use-module (skribilo ast)
:autoload (skribilo lib) (skribe-error)
:autoload (skribilo output) (output)
+ :use-module (skribilo biblio)
:use-module (ice-9 optargs)
@@ -91,8 +95,9 @@
((if)
(if (or (> (length formals) 3)
(< (length formals) 2))
- (error (_ "wrong number of arguments to `if' template")
- formals))
+ (raise (condition
+ (&biblio-template-error (expression sexp)
+ (template template)))))
(let* ((if-cond (car formals))
(if-then (cadr formals))
(if-else (if (null? (cddr formals))
@@ -118,7 +123,9 @@
((string? template)
template)
(else
- (error (_ "invalid bibliography entry template") template)))))
+ (raise (condition
+ (&biblio-template-error (expression template)
+ (template template))))))))
(define* (output-bib-entry-template bib engine template