Ada Wiki is a small library that provides a Wiki engine supporting several Wiki syntaxes.
The library allows to:
- Parse a wiki text such as Markdown, Mediawiki, Creole, PhpBB, Dotclear and Google Code,
- Parse HTML content in embedded wiki text,
- Filter out the wiki, HTML or text through customizable filters,
- Render the wiki text in HTML, text or another wiki format.
The Ada Wiki library is used by Ada Web Application for the implementation of the blog and wiki online plugins.
Version 1.4.0 - Aug 2022
- Add support for Textile markup language
- Rewrote the Markdown parser to better follow the Common Mark Specification
To use Ada Wiki library, configure as follows:
By default the configure is setup to use the Ada Utility Library. You can disable that by using the 'with-ada-util=no' configure option. When disabled, the build will use some locally imported files (in src/util) but the unit tests will not be compiled.
./configure --with-ada-util=no make
The unit tests are built and executed with:
For the installation, use the following command:
Build without configure
Since the integration with Alire, you can build without running configure. However, there are a number of checks and dependencies which are not verified. The following assumes that you have installed the Ada Utility Library.
For a simple build, use:
gprbuild -aP.alire -Pwikiada -p
You can then use
gprinstall for the installation:
gprinstall -aP.alire -Pwikiada -p
A first example shows how to render a Wiki text into HTML or text. Another one takes some HTML content and render a Wiki text in one of the supported Wiki format. To build the samples, use the following command:
To import a HTML content and produce a Wiki text, use the following:
bin/import -M https://en.wikibooks.org/wiki/Ada_Programming > content.wiki
And to render the Wiki text into HTML use:
bin/render -M content.wiki
The 'words' samples illustrates the use of filters to collect information stored in the documents. It collects words and links and report their usage in the document. The next command reports the links used in the document:
bin/words -l -M content.wiki