mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
experimental math support
This commit is contained in:
parent
0e795b2978
commit
8f02f97e7d
2
libraries/ckeditor/ckeditor.js
vendored
2
libraries/ckeditor/ckeditor.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
91
libraries/katex/README.md
Normal file
91
libraries/katex/README.md
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
# [<img src="https://katex.org/img/katex-logo-black.svg" width="130" alt="KaTeX">](https://katex.org/)
|
||||||
|
[](https://www.npmjs.com/package/katex)
|
||||||
|
[](https://circleci.com/gh/KaTeX/KaTeX)
|
||||||
|
[](https://codecov.io/gh/KaTeX/KaTeX)
|
||||||
|
[](https://gitter.im/KaTeX/KaTeX?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||||
|
[](https://dependabot.com)
|
||||||
|
[](https://www.jsdelivr.com/package/npm/katex)
|
||||||
|

|
||||||
|
|
||||||
|
KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web.
|
||||||
|
|
||||||
|
* **Fast:** KaTeX renders its math synchronously and doesn't need to reflow the page. See how it compares to a competitor in [this speed test](http://www.intmath.com/cg5/katex-mathjax-comparison.php).
|
||||||
|
* **Print quality:** KaTeX's layout is based on Donald Knuth's TeX, the gold standard for math typesetting.
|
||||||
|
* **Self contained:** KaTeX has no dependencies and can easily be bundled with your website resources.
|
||||||
|
* **Server side rendering:** KaTeX produces the same output regardless of browser or environment, so you can pre-render expressions using Node.js and send them as plain HTML.
|
||||||
|
|
||||||
|
KaTeX is compatible with all major browsers, including Chrome, Safari, Firefox, Opera, Edge, and IE 11.
|
||||||
|
|
||||||
|
KaTeX supports much (but not all) of LaTeX and many LaTeX packages. See the [list of supported functions](https://katex.org/docs/supported.html).
|
||||||
|
|
||||||
|
Try out KaTeX [on the demo page](https://katex.org/#demo)!
|
||||||
|
|
||||||
|
## Getting started
|
||||||
|
|
||||||
|
### Starter template
|
||||||
|
|
||||||
|
```html
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<!-- KaTeX requires the use of the HTML5 doctype. Without it, KaTeX may not render properly -->
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.css" integrity="sha384-AfEj0r4/OFrOo5t7NnNe46zW/tFgW6x/bCJG8FqQCEo3+Aro6EYUG4+cU+KJWu/X" crossorigin="anonymous">
|
||||||
|
|
||||||
|
<!-- The loading of KaTeX is deferred to speed up page rendering -->
|
||||||
|
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.js" integrity="sha384-g7c+Jr9ZivxKLnZTDUhnkOnsh30B4H0rpLUpJ4jAIKs4fnJI+sEnkvrMWph2EDg4" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
<!-- To automatically render math in text elements, include the auto-render extension: -->
|
||||||
|
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/contrib/auto-render.min.js" integrity="sha384-mll67QQFJfxn0IYznZYonOWZ644AWYC+Pt2cHqMaRhXVrursRwvLnLaebdGIlYNa" crossorigin="anonymous"
|
||||||
|
onload="renderMathInElement(document.body);"></script>
|
||||||
|
</head>
|
||||||
|
...
|
||||||
|
</html>
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also [download KaTeX](https://github.com/KaTeX/KaTeX/releases) and host it yourself.
|
||||||
|
|
||||||
|
For details on how to configure auto-render extension, refer to [the documentation](https://katex.org/docs/autorender.html).
|
||||||
|
|
||||||
|
### API
|
||||||
|
|
||||||
|
Call `katex.render` to render a TeX expression directly into a DOM element.
|
||||||
|
For example:
|
||||||
|
|
||||||
|
```js
|
||||||
|
katex.render("c = \\pm\\sqrt{a^2 + b^2}", element, {
|
||||||
|
throwOnError: false
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
Call `katex.renderToString` to generate an HTML string of the rendered math,
|
||||||
|
e.g., for server-side rendering. For example:
|
||||||
|
|
||||||
|
```js
|
||||||
|
var html = katex.renderToString("c = \\pm\\sqrt{a^2 + b^2}", {
|
||||||
|
throwOnError: false
|
||||||
|
});
|
||||||
|
// '<span class="katex">...</span>'
|
||||||
|
```
|
||||||
|
|
||||||
|
Make sure to include the CSS and font files in both cases.
|
||||||
|
If you are doing all rendering on the server, there is no need to include the
|
||||||
|
JavaScript on the client.
|
||||||
|
|
||||||
|
The examples above use the `throwOnError: false` option, which renders invalid
|
||||||
|
inputs as the TeX source code in red (by default), with the error message as
|
||||||
|
hover text. For other available options, see the
|
||||||
|
[API documentation](https://katex.org/docs/api.html),
|
||||||
|
[options documentation](https://katex.org/docs/options.html), and
|
||||||
|
[handling errors documentation](https://katex.org/docs/error.html).
|
||||||
|
|
||||||
|
## Demo and Documentation
|
||||||
|
|
||||||
|
Learn more about using KaTeX [on the website](https://katex.org)!
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
See [CONTRIBUTING.md](CONTRIBUTING.md)
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
KaTeX is licensed under the [MIT License](http://opensource.org/licenses/MIT).
|
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_AMS-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Bold.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Caligraphic-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Bold.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Fraktur-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Bold.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Bold.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Bold.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Bold.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Bold.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Bold.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-BoldItalic.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Italic.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Italic.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Italic.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Italic.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Italic.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Italic.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Main-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Main-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-BoldItalic.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-Italic.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-Italic.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-Italic.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-Italic.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Math-Italic.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Math-Italic.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Bold.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Italic.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_SansSerif-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Script-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Script-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Script-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Script-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Script-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Script-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Size1-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Size2-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Size3-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Size4-Regular.woff2
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.ttf
Normal file
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.ttf
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.woff
Normal file
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.woff
Normal file
Binary file not shown.
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.woff2
Normal file
BIN
libraries/katex/fonts/KaTeX_Typewriter-Regular.woff2
Normal file
Binary file not shown.
1035
libraries/katex/katex.css
Normal file
1035
libraries/katex/katex.css
Normal file
File diff suppressed because it is too large
Load Diff
17308
libraries/katex/katex.js
Normal file
17308
libraries/katex/katex.js
Normal file
File diff suppressed because it is too large
Load Diff
1
libraries/katex/katex.min.css
vendored
Normal file
1
libraries/katex/katex.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
libraries/katex/katex.min.js
vendored
Normal file
1
libraries/katex/katex.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
16911
libraries/katex/katex.mjs
Normal file
16911
libraries/katex/katex.mjs
Normal file
File diff suppressed because it is too large
Load Diff
@ -48,6 +48,11 @@ const PRINT_THIS = {js: ["libraries/printThis.js"]};
|
|||||||
|
|
||||||
const CALENDAR_WIDGET = {css: ["stylesheets/calendar.css"]};
|
const CALENDAR_WIDGET = {css: ["stylesheets/calendar.css"]};
|
||||||
|
|
||||||
|
const KATEX = {
|
||||||
|
js: [ "libraries/katex/katex.min.js" ],
|
||||||
|
css: [ "libraries/katex/katex.min.css" ]
|
||||||
|
};
|
||||||
|
|
||||||
async function requireLibrary(library) {
|
async function requireLibrary(library) {
|
||||||
if (library.css) {
|
if (library.css) {
|
||||||
library.css.map(cssUrl => requireCss(cssUrl));
|
library.css.map(cssUrl => requireCss(cssUrl));
|
||||||
@ -95,5 +100,6 @@ export default {
|
|||||||
RELATION_MAP,
|
RELATION_MAP,
|
||||||
LINK_MAP,
|
LINK_MAP,
|
||||||
PRINT_THIS,
|
PRINT_THIS,
|
||||||
CALENDAR_WIDGET
|
CALENDAR_WIDGET,
|
||||||
|
KATEX
|
||||||
}
|
}
|
||||||
|
@ -162,7 +162,10 @@ const editorConfig = {
|
|||||||
'CodeBlock',
|
'CodeBlock',
|
||||||
'SelectAll',
|
'SelectAll',
|
||||||
'IncludeNote',
|
'IncludeNote',
|
||||||
'CutToNote'
|
'CutToNote',
|
||||||
|
'Mathematics',
|
||||||
|
'indentBlockShortcutPlugin',
|
||||||
|
'removeFormatLinksPlugin'
|
||||||
],
|
],
|
||||||
toolbar: {
|
toolbar: {
|
||||||
items: []
|
items: []
|
||||||
|
@ -100,6 +100,12 @@ export default class EditableTextTypeWidget extends AbstractTextTypeWidget {
|
|||||||
mention: mentionSetup,
|
mention: mentionSetup,
|
||||||
codeBlock: {
|
codeBlock: {
|
||||||
languages: codeBlockLanguages
|
languages: codeBlockLanguages
|
||||||
|
},
|
||||||
|
math: {
|
||||||
|
engine: 'katex',
|
||||||
|
outputType: 'span', // or script
|
||||||
|
forceOutputType: false, // forces output to use outputType
|
||||||
|
enablePreview: true // Enable preview view
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user