[HN Gopher] Render mathematical expressions in Markdown On GitHub
___________________________________________________________________
Render mathematical expressions in Markdown On GitHub
Author : robin_reala
Score : 161 points
Date : 2022-05-19 19:17 UTC (3 hours ago)
(HTM) web link (github.blog)
(TXT) w3m dump (github.blog)
| romeovs wrote:
| Nice! A welcome addition!
|
| Too bad they're not using KaTeX [0] instead.
|
| It renders the maths server-side, so there's no runtime needed.
|
| An additional bonus is that the resulting math is copy-pasteable,
| which in the case of disply math might not be that useful (since
| most equations are to complex to be meaningfully copy-pasted with
| unicode), but it helps from inline math dissappearing when copy
| pasting texts.
|
| But, that being said, I'm sure they had their reasons to do so.
| For one, MathJax seems more well-known by quite a bit so maybe
| it's the safer option.
|
| 1: https://katex.org/
| jscholes wrote:
| > I'm sure they had their reasons
|
| They do, accessibility being one of them. Rendering math in the
| way you describe makes it difficult, or impossible, to
| understand for all sorts of audiences, including those relying
| on screen reading software.
| joppy wrote:
| For pages with lots of mathematics markup, it is far better (in
| terms of download size) to send the latex markup and the katex
| library to the browser, and render it there. I tried rendering
| the mathematics server-side using katex on my own website a
| while ago, and the div soup generated by katex takes up loads
| of space.
|
| Original page (compressed): 10 kB
|
| Page with server-rendered Katex (compressed): 50 kB
|
| Katex.js (compressed): 80 kB
|
| So after two pages it's a net win to _not_ render the
| mathematics server-side.
| dllu wrote:
| For my blog (e.g.
| https://daniel.lawrence.lu/blog/y2021m09d08/ with tons of
| math), I render the math serverside using MathJax and serve
| them as SVG images (with alt text for the visually impaired).
| They get cached too which is nice especially since many
| symbols are duplicated. Seems fast enough for me.
| qumpis wrote:
| I'm so happy that I can just paste my definitions from latex
| preamble into a paragraph to include all the calitographic
| symbols and other conveniences with Mathjax. As far as I know,
| I can't easily do it without adapting to Katex-specific syntax.
| diarrhea wrote:
| I wonder if, at all, other fonts will ever be used for MathJax
| max display?
|
| The 'default MathJax font' is also just the 'default LaTeX font'
| (CM?). There are countless other, high-quality math fonts, for
| example the TeX Gyre Math fonts. I'd like to see those one day, I
| prefer them. It would be not more out of place than the current
| version.
|
| There are font pairs, too, like TeX Gyre Pagella and its TeX Gyre
| Pagella Math accompanying font. So you have the _same_ font for
| both, which is simply beautiful and even more readable I 'd
| argue. I think most people have accepted that text and math fonts
| are always distinct, when in fact they needn't be.
| MaxLeiter wrote:
| My one complaint about these new mark down features with github
| is the lock-in. I'm trying to build a gist compatible service and
| theres quite a bit to cover. MathJax is fine, but now I (and
| gitlab, bitbucket, etc) will need to support it
| ofou wrote:
| Finally!
| orange3xchicken wrote:
| I know, I've been waiting so long for this! I will not miss
| having to render and reference pngs of equations / api
| requests.
| jeremymcanally wrote:
| You think you waited a long time? I wrote a patch to add this
| to GitHub when I worked there in 2011-12! :) It was rejected
| at the time by some folks for various "product" reasons, but
| I'm glad to see it finally become a thing.
| krastanov wrote:
| Funny thing is, this feature (with MathJax) used to be available
| in 2010ish, but got removed back then as they did not want to
| have "unvetted" large libraries as a dependency.
| ashton314 wrote:
| Looks like it works with `.org` documents as well! I've been
| authoring my README files in org-mode for a while now (richer
| formatting options than Markdown) and GitHub does a great job
| rendering the org-mode.
| mulmboy wrote:
| This is cute but it seems that expressions spanning multiple
| lines are not rendered
|
| OK:
|
| $$\|\vec{x} - \vec{p}_c\| = v(t_c-t_0)$$
|
| --
|
| NOT OK:
|
| $$
|
| \|\vec{x} - \vec{p}_c\|
|
| = v(t_c-t_0)
|
| $$
|
| This makes larger latex expressions pretty impractical e.g.
| https://github.com/jurasofish/multilateration/blob/master/re...
| whatever1 wrote:
| Finally! Gitlab had this feature for so long
| singularity2001 wrote:
| Doesn't work on github's builtin wikis
| dllu wrote:
| Finally a long-awaited feature. Works nicely in dark mode too.
| However, it simply uses MathJax.
|
| Also there are some minor annoyances. For example you need to
| escape the backslashes, so it takes 4 backslashes to make a
| newline in your matrix. $$\begin{bmatrix} a & b
| \\\\ c & d\end{bmatrix}$$
|
| I found that the inline math doesn't quite match the font size of
| the surrounding text too (it's smaller).
| thaumasiotes wrote:
| > For example you need to escape the backslashes, so it takes 4
| backslashes to make a newline in your matrix.
|
| > $$\begin{bmatrix} a & b \\\\\\\ c & d\end{bmatrix}$$
|
| This example doesn't make sense. You need to escape the
| backslashes in the end-of-row command \\\, but you don't need
| to escape the backslashes in \begin and \end?
|
| The post clearly shows that backslashes in \left, \right, \sum,
| and \sqrt do not need to be escaped. What's different about
| \\\?
| dllu wrote:
| No idea, but if you have only two backslashes instead of
| four, the matrix would appear as a single row, like [a bc d].
|
| That said, \\\begin renders the same as \begin.
| thaumasiotes wrote:
| Oh, this is an experimental result? You've found a bug in
| Github's parser. You should call it a "bug", not an
| "annoyance".
| rudolfwinestock wrote:
| Looking at some of the comments in this thread, I wonder if
| Hacker News will ever render LaTeX.
| [deleted]
| bachmeier wrote:
| Math doesn't render inside a bullet list item. I don't know how
| to file an issue against Github itself, somewhat ironically.
| metadaemon wrote:
| I feel like being in a bullet list item restricts a lot of the
| rendering you can do.
| kaycebasques wrote:
| Big picture it's interesting how GitHub + Markdown is basically
| becoming a major content publishing product. Albeit for a
| technical niche market. Of course I'm not saying this is GitHub's
| main goal. More like a P1. Instant publishing, diagrams, and now
| math expressions.
| NmAmDa wrote:
| Github becomes a favorite option for research and academic
| people to work and collaborate their projects their. That is a
| reasonable move from github to make it more suitable for them.
| I know my group and several others are relying more and more on
| github as git host with other products used for collaboration.
| JadeNB wrote:
| > **The Cauchy-Schwarz Inequality**
|
| > $$left( \sum_{k=1}^n a_k b_k \right)^2 \leq left( \sum_{k=1}^n
| a_k^2 \right) left( \sum_{k=1}^n b_k^2 \right)$$
|
| I wonder why their syntax highlighting on this example highlights
| `left` but not `right`? (I can't seem to reproduce it here, since
| the HN parser tries to outsmart me.)
| yuchi wrote:
| The reason is that their blog rendering auto-identifies that
| code block as SCSS and treats "left" as an attribute. Which is
| strange, since I cannot find something for "left" that is not
| defined for "right".
|
| For example, I cannot find a "left" attribute here:
| https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes
| yuchi wrote:
| Some more details. They are using Highlight.js, and
| `attribute` is what is applied to (S)CSS properties too. But
| both `left` and `right` are valid properties. What I think is
| that `\r` is treated as the special Carriage Return character
| and therefore doesn't allow `right` to be identified.
___________________________________________________________________
(page generated 2022-05-19 23:00 UTC)