discourse-math/public/katex/README.md

49 lines
1.2 KiB
Markdown

## How to update KaTeX for Discourse without building
1. Fetch the latest release tarball
2. Copy fonts
3. Copy JS and CSS
4. Replace font paths in CSS
```bash
DMPATH=/path/to/discourse-math # set this to your path to the discourse-math repo
cd /tmp
wget -O- https://github.com/KaTeX/KaTeX/releases/latest/download/katex.tar.gz | tar -zx
cp katex/fonts/*.woff* $DMPATH/public/katex/fonts/
cp katex/katex.min.* katex/contrib/{mhchem,copy-tex}.min.js $DMPATH/public/katex/
sed -i "s~url(fonts/~url(/plugins/discourse-math/katex/fonts/~g" $DMPATH/public/katex/katex.min.css
```
## How to build KaTeX for Discourse
1. `git clone https://github.com/KaTeX/KaTeX.git && cd KaTeX`
`git submodule update --init --recursive`
2. Disable TTF fonts:
`export USE_TTF=false`
3. Run build to fetch the fonts into `dist/fonts/`
`npm run build`
4. Copy fonts to this plugin
`cp dist/fonts/* discourse-math/public/katex/fonts/`
5. Change paths to fonts ((otherwise the fonts won't load in Discourse):
`sed -ri 's/@font-folder.+$/@font-folder:
"\/plugins\/discourse-math\/katex\/fonts";/'
submodules/katex-fonts/fonts.less`
3. Build KaTeX:
`yarn && yarn builld`
4. Copy `katex.min.js` and `katex.min.css` from `dist/` to
`discourse-math/public/katex/`