diff options
Diffstat (limited to 'src/guile/skribilo/package/eq.scm')
-rw-r--r-- | src/guile/skribilo/package/eq.scm | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/guile/skribilo/package/eq.scm b/src/guile/skribilo/package/eq.scm index cadc1ba..821840f 100644 --- a/src/guile/skribilo/package/eq.scm +++ b/src/guile/skribilo/package/eq.scm @@ -336,7 +336,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., ;;; -(markup-writer 'eq-display (find-engine 'base) +(markup-writer 'eq-display (lookup-engine-class 'base) :action (lambda (node engine) (for-each (lambda (node) (let ((eq? (is-markup? node 'eq))) @@ -345,7 +345,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (if eq? (output (linebreak) engine)))) (markup-body node)))) -(markup-writer 'eq (find-engine 'base) +(markup-writer 'eq (lookup-engine-class 'base) :action (lambda (node engine) ;; The `:renderer' option should be a symbol (naming an engine ;; class) or an engine or engine class. This allows the use of @@ -364,7 +364,9 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (let ((lout-code (with-output-to-string (lambda () - (output node (find-engine 'lout)))))) + (output node + (make-engine + (lookup-engine-class 'lout))))))) (output (lout-illustration :ident (markup-ident node) lout-code) @@ -380,7 +382,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., ;; Note: The text-only rendering is less ambiguous if we parenthesize ;; without taking operator precedence into account. (let ((precedence (operator-precedence op))) - `(markup-writer ',(symbol-append 'eq: op) (find-engine 'base) + `(markup-writer ',(symbol-append 'eq: op) (lookup-engine-class 'base) :action (lambda (node engine) (let loop ((operands (markup-body node))) (if (null? operands) @@ -422,14 +424,14 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (simple-markup-writer >= (symbol "ge")) (simple-markup-writer <= (symbol "le")) -(markup-writer 'eq:sqrt (find-engine 'base) +(markup-writer 'eq:sqrt (lookup-engine-class 'base) :action (lambda (node engine) (display "sqrt(") (output (markup-body node) engine) (display ")"))) (define-macro (simple-binary-markup-writer op obj) - `(markup-writer ',(symbol-append 'eq: op) (find-engine 'base) + `(markup-writer ',(symbol-append 'eq: op) (lookup-engine-class 'base) :action (lambda (node engine) (let ((body (markup-body node))) (if (= (length body) 2) @@ -446,7 +448,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., "wrong argument type" body)))))) -(markup-writer 'eq:expt (find-engine 'base) +(markup-writer 'eq:expt (lookup-engine-class 'base) :action (lambda (node engine) (let ((body (markup-body node))) (if (= (length body) 2) @@ -460,7 +462,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (simple-binary-markup-writer in (symbol "in")) (simple-binary-markup-writer notin (symbol "notin")) -(markup-writer 'eq:apply (find-engine 'base) +(markup-writer 'eq:apply (lookup-engine-class 'base) :action (lambda (node engine) (let ((func (car (markup-body node)))) (output func engine) @@ -475,7 +477,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (loop (cdr operands))))) (display ")")))) -(markup-writer 'eq:sum (find-engine 'base) +(markup-writer 'eq:sum (lookup-engine-class 'base) :action (lambda (node engine) (let ((from (markup-option node :from)) (to (markup-option node :to))) @@ -488,7 +490,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (output (markup-body node) engine) (display ")")))) -(markup-writer 'eq:prod (find-engine 'base) +(markup-writer 'eq:prod (lookup-engine-class 'base) :action (lambda (node engine) (let ((from (markup-option node :from)) (to (markup-option node :to))) @@ -501,7 +503,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (output (markup-body node) engine) (display ")")))) -(markup-writer 'eq:script (find-engine 'base) +(markup-writer 'eq:script (lookup-engine-class 'base) :action (lambda (node engine) (let ((body (markup-body node)) (sup* (markup-option node :sup)) @@ -510,7 +512,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (output (sup sup*) engine) (output (sub sub*) engine)))) -(markup-writer 'eq:limit (find-engine 'base) +(markup-writer 'eq:limit (lookup-engine-class 'base) :action (lambda (node engine) (let ((body (markup-body node)) (var (markup-option node :var)) @@ -523,7 +525,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., (output body engine) (display ")")))) -(markup-writer 'eq:combinations (find-engine 'base) +(markup-writer 'eq:combinations (lookup-engine-class 'base) :action (lambda (node engine) (let ((of (markup-option node :of)) (among (markup-option node :among))) @@ -539,7 +541,7 @@ a symbol representing the mathematical operator denoted by @var{m} (e.g., ;;; Initialization. ;;; -(when-engine-is-loaded 'lout +(when-engine-class-is-loaded 'lout (lambda () (resolve-module '(skribilo package eq lout)))) |