Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: 0.5.1
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 56 lines (36 sloc) 1.779 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55

UI.Command is a Haskell library for building commandline programs which have subcommands.

This is common with revision control systems (cvs, svn, darcs, git etc.)

UI.Command includes the following features:

Automatic generation of help text
Generation of manual pages
Examples
Checking of example syntax

When you use a GUI program, you expect consistent behaviour:

* Title
* Menus listing available options
* Help

Many GUI toolkits exist to make this task easier.

UI.Command is a toolkit for developing commandline programs with consistent behaviour.

It is useful for modern commandline programs to have consistent behavior:

* Print their name and usage information
* Explain options
* Provide clear, consistent documentation in various formats
* Provide contact details for submitting bug reports and feature requests

There are many good reasons for developing a commandline version of your program:

* Accessibility: Many blind users prefer to use a commandline version of software if available
* Automation: Commandline tools can be easily used in scripts. You may not think it is useful
to automate your software, but your power users might!

If you have developed a library, UI.Command provides a useful framework for demonstrating the
library features.

Developers
----------

ui-command is maintained in git at http://github.com/kfish/ui-command.git

A list of outstanding tasks is maintained in the TODO file of this source
distribution. When implementing anything listed in this file, please update
it by deleting that entry, and include that as part of the patch or commit
that implements the fix.

Contact
-------

For technical and other queries, please contact the author:

Conrad Parker <conrad@metadecks.org>
(kfish on #haskell on Freenode).
Something went wrong with that request. Please try again.