Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-45600

Create a generalized mathematics filter



    • Type: New Feature
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: Future Dev
    • Fix Version/s: FRONTEND
    • Component/s: Filters, Maths filters
    • Labels:


      The current TeX notation filter is outdated and a difficult to modify because of its age and design. It includes some old TeX binaries in the distribution that are system dependent. It also renders TeX with system binaries. TeX delimiters are hard-coded and non-standard, and HTML parsing is questionable. These are inconsistent with configuration and operation of MathJax which is now more standard on the web.
      I propose adding a new filter that would deal with processing mathematics scripts in a more generalized way. The filter itself parses HTML to find scripts designated within configurable delimiters. (This filter would take options like the MathJax preprocessors). The admin independently configures binaries or PHP packages to render the scripts.
      New binaries and methods may be added or modified easily without affecting the bulk of the code. The main filter handles all Moodle related issues such as caching, debugging and context sensitivity. Implementation details for displaying the scripts are contained in pluggable modules.
      In addition to displaying TeX, functionality would be available to interpret other mathematical notations including ASCIIMath, graphs and data.
      TeX and ASCIIMath would be parsed consistently with MathJax so that the filter can be used with MathJax to provide image preview/fallback. Image filters are superior to MathJax with respect to load time.
      Adding this would allow specialized sites to develop and support advanced mathematics systems without modifications to core Moodle code. TeX notation and Algebra filters could be deprecated without loss of backward compatibility of course content.




            • Votes:
              0 Vote for this issue
              4 Start watching this issue


              • Created: