diff --git a/README.md b/README.md
index 9080f4ee5..f39a9df3b 100644
--- a/README.md
+++ b/README.md
@@ -65,7 +65,7 @@ Supported input and output formats are:
## Available typesetting engines
### MathJax
-- Tested by using version __2.7.5__ and __TeX-MML-AM_HTMLorMML__ configuration
+- Tested by using version __2.7.5__ and __TeX-MML-AM_HTMLorMML__ configuration. It works also with version __3.0.0__ or newer!
- Use __\\( \\)__ delimiters for inline and __\\[ \\]__ delimiters for display
### KaTeX
- Tested by using version __0.11.0__
@@ -83,7 +83,7 @@ InlineEditor.defaultConfig = {
// ...
math: {
engine: 'mathjax', // or katex or function (equation, element, display) => { ... }
- outputType: 'script', // or span
+ outputType: 'script', // or span or math
forceOutputType: false // forces output to use outputType
}
// ...
@@ -96,4 +96,5 @@ InlineEditor.defaultConfig = {
- AutoMath like AutoMediaEmbed
- Convert equation to mathtex when paste from word
- Fix KaTex preview
-- Make better way to import lark theme for plugin
\ No newline at end of file
+- Make better way to import lark theme for plugin
+- MathML input and output when using MathJax version 3
diff --git a/src/mathediting.js b/src/mathediting.js
index 2105322ba..34e26a12b 100644
--- a/src/mathediting.js
+++ b/src/mathediting.js
@@ -5,7 +5,7 @@ import Widget from '@ckeditor/ckeditor5-widget/src/widget';
import MathCommand from './mathcommand';
-import { renderEquation, defaultConfig } from './utils';
+import { defaultConfig, renderEquation } from './utils';
export default class MathEditing extends Plugin {
static get requires() {
@@ -40,8 +40,8 @@ export default class MathEditing extends Plugin {
const mathConfig = {
...defaultConfig,
...this.editor.config.get( 'math' )
- }
-
+ };
+
// View -> Model
conversion.for( 'upcast' )
// MathJax inline way (e.g. )
@@ -54,7 +54,11 @@ export default class MathEditing extends Plugin {
},
model: ( viewElement, modelWriter ) => {
const equation = viewElement.getChild( 0 ).data.trim();
- return modelWriter.createElement( 'mathtex', { equation, type: mathConfig.forceOutputType ? mathConfig.outputType : 'script', display: false } );
+ return modelWriter.createElement( 'mathtex', {
+ equation,
+ type: mathConfig.forceOutputType ? mathConfig.outputType : 'script',
+ display: false
+ } );
}
} )
// MathJax display way (e.g. )
@@ -67,9 +71,33 @@ export default class MathEditing extends Plugin {
},
model: ( viewElement, modelWriter ) => {
const equation = viewElement.getChild( 0 ).data.trim();
- return modelWriter.createElement( 'mathtex', { equation, type: mathConfig.forceOutputType ? mathConfig.outputType : 'script', display: true } );
+ return modelWriter.createElement( 'mathtex', {
+ equation,
+ type: mathConfig.forceOutputType ? mathConfig.outputType : 'script',
+ display: true
+ } );
}
} )
+ // Todo: Implement input conversion
+ /*
+ // MathML (e.g.