libcmml  0.9.1
Macros | Functions
cmml-fortune.c File Reference
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <ctype.h>
#include <string.h>
#include <unistd.h>
#include <cmml.h>

Macros

#define DEFAULT_DURATION   "00:30"
 
#define DEFAULT_ENCODING   "UTF-8"
 
#define DEFAULT_SHORT_COMMAND   "fortune -s -n 80"
 
#define DEFAULT_LONG_COMMAND   "fortune -l"
 
#define BUFSIZE   10000
 

Functions

static void PrintUsage (char *prog)
 
static char * get_fortune (char *command)
 
int main (int argc, char *argv[])
 

Detailed Description

cmml-fortune: generates a valid CMML document with random content.

Usage: cmml-fortune [options]
Generate a random CMML file using an external program
to provide text (fortune cookies by default).
 
Possible options:
  -d timespec, --duration timespec
                 Specify the duration of the generated CMML file
                 ('00:30' by default)
  -e encoding, --encoding encoding
                 Specify the encoding of the generated CMML file
                 ('UTF-8' by default)
 
  -o filename, --output filename
                 Specify the output filename. The file is written
                 to standard output by default.
 
  -s command,  --short-command command
                 Specify the command to use to generate short text
                 for the title and anchors ('fortune -s -n 80' by default)
  -l command,  --long-command command
                 Specify the command to use to generate long text
                 for descriptions ('fortune -l' by default)
  -h, --help     Display this help and exit
  -v, --version  Display version information and exit

Macro Definition Documentation

#define DEFAULT_DURATION   "00:30"

DEFAULT_DURATION: default duration of created CMML file

Referenced by main(), and PrintUsage().

#define DEFAULT_ENCODING   "UTF-8"

DEFAULT_ENCODING: default encoding format of created CMML file

Referenced by main(), and PrintUsage().

#define DEFAULT_SHORT_COMMAND   "fortune -s -n 80"

DEFAULT_SHORT_COMMAND: default command to create short descriptions

Referenced by main(), and PrintUsage().

#define DEFAULT_LONG_COMMAND   "fortune -l"

DEFAULT_LONG_COMMAND: default command to create long descriptions

Referenced by main(), and PrintUsage().

#define BUFSIZE   10000

BUFSIZE: default buffer size for printing

Referenced by get_fortune(), and main().

Function Documentation

static void PrintUsage ( char *  prog)
static

PrintUsage: prints out help on how to use this program

Parameters
progthe program's name

References DEFAULT_DURATION, DEFAULT_ENCODING, DEFAULT_LONG_COMMAND, and DEFAULT_SHORT_COMMAND.

Referenced by main().

static char* get_fortune ( char *  command)
static

get_fortune: generates random text using the given command

Parameters
commandthe command to use to generate text
Returns
the generated text

References BUFSIZE.

Referenced by main().

int main ( int  argc,
char *  argv[] 
)