Tag: Kristoffer Rose

A meta-review of resources for typesetting commutative diagrams in TeX & LaTeX. Save time in trying to find the right commutative diagram package on CTAN.

Overview

With my studies in category theory trundling along, I thought I’d take moment to share some general resources for typesetting commutative diagrams in . I’ll outline below some of the better resources and recommendations I’ve found, most by much more dedicated and serious users than I. Following that I’ll list a few resources, articles, and writings on some of the more common packages that I’ve seen mentioned.

Naturally, just reading through some of the 20+ page user guides to some of these packages can be quite daunting, much less wading through the sheer number that exist. Hopefully this one-stop-shop meta-overview will help others save some time trying to figure out what they’re looking for.

Feruglio Summary

Gabriel Valiente Feruglio has a nice overview article naming all the primary packages with some compare/contrast information. One will notice it was from 1994, however, and misses a few of the more modern packages including TikZ. His list includes: AMS; Barr (diagxy); Borceux; Gurari; Reynolds; Rose (XY-pic); Smith (Arrow); Spivak; Svensson (kuvio); Taylor (diagrams); and Van Zandt (PSTricks). He lists them alphabetically and gives brief overviews of some of the functionality of each.

Milne Summary

J.S. Milne has a fantastic one-page quick overview description of several available packages with some very good practical advise to users depending on the level of their needs. He also provides a nice list of eight of the most commonly used packages including: array (LaTeX); amscd (AMS); DCpic (Quaresma); diagrams (Taylor); kuvio (Svensson); tikz (Tantau); xymatrix (Rose); and diagxy (Barr). It’s far less formal than Feruglio, but is also much more modern. I also found it a bit more helpful for trying to narrow down one or more packages with which to play around.

Spivak Pseudo-recommendations

Resources for some of the “Bigger” Packages

Based on the recommendations given in several of the resources above, I’ve narrowed the field a bit to some of the better sounding packages. I’ve provided links to the packages with some of the literature supporting them.