Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/asciidoctor/asciidoctor-mathematical
An extension for Asciidoctor that converts the content of STEM blocks and inline macros using Mathematical.
https://github.com/asciidoctor/asciidoctor-mathematical
asciidoctor
Last synced: 4 days ago
JSON representation
An extension for Asciidoctor that converts the content of STEM blocks and inline macros using Mathematical.
- Host: GitHub
- URL: https://github.com/asciidoctor/asciidoctor-mathematical
- Owner: asciidoctor
- License: mit
- Created: 2015-06-25T07:31:09.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-01-31T21:34:42.000Z (9 months ago)
- Last Synced: 2024-10-30T00:00:39.184Z (11 days ago)
- Topics: asciidoctor
- Language: Ruby
- Homepage:
- Size: 62.5 KB
- Stars: 50
- Watchers: 6
- Forks: 45
- Open Issues: 44
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# asciidoctor-mathematical
Alternative stem processor for asciidoctor based on
[Mathematical](https://github.com/gjtorikian/mathematical).## Features
asciidoctor-mathematical processes `latexmath` and `stem` blocks and inline
macros and replaces them with generated SVG or PNG images, thus enables `stem`
contents on a much wider range of asciidoctor backends. Currently, it is
tested to works well with the html, docbook, pdf and latex backends. For
`stem` blocks and macros, only the `latexmath` type is supported.### Package Specific Attributes
These attributes can be set to tweak behaviors of this package:
| attribute | description | valid values | default value |
| --------- | ----------- | ------------- | ------------- |
| mathematical-format | format of generated images | svg, png | png |
| mathematical-ppi | ppi of generated images, only valid for png files | any positive number | 300.0 |
| mathematical-inline | if present will inline equations as svg (only useful for HTML output) | true/false | false |## Usage
`asciidoctor-pdf -r asciidoctor-mathematical -o test.pdf sample.adoc`## Installation
asciidoctor-mathematical is now available on RubyGems. Installation is done
by `gem install asciidoctor-mathematical`. Install dependencies first.### Dependencies
make, gobject, glib, gio, gdk-pixbuf, gdk, cairo, pangocairo, libxml, bison, flexFor the runtime, the following ttf fonts should be installed: cmr10, cmmi10,
cmex10 and cmsy10. They are provided by the lyx-fonts package in fedora, and the
fonts-lyx (or previously ttf-lyx) package in debian/ubuntu. In Arch Linux you can
install the [ttf-computer-modern-fonts](https://aur.archlinux.org/packages/ttf-computer-modern-fonts/)
package from AUR, you also have the [lyx](https://www.archlinux.org/packages/extra/x86_64/lyx/)
package in _extra_ repo though; both are providing required Computer Modern fonts.#### OS X
Make sure you `brew install glib gdk-pixbuf cairo pango cmake`You can install the font dependencies by using
```
cd ~/Library/Fonts
curl -LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/cmex10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/cmmi10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/cmr10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/cmsy10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/esint10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/eufm10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/msam10.ttf \
-LO http://mirrors.ctan.org/fonts/cm/ps-type1/bakoma/ttf/msbm10.ttf
```
If you experience any compilation errors (caused by Mathematical) try running:
`brew link gettext --force` (you can unlink the libraries later if you want).#### Ubuntu
`sudo apt-get -qq -y install bison flex libffi-dev libxml2-dev libgdk-pixbuf2.0-dev libcairo2-dev libpango1.0-dev fonts-lyx cmake`#### Fedora 28
```
sudo dnf --setopt=install_weak_deps=False install -y \
bison \
cairo-devel \
cmake \
flex \
gcc-c++ \
gdk-pixbuf2-devel \
libffi-devel \
libxml2-devel \
make \
lyx-fonts \
pango-devel \
redhat-rpm-config \
ruby-devel
```The mathematical gem cannot currently be installed on Fedora 29.
### Trouble Shooting
The `mathematical` gem, which is a hard dependency of
`asciidoctor-mathematical`, may fail to build because of its over-writing of
`strdup`. Whether it fail depends on the system. In case it fails, use the
following command to install `mathematical` (see
[gjtorikian/mathematical#64](https://github.com/gjtorikian/mathematical/issues/64)
for the details):```
MATHEMATICAL_SKIP_STRDUP=1 gem install mathematical
```