[IPython-dev] Abbreviated LaTeX in Markdown cells in the IPython Notebook

Michael Walter michael.walter at gmail.com
Thu Oct 3 14:01:21 EDT 2013


I think mathjax should already be able to handle this (e.g. in its
configuration, but also via \newcommand).

Best,
Michael



On Thu, Oct 3, 2013 at 5:47 PM, Aaron Meurer <asmeurer at gmail.com> wrote:

> Wouldn't it be better to use full LaTeX compatible syntax, like newcommand?
>
> Aaron Meurer
>
> On Oct 3, 2013, at 12:13 AM, "David P. Sanders" <
> dpsanders at ciencias.unam.mx> wrote:
>
> Hi:
>
> The following is possibly relevant for tomorrow's meeting with the MathJax
> lead developer.
>
> I have been playing with the idea of abbreviating LaTeX environments
> within Markdown. This is a direct result of live note-taking with the
> IPython Notebook in a course that I am co-teaching while the other
> professor gives a blackboard class with equations, and finding myself
> slowed down by writing verbose LaTeX.
>
> (This is a common problem, which can be (partially) solved in other TeX
> editors by judicious use of macro completion.)
>
> It seems to me that the full-blown LaTeX environments, in particular
> `\begin{equation}...\end{equation}, and particularly `align` [`equation` is
> easily replaced by $$...$$, since no equation numbering is yet available],
> are unnecessarily wordy for the IPython Notebook.
>
> These full versions are necessary (?) when the relevant equation(s) are
> embedded in a full LaTeX document, but in the IPython Notebook, they are
> restricted to snippets of mathematics inside a Markdown cell. Thus, in the
> spirit of Markdown, we should (in my opinion) search for a more lightweight
> syntax for LaTeX snippets.
>
> I have a branch `short_latex` at
> https://github.com/dpsanders/ipython/tree/short_latex
> which allows the following syntax inside Markdown cells:
>
> # equation:
> $eq y = 3x$
>
> # align:
> $al
> y &= 3x\\
> z &= 4x
> $
>
> That is, it uses `$...$` as the delimiters for the environment, and fills
> out the environment based on the first word found after the first `$`.
> The main benefit is to obviate the redundant \end{...} construction, and
> in general save typing. `$...$` is a natural way to separate LaTeX snippets
> from surrounding text (and, in particular, one which is already supported
> by the current code).
>
> The implementation currently intercepts the blocks of mathematics after
> they are found (in the text-cell rendering function in `textcell.js`),
> checks if they are of this form, and if so, replaces them by the full LaTeX
> environment so that they are correctly rendered by MathJax.
> [Health warning: my JavaScript is still rather shaky...]
>
> The `cases` environment is also supported, but currently has the
> limitation that it must come at the start of a LaTeX snippet:
>
> $y = $ $ca 1 & \text{if } x>0\\
> 0 & \text{if } x \le 0
> $
>
> This could be fixed e.g. using
> $y = ca{...}$
> or some similar notation.
>
> Maybe a better solution would be to simply treat these as some kind of
> macro that would expand directly in the text stored in the text cell
> itself, so that it would be correctly rendered even in a version of IPython
> without this modification. (Though I am not sure how to go about doing
> this.)
>
> Is this something that people are interested in pursuing?
> (Or does it just look too artificial and weird?) If so, might it be
> possible to do something at the level of MathJax itself?
>
> Best wishes,
> David.
>
>
> --
> Dr. David P. Sanders
>
> Profesor Titular "A" / Associate Professor
> Departamento de Física, Facultad de Ciencias
> Universidad Nacional Autónoma de México (UNAM)
>
> dpsanders at ciencias.unam.mx
> http://sistemas.fciencias.unam.mx/~dsanders
>
> Cubículo / office: #414, 4o. piso del Depto. de Física
>
> Tel.: +52 55 5622 4965
>
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>
>
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20131003/5b5ad2ea/attachment.html>


More information about the IPython-dev mailing list