libunibreak is an implementation of the line breaking and word breaking algorithms as described in Unicode Standard Annex 14 and Unicode Standard Annex 29. It is a superset of, and supersedes, liblinebreak. It is designed to be used in a generic text renderer. FBReader is one real-world example.
OOoPy is a Python library for modifying OpenOffice.org documents. It provides a set of transformations on the OOo XML format using the ElementTree XML Library. Transformations included are a mail merge application and the concatenation of documents with formatting intact. The framework supports easy creation of new transformations.
FreeMarker is a template engine that was originally designed so that servlet-based applications could keep graphical design separate from application logic. The templates provide an easy and highly flexible way to generate any kind of text output (HTML, PostScript, TeX, source code, etc.) from a variety of data sources such as Java objects, Jython objects, XML object models, and more.
GNU Source-highlight produces a document with syntax highlighting when given a source file. It handles many languages, e.g., Java, C/C++, Prolog, Perl, PHP3, Python, Flex, HTML, and other formats, e.g., ChangeLog and log files, as source languages and HTML, XHTML, DocBook, ANSI color escapes, LaTeX, and Texinfo as output formats. Input and output formats can be specified with a regular expression-oriented syntax.
otl is a text processor for generating markup from readable lightweight markup. Much of both the input and output formats can be customized. HTML output is bundled as an example. otl supports complex structures such as nested ordered and unordered lists, headers and footers, and tables.
ICU provides a Unicode implementation, with functions for formatting numbers, dates, times, and currencies (according to locale conventions, transliteration, and parsing text in those formats). It provides flexible patterns for formatting messages, where the pattern determines the order of the variable parts of the messages, and the format for each of those variables. These patterns can be stored in resource files for translation to different languages. Included are more than 100 codepage converters for interaction with non-unicode systems.
LEPL is a recursive descent parser library written in Python. It is based on parser combinator libraries popular in functional programming, but also exploits Python language features. Operators provide a friendly syntax, and the consistent use of generators supports full backtracking and resource management. Backtracking implies that a wide variety of grammars are supported; appropriate memoisation ensures that even left-recursive grammars terminate.
edit-on Pro is a cross-platform, in-browser, WYSIWYG editor Java applet which enables XHTML content authoring with XML markup. The editor is compact, powerful and requires no special libraries or client plugins. It includes CSS support, table editing, a spelling checker, multi-language support, and features an API that allows full customisation and seamless integration into Web-based applications. It perfectly complements content management systems, e-learning, knowledge management systems, and CRM. A free trial version is available for download and includes complete developer samples and a comprehensive integration manual.