THDL : Tools : Software : Developers Site

THDL Tools Developers' Site

This page is a technical page for software developers, which presents details concerning the internal mechanics of the THDL tools. This page covers both low-level (e.g., which API?) and high-level (e.g., which user interface?) issues. Related projects are also discussed.

The only thing we personally have got up on the web that's any use thus far are

  • some builds of the tools, etc. from April 12, 2003.  This is an example of the nightly builds that we could easily have if programmers weren't so lazy.
  • a document describing a Tibetan Machine Web to {THDL Extended Wylie, Tibetan Machine} converter that works for Rich Text Format files and solves the "curly-brace problem".
  • our Javadoc API docs [grab the whole zip file] (see also these API docs [grab the whole zip file] that contain private class members).
  • a description of our build systems that tells you how to compile, run, and cut releases for our tools.
  • a design document concerning the Tibetan Format Converter.

Here are some links to tools of interest:

  • Jskad uses an Ant build system.  See Apache Ant or jump right to the documentation for the tasks of which we make use.
  • Our unit tests use the JUnit framework.  Javadocs are here (or jump directly here for TestCase's docs).
  • In our Java(TM) code, we load some classes at run-time.  To understand the mechanisms behind this--Class.forName(String) and thread context class loaders, etc.--read this JavaGeeks white paper.
  • Our Java code uses XML. We use JDOM, Xalan (XSLT), and Xerces.
  • We use the Ant Task Suite provided by Venus Application Publisher (Vamp) to make putting releases up via Java Web Start less painful. See VampHQ.

Related Projects

Below are links to some Java text editors or word processors that we might learn from or integrate with. This list is by no means comprehensive. I started my search from SF.net's software map, by the way (and see this corner of the map, too), and haven't yet done anything more.

  • The GPL'ed VietPad, written in Java, (for entering Vietnamese language in Unicode-8 or -16) may teach us something, though integration doesn't seem useful (because it is primitive) and would require changing our license to the GPL.
  • The GPL'ed JEdit bills itself as a "programmer's text editor", but it supports Unicode, is 100% Java, is very popular, and is extremely extensible, making integration while keeping our non-GPL-compatible license a possibility. Definitely worth a second look.
  • The GPL'ed Yudit is an X11 application that supports Unicode in a big way. Their website has many links of interest to us as we ponder Unicode compatibility.
  • The GPL'ed/LGPL'ed Syggrafeus/Rosetta Stone Library is a Java library for Unicode multi-lingual something-or-other.
  • The GPL'ed STED is a Java transliterator for many languages.
  • The GPL'ed Words of Magic is a very simple word processor for English and Dutch.
  • The GPL'ed JGloss says this about itself: "JGloss lets you import Japanese text documents and add reading and translation annotations for words, both automatically during import, and manually. It is written in Java."

Finally, the EpiDoc project (hosted by SourceForge) does not yet have any tools up, but the project's goals are similar in many ways to the THDL's, and they list their programming language as Java. The blurb of interest: "The EpiDoc Collaborative is developing a software and hardware-independent digital publication and interchange specification for scholarly and educational editions of inscribed and incised texts in Greek, Latin and other ancient languages".

Please e-mail us your comments about this page.

The THDL Tools project is generously hosted by: SourceForge Logo