#9774: Upgrade the notebook to use MathJax instead of jsMath
---------------------------+------------------------------------------------
Reporter: mpatel | Owner: jason, was
Type: enhancement | Status: new
Priority: major | Milestone:
Component: notebook | Keywords:
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
---------------------------+------------------------------------------------
Changes (by rbeezer):
* cc: robert.marik (added)
Comment:
I've been experimenting a bit with `MathJax`, outside of the notebook.
Mostly thinking about how it will handle tex4ht output in jsMath mode, but
here are some some observations that might be useful:
1. Easier in most ways to structure a page to use `MathJax`. Just insert
something like
{{{
<script type="text/javascript" src="path-to-MathJax/MathJax.js"></script>
}}}
No need for a "process()" call at the end, etc.
2. Default is to not recognize single dollar-signs as delimiters.
Alternative is {{{\(..\)}}}. This would be a good thing, since if a user
adds text (via TinyMCE) right now jsMath tries to parse the following as
math. {{{$$..$$}}} and {{{\[..\]}}} both work for display math. We
would break lots of old worksheets if we stopped recognizing {{{$..$}}}.
3. There is a jsMath compatibility mode. I believe I've found one bug in
this already (reported upstream). I'd imagine this is not a development
priority, but who knows?
4. Modes and configuration is controlled globally by
{{{config/MathJax.js}}} which is just one huge well-commented Javascript
object. It can be overridden in a web page by adding a new version into
the script block mentioned above. Maybe we want to make this easy for
users to access, or maybe it is easy already, or maybe we don't want to
bother.
5. This looks to me like the best introduction to the types of decisions
we will want to make about what to cut over to:
http://www.mathjax.org/resources/docs/?configuration.html
6. `MathJax` is HUGE. Fonts for lots of Unicode points, I guess. SVN
checkout is 53 MB, after unzipping fonts.zip it all occupies 171 MB.
7. I just noticed this morning that {{{html.table()}}} uses
{{{class="math"}}} which is a jsMath way to tag span's or div's for
processing. I haven't found how to do something similiar in `MathJax`,
though this will work in jsMath compatibility mode. A very small test
would indicate that the two modes can be used at the same time.
8. Consonant with (2) and (7), I'd love to see the notebook formatting
move to something closer to rigorous XML (ie XHTML, I guess). Certain
types of processing would be easier if we did, but that is not really what
this ticket is all about.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9774#comment:2>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.