Mathml2latex

The Mathml2latex gem translates Mathml xml into latex.

Installation

$ cd your_project
$ bundle install mathml2latex

Usage

require 'mathml2latex'
@gem = Mathml2latex::Converter.new
@gem.translate(mathml_xml_string)

Development

A simple docker environment has been provided for spinning up and testing this gem with multiple versions of Ruby. This requires docker and docker-compose to be installed. To run specs, run the following:

docker-compose build --pull
docker-compose run --rm app

This will install the gem in a docker image with all versions of Ruby installed, and install all gem dependencies in the Ruby 2.6 set of gems. Then it will run wwtd, which runs all specs across all supported versions of Ruby and gem dependencies.

The first build will take a long time, however, docker images and gems are cached, making additional runs significantly faster.

Individual spec runs can be started like so:

docker-compose run --rm app bash -l -c \
  "rvm-exec 2.6 bundle exec rspec"

You can also pull up an interactive console:

docker-compose run --rm app bash -l -c \
  "rvm-exec 2.6 bundle exec rake console"

If you'd like to mount your git checkout within the docker container running tests so changes are easier to test, use the override provided:

cp docker-compose.override.example.yml docker-compose.override.yml

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at:

https://github.com/instructure/mathml2latex

License

The gem is available as open source under the terms of the MIT License.