I have re-released ExtraCatalogs, an alternative MessageCatalog for Visualworks Smalltalk that supports XLIFF-format files.

ExtraCatalogs introduces SimpleMessageCatalog, an in-memory MessageCatalog implementation that works with the standard Visualworks UserMessage infrastructure for translating strings in a user interface.

A SimpleMessageCatalog can be read from and written to an XLIFF file. The tools used by translation companies work with XLIFF natively, so this is a convenient format for working with translation services.

SimpleMessageCatalog also provides methods for maintaining translations over time. Using the provided API, it is possible to produce a catalog containing just the new and changed strings since the previous version of the catalog. This catalog is usually much smaller than the original and thus less expensive to translate. Once translated, it can then be used to update the original catalog.

ExtraCatalogs also includes the ExtraCatalogsTools package, which adds some tool support for building message catalogs. UserMessageExtractor can be used to extract all of the UserMessages from a method. See the package comment or Readme file for more details. At present, ExtraCatalogsTools can be used independently of ExtraCatalogs, so might be useful even if you don’t want to use SimpleMessageCatalog.

ExtraCatalogs was originally written by Travis Griggs, but I’ve taken over maintenance of it, updated the documentation and licensing, and re-released it.

ExtraCatalogs’ primary home is the Cincom Public Store Repository. Check there for the latest version. I’ve also put a snapshot of the current version of ExtraCatalogs on GitHub. The Readme file on GitHub includes documentation of the API of ExtraCatalogs if you’d like more information before diving in. I’ve also submitted it for inclusion as a contributed package in the next Visualworks release.

ExtraCatalogs is intended to be compatible with VW 7.7 and later.

ExtraCatalogs is licensed under the MIT license.