Skip to content
zacmarco edited this page Apr 8, 2020 · 6 revisions

Climinal is a SW library that allows you to implement multi-context CLIs in an extremely easy way.

Some popular features supported by Climinal are:

  • multi-context environment

  • XML or JSON based structure definition

  • from simple and flat to complex multi-context CLIs

  • subcommands handling

  • history handling and commands recalling

  • context-aware auto-completion

  • automatic generation of application code

  • commands implementation though user callbacks

  • input/output stream redirection

  • runtime configuration

  • special keys actions

  • VT100 keys compliant

  • VERY easy to use

Climinal has been written with the following criteria to allow its usage in a vast variety of environments:

  • code is fully re-entrant

  • tested on multi-process, multi-thread and generic multi-task environments (even on OSes with no memory protection between tasks)

  • very little usage of POSIX library, to allow its usage on not fully POSIX OSes

  • code is meant to be as much optimized as possible. Very little usage of dynamic memory allocation

  • code is written in ANSI C, but ready to be used in C++ environments as well

  • several examples available in Climinal tree

Climinal project was previously known as CLIck (available on sourceforge). The old CLIck library is no longer maintained, all the development has been moved into THIS project

This Wiki is "Work In Progress". Please be patient.

Clone this wiki locally