A lightweight markup language is a markup language designed to have a minimal syntax and to be easier for humans to read than traditional markup languages. Some, like asciidoc and the language of this very wiki, have comparatively many features, while others, e.g., that of the Thunderbird email client, which interprets email messages following a convention, are more rudimentary.
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 markup 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 users define their own markup language, like the library included in tkoutline, or uses a markup language defined by the tool author, like "put-text" used in tkcvs, which defined a few tags including "<h1>", "<cmp>" and so forth. There isn't a tool that uses a well-recognized lightweight markup language, like asciidoc or Textile .
A well-recognized lightweight markup language usually has many tools designed to process it, thus it is easier to compose a document in the language and re-use it, e.g. in both "Help" menu and in Unix man page. Thanks to a 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. |