There exists many lightweight markup languages for easy creation or display of rich content; for example, those with many features, like asciidoc, and the language of this very wiki, and some have only a few features, like that of the Thunderbird email client which interprets email messages following a convention.
This page's purpose is to collect and categorize libraries that offer some lightweight markup language feature. Sometimes it is difficult to tell a lightweight markup language from a simplified use of a heavier markup language, like HTML. Thus the reader of this page might be interested in the page HTML widgets too, where HTML is the most commonly used markup language, but not a lightweight mark up language.
Many other development community, like python, already uses a lightweight markup language for software documents. Typical uses are
In former case, there should be a widget to display the markup. In latter case, the document should be able to be translated to HTML.
A WYSIWYG editor can save its content in a lightweight mark up language. In this case lightweight markup language is transparent to the users. This case is seen as GUI bbcode editor that is sometimes used on the web, but no implementation in tcl yet have been seen.
This case is frequently seen on online forums, like BBcode, and in wiki, like in tclerswiki. End user is supposed to learn and compose using this wiki language.
So far, most TCL lightweight markup language tools either require user define their own markup language, like the library included in tkoutline, or uses a mark up language defined by the tool author, like "put-text" used in tkcvs which defined a few tags including "<h1>", "<cmp>" and so like. There isn't a tool which uses a well-recognized lightweight markup language, like asciidoc or Textile.
A well recognized lightweight markup language usually have many tools designed to process it, thus it is easier to compose document in the language and re-use it, e.g. in both "Help" menu and in Unix man page. Thanks to lack of such tools in tcl, at the moment, documents already written in a well-recognized markup language cannot be displayed in tcl widgets directly.
Library | markup language | Latest release | I | L | T | H | List | as widget | as CGI | sloc | Description |
---|---|---|---|---|---|---|---|---|---|---|---|
tkoutline | n.a. see description. | 2008 | N | N | N | N | Nested | Edit and View | No | Developers who make use of it must define their own markup language. See also http://tkoutline.sourceforge.net/wiki/41.html and http://tkoutline.sourceforge.net/wiki/39.html for information on a WYSIWYG wiki syntax highlighting library being developed for the tkoutline application. | |
kiwi | kiwi | 2001 | Y | N | Edit and View | ||||||
htext family | their own | 2008 | Y | Y | N | N | 1-Level | View only | No | <1000 | htext, htext3, htext2, htext2.tcl, A little hypertext system are all code snippet widget with same origin, but the purpose of the derive and advantage / disadvantage of each version is quiet confusing. A reader is supposed to read the full discussion of these widgets and source code themselves to find out features, problems, to understand its own markup language, and to find version information of these products. Although many pages claim the others are the newest, e.g. htext and A little hypertext system both have in their paragraph that the other page is the latest, there is a clue to find out which source code is probably newer by look at the modification date of the wiki page, but any effort to resort these pages to be clearer would break this last clue of who is latest version. Despite its name "hyptertext" suggesting it is a hypertext markup language HTML widget, in fact it is a lightweight markup language widget. It cannot display HTML markup. |