A Firefox extension that lets you quickly copy LaTeX code (KaTeX or MathJax) from equations displayed on websites like ChatGPT, DeepSeek, or any blog using mathematical equations. It works simply by hovering over an equation and clicking to copy the LaTeX expression.
Version 1.1: Now it also works with with Wikipedia and Wikiwand images.
Version 1.2: Now it also works for MathJax v3 (when there is no LaTeX code in the HTML) via API.
Version 1.3: Dark mode enabled and replaced check emoji with SVG icon.
Version 1.4: New feature! Select text (that includes formulas), right click on it and a Copy as Markdown (with LaTeX) option will appear.
Version 1.5: Now with Typst support!!!




You can use https://markdown-preview-katex.vercel.app/ to test this feature.

You can use https://typst-online.vercel.app/ to test this feature.
Generally any math, physics, or engineering-related blog or website. Some typical examples:
You can check the javascript source code yourself. It loads after everything and is very fast and small sized. However if you want you can always customize in which hosts (websites) the extension loads or not:

This is done in “Firefox Settings > Extensions & Themes” (or simply search about:addons), clicking the extension and choosing the tab “Permissions and Data”.
In case you turn off the “all sites” toggle option, you can also add manual sites that are not in the default list.

And now the custom site should appear as a new toggle in the “Permissions and data” tab.
content.js):
<span class="katex"> elements on the page.<annotation encoding="application/x-tex">.data-math attribute.<script type="math/tex"> elements.mathjax-api.js) to extract LaTeX from mjx-container elements via MathJax’s API. Only possible via API and inject script because no LaTeX code present in the generated HTML.alt attributes of images.navigator.clipboard.writeText().<svg> to avoid external file dependencies.overlay.css):
pointer cursor.manifest.json:
content.js, overlay.css and the other scripts.background.js:
selection-to-markdown.js:
turndown.js library and the turndown-plugin-gfm.js GitHub-flavored markdown plugin for converting HTML to Markdown.src directory (without containing the src folder itself).about:debugging (as if it were an URL) and in the ‘This Firefox’ tab select the button ‘Load a Temporary Add-On…’ and input the zip file.There is also a Chrome version of this extension: https://github.com/Mapaor/copy-latex-chrome-extension
Credits to @leander-ow for his dark mode contribution and to @ashigirl96 for suggesting and providing a working code implementation for the “Copy as Markdown” feature.
This extension also works thanks to the following open source projects:
MIT License.
It is MIT Licensed so that anyone can customize it to their needs but please don’t just copy-cat the code and publish it with a new name, it’s weird.
If you have an idea for a new feature open an issue and let me know! Also if you have the time to implement a feature you want it would be great if you made a pull request.
$ and $$, \( and \[, always $, or always $$.