Please suggest typefaces for my talk on contextual alternates

I will be speaking at TypeCon: “Adventures in Contextuality”.
This started out as an article for I Love Typography.
I’ll be covering the history of <calt> and including typefaces that make interesting use of the feature, both by myself and others.
If you are aware of any suitable candidate typefaces, please let me know.


  • Max PhillipsMax Phillips Posts: 474
    I'm sure you're already all over this.

  • Nick ShinnNick Shinn Posts: 2,057
    No, that‘s news to me!

    Please note that simulating hand scripts, the original purpose of <calt>, is not its only use, and other effects, such as pseudo-randomness, will also be addressed.
  • I made this typeface a while ago. It may not be a great looker, but it does have some nice features.

    Erik van Blokland helped me with the code. It has up to four or five alternates per glyph. We added pseudo-randomness on the width and vertical and horizontal position.

    Someone wanted it's calligraphy as a typeface to produce a book. We tried to mimic the writers' irregularity.

  • It’s perhaps a bit on the periphery of the subject, but for my digitized calligraphic lettering of Queen Beatrix’s Adication Act (2013), the former queen (‘koningin’) and new king (‘koning’) had their own version of the g, and ‘koninklijk’ (= royal) a special k at the end. I made the fonts especially for the abdication text and they were only used once.

    A few more images can be found in this presentation.
  • I've used contextual alternates to fill in white spaces in my work-in-progress Turicum:

  • Stephen ColesStephen Coles Posts: 985
    edited June 2015
    Using contextual alts instead of common ligatures isn’t as sexy as those made for randomness or display type, but I think it’s interesting and worth noting in your talk. I asked for examples on Twitter and got lots of responses.
  • Nick ShinnNick Shinn Posts: 2,057
    edited June 2015
    Thanks Stephen. There were some good threads on <calt> vs <liga> at Typophile, but they have vanished into the ether…
  • Kent LewKent Lew Posts: 905
    edited June 2015
    Nick — My suggestions are fairly standard applications of {calt}, unlike some of the more adventurous examples given above.

    1) Are you aware of the {calt} wizardry that Tal Leming built into Christian Schwartz & Dino Sanchez’s Luxury Text Italic to manage swash all-caps settings?

    2) I employed a fair number of {calt} rules in Big Caslon Italic for FB in order to manage a lot of swash combinations, including secondary proximities:

    Also, are you making a distinction between the {calt} feature itself and contextual lookups in general (regardless of the feature to which they’re assigned)?

  • Craig EliasonCraig Eliason Posts: 1,345
    Along those lines (in a less sophisticated example), the /X in the SWSH versions of my Ambicase fonts uses contextual awareness. In addition to having initial, medial, and final forms, it also takes care not to tuck under a preceding letter that has claim on that descender space, and not to shoot over a following letter that enters the ascender space. And if the following letter is an /I it forms a ligature, with its lachrymal terminal serving as a tittle. 

    Xs.png 68.5K
  • Nick ShinnNick Shinn Posts: 2,057
    Thanks Craig. I am open-minded, in research mode at the moment.

    I will be focusing on ways in which the <calt> feature has prompted new kinds of typeface design—as the aspect of OpenType which goes beyond repeating existing concepts such as small caps, oldstyle figures, and traditional ligatures.

    So, if contextual lookups in, say, the <liga> feature, result in new forms and effects, I will address that.
  • John HudsonJohn Hudson Posts: 2,814
    So, if contextual lookups in, say, the <liga> feature, result in new forms and effects, I will address that.

    It can, insofar as it's flexibility extends typeform ligation to a greater range of letters and diacritics than would be typical in a ligature glyph mapping approach. See page 28 of my Brill presentation deck from Typo Berlin last year.

  • PabloImpallariPabloImpallari Posts: 773
    edited June 2015
    In Lobster I've used some calts in my ligas to automagically add final forms.
    Nothing new under the sun here, except that it was probably the first free font to include eye-catching OT features (hopefully helping to popularize OT features to wider audiences who had never heard of it before).

    My inspiration for adding OT features at that time where:
    1) Some of the automagic fonts from House Industries (I was in love with the animated gifs showing how the features worked), and
    2) Jess Latham's Blue Vinyl scripts. They are great ones. They don't receive as much publicity as they deserve. He makes scripts that make clever use of contextual alternates. They are very legible script fonts (as opposed to swash craziness). I think they are great among the best ones.

    My current OT Magic Top 3 list is:
    1) Underware's Liza, already mentioned, is a masterpiece.
    2) Corradine's Sinffonia is also a exceptional one. Sinffonia has quite a lot of swash craziness, but in a controlled manner. There is a lot of very complex code to make sure that the swashes and flourished don't overlap one against each other, making sure that the result is always pleasurable, instead of a tangle of strokes as we are used to see everywhere.
    3) Symphony Pro is another underrated one. The OT code and the alternate glyphs make it probably the best connecting formal scripts ever. Don't get fooled by the myfont preview. Take it for a spin and play with the features. It's just great. The original design is form Headliners Inc.
  • Almost forgot...
    In Libre Caslon Display I've added an /L.shot and a /T.short

    /L.short kicks in when used next to an /A. For example in "IMPALLARI", boths /L gets narrower to reduce the admitted white space.

    /T.short kicks in when preceding and ascender like /h /b /k /l. For example in "The End". An alternative approach to the Adobe's popular /T_h ligature, similar to John's alternate /f for /f_i, /f_l, etc...
  • PabloImpallariPabloImpallari Posts: 773
    edited June 2015
    Since you are also covering the history of calt, here is a formal script from Fry, sometime around 1800. Lots of calts and instructions on where to use each one.

  • Last one, from one of my unfinished projects.  A semi-formal & semi-casual script based on my own sumi ink brush practice.
    There are 7 sligthly different version of each letter. Each one is selected depending of the preceding and following glyph. The goal is to get natural looking connections and legibility, all using calts instead of ligas.

  • Ray LarabieRay Larabie Posts: 1,335
    I don't know if this counts:
    The first letter (optional) is a solid zero-width shape. The second letter, the ring, is a container which determines the number of characters you want to squeeze in. The following numerals will squeeze in according to whichever ring was chosen.
  • Nick ShinnNick Shinn Posts: 2,057
    Thanks, everybody!
  • I've been looking into "Open Type Magic" recently as well... 
    Toshi Omagari's single-width font experiment during the recent "Font Marathon Challenge” was very clever!

  • I don't think of it as a terribly interesting use, but for an all caps + small caps typeface, I use <calt> for Greek tonos removal by default, as appropriate; if one needs to see the tonos marks, turn of <calt>.
  • John HudsonJohn Hudson Posts: 2,814
    Jeff, do you also contextually handle dialytika insertion for Greek all-caps? That makes it rather more interesting.
  • Chris LozosChris Lozos Posts: 1,455



    Candy Script.otf








  • I usw a shorter 'f' before letters with ascender like b, h, adieresis. In some of my fonts.
  • Chris LozosChris Lozos Posts: 1,455
    I use a narrower on one side T when it is next to V, W, X, T
  • Jeff KellemJeff Kellem Posts: 65
    edited June 2015
    @John%20Hudson  wrote…
    Jeff, do you also contextually handle dialytika insertion for Greek all-caps? That makes it rather more interesting.

    Yes. That seemed like the appropriate thing to attempt for an all-caps typeface. Admittedly, I could use more sample texts to test against. On the to do list for QA.

  • Nick ShinnNick Shinn Posts: 2,057
    Thanks for reminding me, Jeff, I have used <calt> to handle Greek capitalization, but wasn’t thinking of it for this talk. But now I will! (Arabic contextuality is outside my expertise, though.)
  • Chris LozosChris Lozos Posts: 1,455
    Nick, I am attaching  a spread from My documentation of Dez Boulder that shows OT features.
  • Adam TwardochAdam Twardoch Posts: 507
    edited June 2015

    if you’re interested in “the origins of the species” aka “ancient history”, I can give an account of somewhat “pioneer work” in the realm of “calt”. In 2003-04, I worked on the “opentypification” of Hermann Zapf’s Zapfino Extra Pro for Linotype. 

    In 2003, I’ve created the first release of Zapfino Extra Pro which had the traditional OpenType features like stylistic sets, small caps, figure sets etc., but no contextual alternates. One problem with the typeface was that most users still just used the basic set of characters — you hardly saw any alternates in use. 

    So in 2004, I worked on version 2.0 of Zapfino Extra Pro. For that, I created the pseudo-random “calt” feature in two flavors. One was more conservative, as it used backtrack contexts, so you would type and the next letter that would come out would simply be one of the pseudo-random set. But I also made another flavor which used lookahead contexts. This meant that, when you were typing, the letters you’ve already typed would change. I called this “the fashion show effect” — when typing, users would see the different variants presented to them, so they would become more aware of the font’s possibilities. The hope was to animate more users to explore the glyph set. Once they’ve seen the various alternates, they might go and consciously pick and change the result of the default “calt” shuffle.

    Here’s a screen recording of the “fashion show effect” of Zapfino Extra Pro in action:

    I had a meeting with Hermann Zapf and the Linotype team in the Summer of 2004 where I presented both alternatives. First, I showed the more conservative one. Then I showed the one with the lookaheads, and Hermann was quite excited. “I’ve explained my ideas behind Zapfino to many people, but you’re the first person who got it completely right!”, he called out. 

    So I finalized it, and Linotype released Zapfino Extra Pro 2.0 at the end of 2004. I made a presentation about the process at TypoTechnica 2005, here are my slides from that talk: 

    Of course, looking at it now, I know how many things I could have done better. 

    The process of creation was complicated. Zapfino was first released as a set of Type 1 fonts, then (I believe) John Hudson expanded the character set greatly and had made it into the Unicode+AAT version for Apple. Then, Akira Kobayashi with Hermann redesigned many glyphs for the “Extra” version. But those glyphs were still intended to be used as “sets”, and only at the very end of the process the idea came that the glyphs from different sets could be “shuffled”. So there are some spacing deficiencies in the font, and perhaps my “fashion show” method is a bit over the top. But had served a particular purpose at the time. 

    We have specifically made the difference between the “calt off” and “calt on” behaviors very dramatic. Back in 03-04, not many apps supported OpenType Layout, let alone “calt”. So the font has been used effectively as a demo for various developers, to show them how expressive contextual alternates could be, once they’re implemented. 

    Also, I believe this was possibly the first font on the market of that kind — with actual (controlled, but only minimally) “pseudo-randomness”. And, to my surprise, there still aren’t too many script fonts where the “fashion show effect” is used, i.e. where they would heavily utilize the lookahead contexts. I’m still very fond of this particular aspect. When designed well, it serves additional purposes beyond just delivering the final typographic setting. The very process of typing is itself fun. There is this childlike exploratory effect, a surprise waiting for you with every letter. The user doesn’t need any complex machinery, especially these days. It’s almost like a game. Simple and effective. 

    About a year after Zapfino Extra Pro hit the shelves, House Industries released Ed Interlock (by Ken Barber and Tal Leming): 

    To me, it was a masterpiece of OpenType “calt” coding, especially at the time. There, the functionality has been planned by Ken and Tal from the very beginning, so the result was much more balanced than my own work on Zapfino. When I saw Ed Interlock in action, I was amazed. 

    Today, a decade later, we all have much more experience with OpenType and contextual alternates, and there are many more typeface designs that are much more refined. 

    As for more recent projects, one of my favorites is Pecita, a rather unknown opensource (OFL) “fast” handwriting font by Philippe Cochy: 

    It has >5000 glyphs (large Latin, Greek, Cyrillic, basic Japanese, lots of symbols), very extensive “calt”. And feels very authentically French. For version 5, the author is planning mark positioning: . It may not be very useful but I love it! :) 

  • Nick ShinnNick Shinn Posts: 2,057
    Thanks for taking the time to make this post, Adam.
  • Dave CrosslandDave Crossland Posts: 1,319
    Poor Pecita! I love it but the filesize was prohibitive for hosting in the Google Fonts API :)
Sign In or Register to comment.