\documentclass{article}
\usepackage{ulem}
\usepackage{graphicx}
\usepackage{hyperref}
\pagestyle{headings}
\begin{document}
+Horde\_Cli\_Application

"Library for creating command line applications" - A kernel to build CLI applications from Horde libraries.

\texttt{Horde\_Argv} is used to define parsers for commandline arguments given to a program. It bisects a command line into positional arguments and options: shorthand (-h) or long form (--help), flags or typed values (--format=xml) and supports printing out usage help or validating commandlines against value constraints.<br />
\texttt{Horde\_Cli} provides utilities for input and output on a text terminal command line, using text colors and background colors where available or falling back to simple text, wrapping to screen width etc.<br />
\texttt{Horde\_Cli\_Modular} provides tools to bundle commandline parsing and input/output into reusable, pluggable modules that each represent one command with appropriate switches and may have sub commands.

Integrating these utilities requires repetitive programming work. Horde\_Cli\_Application can facilitate putting the different parts together to an actual application that does something.

++Introduction

++Structure

+++Setup

++Writing simple CLIs with cli\_application

++Writing multi-command CLIs

++Examples

\end{document}
