Files
libreoffice/compilerplugins/clang
dante 7e2c35324c Evaluate command: tdf#109338
Adds evaluate command.
It's visible from UI as a bracket.
Example: evaluate { {1} over {%sigma sqrt{2%pi} }func e^-{{(x-%mu)^2} over {2%sigma^2}} } from { -infinity } to { +infinity } = 0

In order to make the mathml part, several changes had to be mad:
 - Allow mathml to correctly identify the math token for opperators
 - Allow mathml to correctly identify the math token for fences
   - Since improvements where made on token recognision, visitors to string can now be lighter ( removing long long switch )
 - Improving the import / export to mathm
 - LO says it mathml 2, but actually is something between 2 and 3
   - Allowing mfenced ( mathml 2.0 ) to stayl 3 adding the missing data ( prefix and postfix )
     - Be able to know if we are opening or closing brackets
   - lrline and lrdline commands hidden on UI.
     - They are they own open close
     - If prefix and postfix are missing meaning of the expression may change, however that's the user problem.
     - The problem resides in the fact that MS_VERTLINE is uses for lline and rline.
     - The problem resides in the fact that MS_DVERTLINE is uses for ldline and rdline.
 - Changing frac priority from 0 to 5, if not { frac 1 2 frac 1 2 } fails ( found while testing )
 - The mathml testing was made with highter standars than qa tests, however there are no guarantees.
 - Added xml tokens needed for math
 - Added starmathdatabase. Will grow in the future.
   The point is avoiding long lists and swtches inside code.

Added it command for hidden or implicit product ( like ⁢ in mathml ). Oppens path for tdf#66200. Note that about this issue there is only one line on the parser. The mathml implementation will be made later when LO will allow chars with &charname;.

Change-Id: If24b40c2420d39498693944f13a02985f997dd23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105267
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-11-10 07:59:14 +01:00
..
2020-11-06 14:35:36 +01:00
2020-11-04 13:57:38 +01:00
2020-02-16 14:17:12 +01:00
2020-09-02 23:39:39 +02:00
2020-09-02 23:39:39 +02:00
2020-01-16 08:54:07 +01:00
2019-10-04 08:54:02 +02:00
2019-10-04 08:54:02 +02:00
2019-12-05 13:30:36 +01:00
2020-02-13 08:14:08 +01:00
2020-10-21 15:02:42 +02:00
2020-08-14 18:03:06 +02:00
2019-11-16 20:19:54 +01:00
2020-11-03 22:29:36 +01:00
2020-08-04 16:12:06 +02:00
2020-11-06 13:17:49 +01:00
2020-07-30 17:34:39 +02:00
2020-09-30 15:56:37 +02:00
2020-11-06 09:57:43 +01:00
2020-08-18 16:02:25 +02:00
2020-08-16 13:48:20 +02:00
2020-08-20 14:58:31 +02:00
2020-11-02 20:42:17 +01:00