mathjax-convert-unicode, shortened javascript which loads MathJax so that it is easier to compare for removal (since we unfortunately cannot set its ID).
This commit is contained in:
parent
fbb7f162a0
commit
d4e21dff28
|
@ -8,6 +8,7 @@
|
||||||
racket/runtime-path
|
racket/runtime-path
|
||||||
setup/collects
|
setup/collects
|
||||||
"katex-convert-unicode.rkt"
|
"katex-convert-unicode.rkt"
|
||||||
|
"mathjax-convert-unicode.rkt"
|
||||||
racket/list)
|
racket/list)
|
||||||
|
|
||||||
(provide $
|
(provide $
|
||||||
|
@ -114,13 +115,11 @@ EOJS
|
||||||
(define (load-style-string src)
|
(define (load-style-string src)
|
||||||
(string-append
|
(string-append
|
||||||
#<<EOJS
|
#<<EOJS
|
||||||
(function() {
|
(function() {document.write('<link rel="stylesheet" href="
|
||||||
document.write('<link rel="stylesheet" href="
|
|
||||||
EOJS
|
EOJS
|
||||||
src
|
src
|
||||||
#<<EOJS
|
#<<EOJS
|
||||||
" />');
|
" />');})();
|
||||||
})();
|
|
||||||
EOJS
|
EOJS
|
||||||
))
|
))
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
#lang at-exp racket/base
|
#lang at-exp racket/base
|
||||||
(require racket/string)
|
(require racket/string)
|
||||||
|
|
||||||
(provide katex-convert-unicode)
|
(provide katex-convert-unicode
|
||||||
|
string-replace*)
|
||||||
|
|
||||||
(define (literal-alternatives→regexp literal-alternatives)
|
(define (literal-alternatives→regexp literal-alternatives)
|
||||||
(string-append "("
|
(string-append "("
|
||||||
|
@ -22,96 +23,98 @@
|
||||||
replacement
|
replacement
|
||||||
(string-append "$" replacement "$"))))))
|
(string-append "$" replacement "$"))))))
|
||||||
|
|
||||||
(define (katex-convert-unicode str mathmode?)
|
(define (katex-convert-unicode str mathmode? [more-sym→* '()])
|
||||||
|
(define sym→*
|
||||||
|
`([₀ "{}_0"]
|
||||||
|
[₁ "{}_1"]
|
||||||
|
[₂ "{}_2"]
|
||||||
|
[₃ "{}_3"]
|
||||||
|
[₄ "{}_4"]
|
||||||
|
[₅ "{}_5"]
|
||||||
|
[₆ "{}_6"]
|
||||||
|
[₇ "{}_7"]
|
||||||
|
[₈ "{}_8"]
|
||||||
|
[₉ "{}_9"]
|
||||||
|
[ᵢ "{}_i"]
|
||||||
|
[ⱼ "{}_j"]
|
||||||
|
[ₖ "{}_k"]
|
||||||
|
[ₗ "{}_l"]
|
||||||
|
[ₘ "{}_m"]
|
||||||
|
[ₙ "{}_n"]
|
||||||
|
[ₒ "{}_o"]
|
||||||
|
[ₓ "{}_x"]
|
||||||
|
[⁰ "{}^0"]
|
||||||
|
[¹ "{}^1"]
|
||||||
|
[² "{}^2"]
|
||||||
|
[³ "{}^3"]
|
||||||
|
[⁴ "{}^4"]
|
||||||
|
[⁵ "{}^5"]
|
||||||
|
[⁶ "{}^6"]
|
||||||
|
[⁷ "{}^7"]
|
||||||
|
[⁸ "{}^8"]
|
||||||
|
[⁹ "{}^9"]
|
||||||
|
[ⁱ "{}^i"]
|
||||||
|
[ʲ "{}^j"]
|
||||||
|
[ᵏ "{}^k"]
|
||||||
|
[ˡ "{}^l"]
|
||||||
|
[ᵐ "{}^m"]
|
||||||
|
[ⁿ "{}^n"]
|
||||||
|
[ᵒ "{}^o"]
|
||||||
|
[⊆ "\\subseteq{}" "\\ensuremath{\\subseteq}"]
|
||||||
|
[⊂ "\\subset{}" "\\ensuremath{\\subset}"]
|
||||||
|
[⊇ "\\supseteq{}" "\\ensuremath{\\supseteq}"]
|
||||||
|
[⊃ "\\supset{}" "\\ensuremath{\\supset}"]
|
||||||
|
[→ "\\rightarrow{}" "\\ensuremath{\\rightarrow}"]
|
||||||
|
[⇒ "\\Rightarrow{}" "\\ensuremath{\\Rightarrow}"]
|
||||||
|
[← "\\leftarrow{}" "\\ensuremath{\\leftarrow}"]
|
||||||
|
[⇐ "\\Leftarrow{}" "\\ensuremath{\\Leftarrow}"]
|
||||||
|
[↔ "\\leftrightarrow{}" "\\ensuremath{\\leftrightarrow}"]
|
||||||
|
[⇔ "\\Leftrightarrow{}" "\\ensuremath{\\Leftrightarrow}"]
|
||||||
|
;; Partially extracted from my .XCompose generator
|
||||||
|
[ñ "\\tilde{n}" "{\\ifmmode\\tilde{n}\\else\\~{n}\\fi}"]
|
||||||
|
[Ñ "\\tilde{N}" "{\\ifmmode\\tilde{N}\\else\\~{N}\\fi}"]
|
||||||
|
[⋆ "\\star{}" "\\ensuremath{\\star}"]
|
||||||
|
[⍣ "\\ddot{\\star}}" "\\ensuremath{\\ddot{\\star}}"]
|
||||||
|
[⃰ "^*" "^*"]
|
||||||
|
[⟨ "\\langle{}" "\\ensuremath{\\mathsmaller{\\raisemath{.15ex}{\\langle}}}"]
|
||||||
|
[⟩ "\\rangle{}" "\\ensuremath{\\mathsmaller{\\raisemath{.15ex}{\\rangle}}}"]
|
||||||
|
[⋯ "\\cdots{}"]
|
||||||
|
[⋮ "\\vdots{}"]
|
||||||
|
[⋰ "\\iddots{}"]
|
||||||
|
[⋱ "\\ddots{}"]
|
||||||
|
[⧺ "\\mathbin{+\\mkern-6.5mu+}" "\\ensuremath{\\mathbin{+\\mkern-6.5mu+}}"]
|
||||||
|
[∅ "\\emptyset{}" "\\ensuremath{\\emptyset}"]
|
||||||
|
[ı⃗ "\\vec{\\i}}" "\\ensuremath{\\vec{\\i}"]
|
||||||
|
[⊕ "\\oplus{}" "\\ensuremath{\\oplus}"]
|
||||||
|
[⊖ "\\ominus{}" "\\ensuremath{\\ominus}"]
|
||||||
|
[⋓ "\\Cup{}" "\\ensuremath{\\Cup}"]
|
||||||
|
;[ₗ "\\ensuremath{_{l}}"]
|
||||||
|
[∷ "::"]
|
||||||
|
[Λ "\\Lambda{}" "\\ensuremath{\\Lambda}"]
|
||||||
|
[∀ "\\forall{}"]
|
||||||
|
[∃ "\\exists{}"]
|
||||||
|
[≡ "\\equiv{}"]
|
||||||
|
[≢ "\\not\\equiv{}"]
|
||||||
|
[… "\\ldots{}"]
|
||||||
|
[⋯ "\\cdots{}"]
|
||||||
|
[⋰ "\\uddots{}"] ;; or \iddots from package mathdots, see http://tex.stackexchange.com/a/17650
|
||||||
|
[⋱ "\\ddots{}"]
|
||||||
|
[∌ "\\notni{}"]
|
||||||
|
[ℰ "\\mathcal{E}"]
|
||||||
|
[• "\\bullet{}"]
|
||||||
|
[′ "'"]
|
||||||
|
[″ "''"]
|
||||||
|
[‴ "'''"]
|
||||||
|
[⁗ "''''"]
|
||||||
|
[⋃ "\\bigcup{}"]
|
||||||
|
[⋂ "\\bigcap{}"]
|
||||||
|
[⋀ "\\bigwedge{}"]
|
||||||
|
[⋁ "\\bigvee{}"]
|
||||||
|
[± "\\pm{}"]
|
||||||
|
))
|
||||||
(if (string? str)
|
(if (string? str)
|
||||||
(string-replace*
|
(string-replace*
|
||||||
str
|
str
|
||||||
mathmode?
|
mathmode?
|
||||||
`([₀ "{}_0"]
|
(append more-sym→* sym→*))
|
||||||
[₁ "{}_1"]
|
|
||||||
[₂ "{}_2"]
|
|
||||||
[₃ "{}_3"]
|
|
||||||
[₄ "{}_4"]
|
|
||||||
[₅ "{}_5"]
|
|
||||||
[₆ "{}_6"]
|
|
||||||
[₇ "{}_7"]
|
|
||||||
[₈ "{}_8"]
|
|
||||||
[₉ "{}_9"]
|
|
||||||
[ᵢ "{}_i"]
|
|
||||||
[ⱼ "{}_j"]
|
|
||||||
[ₖ "{}_k"]
|
|
||||||
[ₗ "{}_l"]
|
|
||||||
[ₘ "{}_m"]
|
|
||||||
[ₙ "{}_n"]
|
|
||||||
[ₒ "{}_o"]
|
|
||||||
[ₓ "{}_x"]
|
|
||||||
[⁰ "{}^0"]
|
|
||||||
[¹ "{}^1"]
|
|
||||||
[² "{}^2"]
|
|
||||||
[³ "{}^3"]
|
|
||||||
[⁴ "{}^4"]
|
|
||||||
[⁵ "{}^5"]
|
|
||||||
[⁶ "{}^6"]
|
|
||||||
[⁷ "{}^7"]
|
|
||||||
[⁸ "{}^8"]
|
|
||||||
[⁹ "{}^9"]
|
|
||||||
[ⁱ "{}^i"]
|
|
||||||
[ʲ "{}^j"]
|
|
||||||
[ᵏ "{}^k"]
|
|
||||||
[ˡ "{}^l"]
|
|
||||||
[ᵐ "{}^m"]
|
|
||||||
[ⁿ "{}^n"]
|
|
||||||
[ᵒ "{}^o"]
|
|
||||||
[⊆ "\\subseteq{}" "\\ensuremath{\\subseteq}"]
|
|
||||||
[⊂ "\\subset{}" "\\ensuremath{\\subset}"]
|
|
||||||
[⊇ "\\supseteq{}" "\\ensuremath{\\supseteq}"]
|
|
||||||
[⊃ "\\supset{}" "\\ensuremath{\\supset}"]
|
|
||||||
[→ "\\rightarrow{}" "\\ensuremath{\\rightarrow}"]
|
|
||||||
[⇒ "\\Rightarrow{}" "\\ensuremath{\\Rightarrow}"]
|
|
||||||
[← "\\leftarrow{}" "\\ensuremath{\\leftarrow}"]
|
|
||||||
[⇐ "\\Leftarrow{}" "\\ensuremath{\\Leftarrow}"]
|
|
||||||
[↔ "\\leftrightarrow{}" "\\ensuremath{\\leftrightarrow}"]
|
|
||||||
[⇔ "\\Leftrightarrow{}" "\\ensuremath{\\Leftrightarrow}"]
|
|
||||||
;; Partially extracted from my .XCompose generator
|
|
||||||
[ñ "\\tilde{n}" "{\\ifmmode\\tilde{n}\\else\\~{n}\\fi}"]
|
|
||||||
[Ñ "\\tilde{N}" "{\\ifmmode\\tilde{N}\\else\\~{N}\\fi}"]
|
|
||||||
[⋆ "\\star{}" "\\ensuremath{\\star}"]
|
|
||||||
[⍣ "\\ddot{\\star}}" "\\ensuremath{\\ddot{\\star}}"]
|
|
||||||
[⃰ "^*" "^*"]
|
|
||||||
[⟨ "\\langle{}" "\\ensuremath{\\mathsmaller{\\raisemath{.15ex}{\\langle}}}"]
|
|
||||||
[⟩ "\\rangle{}" "\\ensuremath{\\mathsmaller{\\raisemath{.15ex}{\\rangle}}}"]
|
|
||||||
[⋯ "\\cdots{}"]
|
|
||||||
[⋮ "\\vdots{}"]
|
|
||||||
[⋰ "\\iddots{}"]
|
|
||||||
[⋱ "\\ddots{}"]
|
|
||||||
[⧺ "\\mathbin{+\\mkern-6.5mu+}" "\\ensuremath{\\mathbin{+\\mkern-6.5mu+}}"]
|
|
||||||
[∅ "\\emptyset{}" "\\ensuremath{\\emptyset}"]
|
|
||||||
[ı⃗ "\\vec{\\i}}" "\\ensuremath{\\vec{\\i}"]
|
|
||||||
[⊕ "\\oplus{}" "\\ensuremath{\\oplus}"]
|
|
||||||
[⊖ "\\ominus{}" "\\ensuremath{\\ominus}"]
|
|
||||||
[⋓ "\\Cup{}" "\\ensuremath{\\Cup}"]
|
|
||||||
;[ₗ "\\ensuremath{_{l}}"]
|
|
||||||
[∷ "::"]
|
|
||||||
[Λ "\\Lambda{}" "\\ensuremath{\\Lambda}"]
|
|
||||||
[∀ "\\forall{}"]
|
|
||||||
[∃ "\\exists{}"]
|
|
||||||
[≡ "\\equiv{}"]
|
|
||||||
[≢ "\\not\\equiv{}"]
|
|
||||||
[… "\\ldots{}"]
|
|
||||||
[⋯ "\\cdots{}"]
|
|
||||||
[⋰ "\\uddots{}"] ;; or \iddots from package mathdots, see http://tex.stackexchange.com/a/17650
|
|
||||||
[⋱ "\\ddots{}"]
|
|
||||||
[∌ "\\notni{}"]
|
|
||||||
[ℰ "\\mathcal{E}"]
|
|
||||||
[• "\\bullet{}"]
|
|
||||||
[′ "'"]
|
|
||||||
[″ "''"]
|
|
||||||
[‴ "'''"]
|
|
||||||
[⁗ "''''"]
|
|
||||||
[⋃ "\\bigcup{}"]
|
|
||||||
[⋂ "\\bigcap{}"]
|
|
||||||
[⋀ "\\bigwedge{}"]
|
|
||||||
[⋁ "\\bigvee{}"]
|
|
||||||
[± "\\pm{}"]
|
|
||||||
))
|
|
||||||
str))
|
str))
|
21
mathjax-convert-unicode.rkt
Normal file
21
mathjax-convert-unicode.rkt
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
#lang at-exp racket/base
|
||||||
|
(require racket/string
|
||||||
|
scriblib/render-cond
|
||||||
|
"katex-convert-unicode.rkt")
|
||||||
|
|
||||||
|
(provide mathjax-convert-unicode)
|
||||||
|
|
||||||
|
(define (mathjax-convert-unicode str* mathmode?)
|
||||||
|
(define more-sym→*
|
||||||
|
`([⩴ ,(string-append
|
||||||
|
"\\ifmathjax{\\mathrel{{\\raise0.9mu{::}\\hspace{-4mu}=}}}"
|
||||||
|
"\\iflatex{\\Coloneqq}")]
|
||||||
|
[∈ "\\in{}"]
|
||||||
|
[κ "\\kappa"]
|
||||||
|
[⁺ "{}^+"]
|
||||||
|
[⁻ "{}^-"]
|
||||||
|
;; TODO:
|
||||||
|
[❲ "\\ifmathjax{\\unicode{x2272}}\\iflatex{❲}"]
|
||||||
|
[❳ "\\ifmathjax{\\unicode{x2273}}\\iflatex{❳}"]
|
||||||
|
))
|
||||||
|
(katex-convert-unicode str* mathmode? more-sym→*))
|
Loading…
Reference in New Issue
Block a user