Computers & Writing Systems
Smith is a framework to help build fonts and keyboards.
Building a font can take numerous steps and involve numerous programs which, if done by hand, would be prohibitively slow. Even working out what those steps are can take a lot of work. Smith uses a description file that allows the user to describe how to build the font. Smith then uses this to decide precisely which commands should be executed in which order. As a result, using smith reduces build times to seconds rather than minutes or hours, and makes build, test, fix, repeat cycles very manageable. In addition, by making the build and test processes for a set of fonts repeatable, the whole process can be shared with others simply. This allows for fonts to truly be open software. The same approach is available for keyboards.
The smith source code is on https://github.com/silnrsi/smith/.
Smith runs inside an Ubuntu VM (virtual machine).
The package repository with the latest version of smith and its various components is on the smith PPA (Private Package Archive): https://launchpad.net/~silnrsi/+archive/ubuntu/smith.
When installed, the smith manual is located in /usr/share/doc/smith-common/ (in PDF and HTML formats) inside the package. It will also be available from the github project.
Smith is maintained by SIL International's NRSI, is Copyright (c) 2011, Martin Hosken - SIL International, and is released under the BSD license.