Jump to: Navigation.

Entiumgay – An AAT Pig Latin Font

On this page:


Entiumgay is a silly font that will automatically convert anything you write into Pig Latin. It is a modification of J. Victor Gaultney’s font Gentium Basic Book (version 1.100).

Entiumgay is mainly an Apple Advanced Typography (AAT) showcase. It proves that glyph rearrangement is still perfectly possible even though proper AAT rearrangement is broken (maybe since Mac OS 10.4?).

Pig Latin is the prime example for glyph rearrangement in a Western font. That’s why the Download Graphite Fonts page features a Pig Latin font and why Pig Latin is mentioned in the Apple Font Tool Suite.


Initial release on SourceForge.net: Entiumgay 2010-08-26.zip!


You can download Entiumgay here: Entiumgay 2010-08-26.zip. Alternatively, go to Browse Entiumgay – An AAT Pig Latin Font Files on SourceForge.net and choose a release.


Entiumgay font requires AAT. To my knowledge, AAT works only on Mac OS. If you are looking for a Pig Latin font that runs on other system, try Sharon Correll’s Pig Latin Graphite Demo Font that requires Graphite.


Entiumgay has several options. Advanced AAT applications such as TextEdit.app or InDesign provide interfaces for these options – in TextEdit.app, open the Show Fonts floating window (⌘T), select the Entiumgay font, then click on the gear wheel icon at the bottom left and choose Typography.... You may choose between different “dialects” of Pig Latin – including Mattenänglisch (Bernese German meadow English). Here is a screenshot from TextEdit.app:

Entiumgay on TextEdit.app screenshot

How it works

This is a schematic step-by-step explanation of the glyph rearrangement in Entiumgay. If you want further information about AAT, try Free Tengwar Font Project: Adding Graphite and AAT to a Font.

Note that the actual rearrangement instructions of Entiumgay are considerably more complicated than this schematic (see Entiumgay.mif). Entiumgay substitutes up to five glyphs, accounts for case, and gives a choice between different “dialects” of Pig Latin.

  1. Insert a dummy glyph before the first vowel of a word (this is not really necessary, but it makes the subsequent steps easier):

    school → sch|ool
      day  →   d|ay
       off →    |off
  2. Insert a separator glyph after each word (again, this is only for making the subsequent steps easier):

    sch|ool → sch|ool-
       d|ay →    d|ay-
       |off →    |off-
  3. Insert the first placeholder glyph after the separator glyph inserted in step 2:

    sch|ool- → sch|ool-1
       d|ay- →    d|ay-1
       |off- →    |off-1
  4. Insert the second placeholder glyph after the first placeholder glyph inserted in step 3. Note: You must not insert too many glyphs at once – for an inscrutable reason, this would mess up their order:

    sch|ool-1 → sch|ool-12
       d|ay-1 →    d|ay-12
       |off-1 →    |off-12
  5. Insert the third placeholder glyph after the second placeholder glyph inserted in step 4:

    sch|ool-12 → sch|ool-123
       d|ay-12 →    d|ay-123
       |off-12 →    |off-123
  6. Insert ay after the last placeholder glyph:

    sch|ool-123 → sch|ool-123ay
       d|ay-123 →    d|ay-123ay
       |off-123 →    |off-123ay
  7. A contextual substitution looks for the first letter of a word unless there is the dummy separator glyph inserted in step 1. The contextual substitution enters a state matching that letter (for instance, if the letter is s, then the contextual substitution enters the state s). Then it goes on parsing the word until it reaches the first placeholder glyph inserted in step 3. That placeholder glyph is substituted by the letter that corresponds to the state the contextual substitution has entered (for instances, if the contextual substitution has entered the state s, then the placeholder glyph is substituted by s):

    sch|ool-123ay → sch|ool-s23ay
       d|ay-123ay →    d|ay-d23ay
       |off-123ay →    |off-123ay
  8. Same for the second letter (unless there is the dummy separator glyph inserted in step 1) and the second placeholder glyph:

    sch|ool-s23ay → sch|ool-sc3ay
       d|ay-d23ay →    d|ay-d23ay
       |off-123ay →    |off-123ay
  9. Same for the third letter (unless there is the dummy separator glyph inserted in step 1) and the third placeholder glyph:

    sch|ool-sc3ay → sch|ool-schay
       d|ay-d23ay →    d|ay-d23ay
       |off-123ay →    |off-123ay
  10. Delete any glyph before the dummy glyph inserted in step 1, delete the dummy glyph, delete any extant placeholder glyph:

    sch|ool-schay → ool-schay
       d|ay-d23ay →  ay-day
       |off-123ay → off-ay


You can reach me through e-mail at: j_maREMch_OVEwuTHISst@sharedTEXT-files.de.

You may also want to check out my sourceforge user web: j. ‘mach’ wust’s sourceforge user web.