diff --git a/dollar.rkt b/dollar.rkt
index 23de83f26..3a347c672 100644
--- a/dollar.rkt
+++ b/dollar.rkt
@@ -42,6 +42,10 @@
$$-tex2svg
use-tex2svg
current-tex2svg-path))
+
+(define use-external-mathjax (make-parameter #f))
+(define use-external-katex (make-parameter #f))
+
;; KaTeX does not work well with the HTML 4.01 Transitional loose DTD,
;; so we define a style modifier which replaces the prefix for HTML rendering.
(define (with-html5 doc-style)
@@ -148,11 +152,11 @@ EOJS
;;
- (load-script-string "MathJax/MathJax.js?config=default")))
+ (load-script-string (or (use-external-mathjax) "MathJax/MathJax.js?config=default"))))
#;(define load-mathjax-code
(string->bytes/utf-8
- (string-append (load-script-string "MathJax/MathJax.js?config=default")
+ (string-append (or (use-external-mathjax) "MathJax/MathJax.js?config=default")
#<bytes/utf-8
- (string-append (load-style-string "katex/katex.min.css")
- (load-script-string "katex/katex.min.js")
+ (string-append (load-style-string (if (use-external-katex) (cadr (use-external-katex)) "katex/katex.min.css"))
+ (load-script-string (if (use-external-katex) (car (use-external-katex)) "katex/katex.min.js"))
#<