jaltekruse / Free-Math

An offline React web application for managing digital math homework
http://freemathapp.org
71 stars 18 forks source link

Add support for writing linear systems to editor #9

Open jaltekruse opened 6 years ago

jaltekruse commented 6 years ago

Not quite sure how hard this would be to add to the editor. It has support for curly braces {} for use as grouping symbols. It might be hard to make it intuitive with just a keyboard as the giant curly brace for linear systems should probably be totally distinct from the grouping symbol.

Users would need a way to enter a variable number of expressions, which is a similar problem to managing the size of a matrix.

Possible solutions could include an extra step during insertion, similar to the table insertion in modern MS Word. There they show a mini grid and users highlight an N by M rectangle to pick the size.

Another possible solution is starting with some minimum number in each direction and giving a button on the interface to insert a new row/column. This might have complexities of expectations to behave like an excel table, with the options to insert rows and columns above and below (or to the left/right) of any existing ones.

Marlysson commented 4 years ago

Hello @jaltekruse What a wondeful project, very well written and useful.

I'm working with a similar project. A builder of math formulas and I' in the step to add the linear equations on my system.

I saw that you are using the MathQuill to add some math elements ( me too ) but it doesn't support case/*matrix elements in its input elements.

Were you able to work around this problem? ( Your suggestion of using a step to add grid with number of columns and lines is so great, I'm almost trying this too )

Marlysson commented 4 years ago

Something like this: forma1 forma2

jaltekruse commented 4 years ago

Hi @Marlysson,

Thanks for the kind words, I'm glad you like the project!

I'm not sure if you might have noticed, but there is a pretty widely used patch on top of mathquill that at least adds support for matrices (not sure if it also adds linear systems).

It was originally developed by the team over at Learnocity, I have been doing some work with @laughinghan on mathquill and getting this into mainline is one of my goals for my work with mathquill.

https://github.com/Learnosity/mathquill/commit/f40f2a9d992f14bf542388b5a83dee21c662bd3b

https://github.com/Learnosity/mathquill/commit/92f2057f5ed096085ee326505d946822e35b733b