math and other edits
Apologies for mixed PR, but all is straight forward:
* Implemented ```alignat ``` environment for aligned equations
* Added LatexMathParser() class that could potentially act as a quick parser for equations (just a time saving thing)
* If you like it, I think it would more make sense to add it to ```Math``` environment at the low level rather than higher level ```Alignat```?
* Added ```_star_latex_name``` for LatexObject - (Many environments and commands can use this)
Edited / corrected:
* ```Math``` class so that it could act as raw math container without enclosing math brackets
* couple of argument types in DOCSTRINGS (PyCharm was not liking them)
* test filenames (pytest / nosetes was not picking them up)
* numbering bug for sections
List of nice to haves, which I might contribute later:
* Add labeling/referencing for sections, subsections, images, equations - this one might be a big piece
Hi thanks for the pull request. If possible could you try to split it into a couple of smaller pull requests, with seperated changes (for instance a seperate one for numbering bug for sections). That makes the changes much much more easy for me to review.
As for the parser I'd rather keep the goal of pylatex simple: generating latex code. Parsers tend to get complex in no time.
Refactored unrelated changes to separate PRs
Thanks that helps a lot. I'll try to go read this one in detail in the near future, but for now two points:
- Could you add changelog entries for your changes
- What's the reason that you didn't use the normal opt out for escaping? https://github.com/JelteF/PyLaTeX/blob/master/pylatex/base_classes/latex_object.py#L50-L66
I would imagine I would have to use this?
#: Only set this directly by changing the cls.escape
_escape = None
However, property(escape) has no setter. Or am I missing something?
Also, could you please point me to the place where it is used? My question would be, does it apply NoEscape iteratively on all objects in ```self.data``` or only on string items of it?
Would appreciate if you helped me out here. Do not want to reinvent anything here.
Ok, I looked at ```self._escape```. Correct me if I am wrong, but it is not used by any lower level latex generation as is only to be used directly from environments and commands!???
If this is the case, I think ```self._escape``` needs a setter of ```self.escape``` property.