Live data from Hacker News

TikZJax: Embedding LaTeX Drawings in HTML

tikzjax.com

21–30 of 33 posts

Re: TikZJax: Embedding LaTeX Drawings in HTML

#21
post #4

Jim Fowler seemed like Calculus' biggest hype man when the MOOC ball was just starting to roll. If you're looking to brush up and like the more energetic/engaging style I'd recommend checking out his videos on YouTube or elsewhere. > Using web2js, the Pascal source of tex is compiled to WebAssembly; the latex format is loaded (without all the hyphenation data), and [...] is executed. Then core is dumped; the resultin…

Thanks for the recommendation, this is really cool!

Re: TikZJax: Embedding LaTeX Drawings in HTML

#23
post #12

Using a “core dump” (dumping the webassembly heap) is an interesting optimization approach with historical precedent both in TeX itself and projects like Emacs (dump/unexec) — https://www.gnu.org/software/emacs/manual/html_node/elisp/Bu... It’s also notoriously fragile and non-portable on native targets; I’m curious how one implements it under webassembly, and how it compares.

Being able to start a process, have it run for a bit to, say, read in initialization data, populating dynamic data structures along the way, and then interrupt the process and save the whole state as a new executable, was a feature built into DEC’s Tops10 and Tops20 operating systems / standard runtimes, along with related custom systems like Waits, under which TeX was developed. It took just two lines of code for Te…

Checkpoint/Restore In Userspace https://criu.org/

Re: TikZJax: Embedding LaTeX Drawings in HTML

#24

Holy smokes. That’s a name I haven’t heard in a while. I submitted many calculus homework assignments in LaTeX because Jim introduced it to me back at our high school. (Go Mankato West Scarlets!)

Matt Klaber?! If so, great to run into you!

I mean, I'm guessing from "klabetron"... Unfortunately I don't think my "kisonecat" gives much clue to "Fowler".

Re: TikZJax: Embedding LaTeX Drawings in HTML

#25
post #12

Using a “core dump” (dumping the webassembly heap) is an interesting optimization approach with historical precedent both in TeX itself and projects like Emacs (dump/unexec) — https://www.gnu.org/software/emacs/manual/html_node/elisp/Bu... It’s also notoriously fragile and non-portable on native targets; I’m curious how one implements it under webassembly, and how it compares.

Being able to start a process, have it run for a bit to, say, read in initialization data, populating dynamic data structures along the way, and then interrupt the process and save the whole state as a new executable, was a feature built into DEC’s Tops10 and Tops20 operating systems / standard runtimes, along with related custom systems like Waits, under which TeX was developed. It took just two lines of code for Te…

Resurrecting this workflow was one of the funniest things in implementing TikZJax.

Re: TikZJax: Embedding LaTeX Drawings in HTML

#26

While live rendering is nice, I suppose that generating static SVGs that are embedded in a static webpage generator are more fruitful for the typical case. A quick search yielded this: https://polbarrachina.com/2022/05/23/latex-and-tikz-in-jekyl...

In a wiki setting for example, it might be nice as it makes the direct human edition more accessible. Not as accessible as an embedded SVG editor of course. But still, compare how latex formula are used in Wikipedia, compared to mathml, or SVG.

I'm fond of using KaTeX for my personal blog posts. There is support for server side rendering for KaTeX (but not on GitHub pages because it necessarily opens it to arbitrary code execution - I asked).

But it notably lacks tikz support and if it can emit SVGs I'm beginning to wonder why I even use KaTeX and not something like this (beyond my personal anti-JS sentiment)

Re: TikZJax: Embedding LaTeX Drawings in HTML

#27

Using a “core dump” (dumping the webassembly heap) is an interesting optimization approach with historical precedent both in TeX itself and projects like Emacs (dump/unexec) — https://www.gnu.org/software/emacs/manual/html_node/elisp/Bu... It’s also notoriously fragile and non-portable on native targets; I’m curious how one implements it under webassembly, and how it compares.

Author of TikZJax here...

I'm endlessly distracted by other things at work, but I believe this same idea could also be used to provide real-time compilation of TeX'd documents as they're typed. Simon Rubinstein-Salzedo had suggested wanting something like a real-time Overleaf to teach his classes at https://eulercircle.com/ Interrupting and resurrecting the TeX-in-the-browser would let you render a document as it is typed.

Re: TikZJax: Embedding LaTeX Drawings in HTML

#28

Funny seeing this on the front page – I'm coding a project as I'm browsing this that makes heavy use of TikZJax. Overall, I'm impressed by how seamlessly it works when it does work. But it's not perfect: - Some core library functions (for example, most types of fill patterns) simply don't work or aren't implemented for some reason. - There are a few long-standing bugs. For instance, if using the intersections library…

As the author of TikZJax, I can certainly apologize for not making more progress on this.

I need to get back to this project! I'd very much like to clean up the build process.

Re: TikZJax: Embedding LaTeX Drawings in HTML

#29
post #4

Jim Fowler seemed like Calculus' biggest hype man when the MOOC ball was just starting to roll. If you're looking to brush up and like the more energetic/engaging style I'd recommend checking out his videos on YouTube or elsewhere. > Using web2js, the Pascal source of tex is compiled to WebAssembly; the latex format is loaded (without all the hyphenation data), and [...] is executed. Then core is dumped; the resultin…

Indeed, you can find my calculus videos at https://www.youtube.com/kisonecat

But maybe for a coding audience https://www.youtube.com/watch?v=MVtlD22Y8SQ is more entertaining.

Re: TikZJax: Embedding LaTeX Drawings in HTML

#30
post #14

Earlier quoted context omitted.

So? Still Safari's problem for not displaying a proper error message.

Sounds like you just dislike Safari. Doesn’t seem to be much help here.

No. Safari chose the exact wrong way to handle this case. Let's suppose some webpage is in fact allocating too much memory. It is the user agent's job to inform the user of this fact. What does Safari do? It silently crashes. It's not even about displaying the wrong error message here: the handler for the crash is to simply refresh the page and render it again. But this is exactly the wrong way to handle out-of-memory errors: chances are the web page will again allocate too much memory and crash yet again. In the end the final displayed error message is "a problem repeatedly occurred" with no reference to the nature of the problem.

I hate this trend of hiding error messages from the user. Apple as a company known for its attention to detail in UI, should have been the one company especially dedicated to presenting a good error message without overwhelming the user with technical details—it is supposed to be the master in user communication. And it is not. Hence my disappointment.

Post reply on HN