After a bit of discussion over on TiddlyTalk, I’ve resolved a security issue and feel good enough about the little solution for lengthy/complex (but primitive only) arithmetic expressions.
In this sample TiddlyWiki instance, you’ll find the following two tiddlers needed:
- Eval.js (the javascript eval function, locked to only allow the characters (excluding the double quotes) “0123456789 ()±*/%”
- EvalThis tiddler with the EvalThis macro.
Although I can’t stand javascript, I am not fussy about TiddlyWiki filter operations for lengthy/complex basic arithmetic, and not really fond of bringing in any of the powerful plugins out there when I don’t need that much oomph.
Some sample macro references:
`
<<EvalThis “(100 + 2) / (9 - 1)”>>
<<EvalThis “59 % 3”>>
<<EvalThis “5**3”>>
<<EvalThis “( {{!!a}} * {{!!b}} ) / 2”>>
<$list filter="[range[25]]"> {{!!title}} / 2 = <<EvalThis “{{!!title}} / 2”>>
</$list>
`