Max Bruckner
49e3fb7fad
ConditionalNode: simplify LaTeX by using the 'cases' environment
2016-01-05 10:53:11 +01:00
Max Bruckner
1983516c2f
Tests for new templates
2015-06-07 19:26:31 +02:00
Max Bruckner
a598204fa7
Change template Syntax to ES6 like style
...
Access properties via ${property} and ${property[index]}
2015-06-07 18:49:58 +02:00
Max Bruckner
b3e8aae10c
LaTeX templates for attached toTex properties
2015-06-07 18:47:50 +02:00
Max Bruckner
2b11b14632
Enable attaching toTex callbacks to functions
2015-06-07 18:41:25 +02:00
jos
a92b978036
Merged develop into v2
2015-06-07 15:57:41 +02:00
jos
c810981238
Method Node.compile() no longer needs math to be passed as argument.
2015-05-27 13:30:35 +02:00
Max Bruckner
3f217cefdd
toTex: no global configuration. Only pass around one local object
2015-05-16 13:30:25 +02:00
Max Bruckner
c0e1b2d268
toString: no global configuration. Only pass around one local object
2015-05-16 13:29:55 +02:00
Max Bruckner
8d3b3bbe35
Tests for custom toString
2015-05-16 13:29:20 +02:00
Max Bruckner
291d620972
Pass local configuration to toTex functions
2015-05-16 13:27:48 +02:00
Max Bruckner
e383c1c2ce
Throw errors when trying to toTex/toString a Node interface
2015-05-16 13:21:39 +02:00
Max Bruckner
aa7ca9178f
Implement 'all' parenthesis option
2015-05-08 09:07:15 +02:00
Max Bruckner
c6f22e3663
unskip tests that were broken by parsing parenthesis nodes
2015-05-07 12:06:37 +02:00
Max Bruckner
5767f1f912
OperatorNode: Fix bug from wrong use of getIdentifier
...
1+(1+1) with parenthesis set to 'auto' triggered a bug because
getPrecedence gets the precedence of the content of a node, but
getIdentifier still returns the 'ParenthesisNode' identifier in case of
a ParenthesisNode.
2015-05-07 12:04:53 +02:00
Max Bruckner
60e2b5700a
ParenthesisNode: Make use of the parenthesis config option
2015-05-07 10:13:41 +02:00
Max Bruckner
6c2cd7f7b7
Node: add method 'getContent()'
...
The 'getContent' method returns the next node down the node tree that
isn't a ParenthesisNode.
2015-05-07 10:12:41 +02:00
Max Bruckner
dd0a5e3a68
Parse parentheses into ParenthesisNodes
2015-05-07 10:12:41 +02:00
Max Bruckner
ea04373028
New ParenthesisNode to represent parentheses in the node tree
2015-05-07 10:12:40 +02:00
Max Bruckner
472aba4e35
BlockNode: add whitespaces to the LaTeX output
2015-05-03 22:17:21 +02:00
jos
f7c5381a13
Fixed Node.transform not recursing over replaced parts of the node tree (see #349 ).
2015-05-02 17:27:14 +02:00
jos
e348cb70a2
Refactored Range and Index. Reorganized index.js
2015-04-30 20:36:45 +02:00
Max Bruckner
dca94e67b7
Node.toTex: improve 'not implemented' error message to contain the type.
2015-04-29 23:59:31 +02:00
Max Bruckner
250707b668
Convert the isNode function into a boolean property.
2015-04-28 09:56:01 +02:00
Max Bruckner
390a0060b4
Add is<NameOfNode> property to enable type checking across constructors
2015-04-28 09:14:53 +02:00
Max Bruckner
e62ab0dae4
Proper toTex for units and symbols.
...
Symbols now don't use `\mathrm` anymore by default, but units do.
2015-04-27 11:08:31 +02:00
Max Bruckner
ca4a0bfda4
Change LaTeX output of string function
...
toTex shouldn't do operations like toString on the node tree
2015-04-27 10:09:42 +02:00
jos
d3d3212633
Refactored all nodes into factory functions (see #342 )
2015-04-26 21:25:31 +02:00
Max Bruckner
8ad525b66e
util/latex: get rid of many unnecessary curly braces
2015-04-19 11:08:00 +02:00
Max Bruckner
9c606c044f
latex.toSymbol: get rid of unnecessary curly braces and wire up units
2015-04-19 09:56:40 +02:00
Max Bruckner
ee4486c3df
SymbolNode.toTex: Prevent symbols from breaking operators
...
If a symbol comes after an operator like '\cdot', there needs to be a
space in between, otherwise the cdot won't get recognized by the LaTeX
parser.
2015-04-19 09:49:10 +02:00
Max Bruckner
1c73dc1262
ConstantNode.toTex: simplify exponential notatian and add test
2015-04-19 09:49:09 +02:00
Max Bruckner
2cd3da416e
UpdateNode.toTex: Fix syntax of assignment and fix test
2015-04-19 09:49:09 +02:00
Max Bruckner
55a66aeaaf
OperatorNode.toTex: get rid of unnecessary curly braces
2015-04-19 09:49:09 +02:00
Max Bruckner
753a0e7893
IndexNode.toTex: Bugfix: execute toTex on Range Arguments
...
Also changes the Layout of the LaTeX output of IndexNode.
2015-04-19 09:49:08 +02:00
Max Bruckner
978bc2bc31
FunctionAssignmentNode.toTex: get rid of unnecessary curly braces
2015-04-19 09:49:08 +02:00
Max Bruckner
816b6314a7
AssignmentNode.toTex: get rid of unnecessary curly braces
2015-04-19 02:13:27 +02:00
Max Bruckner
8db07e23ad
OperatorNode.toTex: BUGFIX: make clear where the exponent belongs to
...
Without proper parentheses it's impossible to decide whether an exponent
belongs to the numerator of a fraction or to the entire fraction.
For ConditionalNode, the exponent is hard to see without parentheses.
2015-04-19 02:11:20 +02:00
Max Bruckner
f2bcfed89f
LaTeX: no spaces between operands and operators
2015-04-17 14:18:24 +02:00
Max Bruckner
7c1c9c0cef
Show less unnecessary parentheses in LaTeX output
...
OperatorNodes with exponentiation, fractions and conditions use less
parentheses.
2015-04-16 22:31:02 +02:00
Jos de Jong
bc6f63b6c9
Merge pull request #318 from FSMaxB/latex-restructure
...
Restructure and complete the LaTeX generator.
2015-04-13 09:39:16 +02:00
jos
3150e21c8e
Fixed #313 : parsed functions did not handle recursive calls correctly
2015-04-09 20:29:51 +02:00
Max Bruckner
dacf9fba46
OperatorNode: bugfix: toTex creates invalid LaTeX
...
toTex has been creating invalid LaTeX for fractions where the operands
are in parenthesis, see '(1+1)/2' for example
2015-04-05 14:29:15 +02:00
Max Bruckner
0868987cdf
util/latex: use ":=" for assignments and '=' 'equal'
2015-04-05 14:29:14 +02:00
Max Bruckner
6b1d09f2cb
util/latex: new toSymbol
2015-04-05 14:29:12 +02:00
Max Bruckner
5dcb87aeaa
util/latex: Remove unused functions
...
* toArgs
* addBraces
* dots and curly functions
util/latex.js: Remove Function addBraces
util/latex.js remove dots and curly functions
2015-04-05 14:29:09 +02:00
Max Bruckner
13e35217b7
Latex restructure
2015-04-05 14:25:54 +02:00
Max Bruckner
47f76f35ac
Limit custom toTex with multiple callbacks to FunctionNodes
...
Now only FunctionNode's toTex can be overwritten mit a map of callbacks
2015-03-17 18:14:14 +01:00
Max Bruckner
af763aa996
Fix breaking change (Node.toTex should return an empty string)
2015-03-13 21:23:14 +01:00
Max Bruckner
0fee9173c8
Enable custom toTex functions
2015-03-13 21:23:14 +01:00