ASCIISvg Plugin for TinyMCE in Plone for drawing a graph of function in SVG
A TinyMCE plugin for Plone to render a function of a graph as SVG and it requires a browser that can render SVG.
It is based on the TinyMCE plugin written by David Lippman as part of the IMathAS project: http://www.imathas.com/. A demo of the IMathAS version of the plugin is available here: http://www.imathas.com/editordemo/demo.html
For FullMarks (and Plone), the plugin has been modified to always render SVG and not use any fallbacks that generate images server-side.
This plugin was developed as part of the FullMarks project funded by the Shuttleworth Foundation, an open educational repository of model questions and answers. See http://www.fullmarks.org.za and http://github.com/fullmarks for more information.
Add as an egg to your buildout and rerun buildout:
[buildout] eggs = fullmarks.tinymceplugins.asciisvg
Navigate to Add-ons in the Site Setup area of your Plone site.
Activate the TinyMCE ASCIISvg plugin
- Prevent users from adding an invalid function to the graph. Show an error and ask them to re-enter the function.
- use single quotes when adding equations to dropdown list since double quotes don’t work on Chrome.
- use regexp syntax for string replacement since the global match flag (eg s.replace(substr, newsubstr, ‘g’) is not supported by Chrome.
- use span rather than div as container to allow inline display of graphs
- Embed svg source in hidden CDATA section alongside ASCIISvg script. NOTE: Plone 3’s safe_html transform swallows CDATA, Plone 4 works correctly.
- use jq instead of $ to invoke jquery for Plone 3 compatibility
- Initial release