Home

Awesome

leibniz-pharo

The second iteration of Leibniz, implemented in Pharo making heavy use of the Glamorous Toolkit

screenshot

Installation

Install a font with all the math symbols

Leibniz makes generous use of Unicode glyphs that are not contained in the default fonts used by GToolkit. The best free code font (monospaced) I have found is JuliaMono. For standard text fonts, the options I am aware of are Arial Unicode MS and Noto Sans Math. Leibniz will automatically select one of them, if available. Otherwise it will use the default code font of Glamorous Toolkit. It lacks many of the maths symbols that Leibniz uses. Some of them will be substituted from other fonts if possible, making the text readable but often ugly. Others will be replaced by a default glyph, making the code unreadable.

Note that you must install a suiteable font before installing the Leibniz package into Glamorous Toolkit. The font is chosen at installation time.

Install Glamorous Toolkit

The easiest option is downloading a ready-to-run binary for your system from the download page.

Install Leibniz

  1. Open Glamorous Toolkit and click on the playground icon near the top left.

screenshot

  1. Paste the following lines of code into the playground:
Metacello new
    baseline: 'LeibnizForGToolkit';
    repository: 'github://khinsen/leibniz-pharo/src';
    load.

Then click on the arrow highlighted in the screenshot below. Wait until the pane on the right appears. This may take a few minutes. Close the playground by clicking on the cross highlighted in the screenshot below.

screenshot

  1. Open the Leibniz Book

The installation process has added a big icon labelled "Leibniz Book" to the home screen of Glamorous Toolkit. Click on it to open it.

screenshot

  1. Start reading and exploring

Read the first page, and move on as you like, either following links or navigating through the table of contents.

screenshot

Dependencies

The following list is provided for information. All the dependencies will be installed automatically in the procedure explained above.