SYNOPSIS

caml2html [Options...] files...

DESCRIPTION

caml2html pretty prints OCaml source code as html or LaTex files. The pretty printing uses colors and adds tool\(hytips with type annotations if the corresponding .annot file is present.

Without file arguments, caml2html reads from standard input. By default it writes to standard output.

OPTIONS

-annotfilter {innermost|outermost}

choose whether innermost or outermost type annotations should be used (default: innermost)

-noannot

do not insert type annotations as read from .annot files (HTML output only)

-ln

add line number at the beginning of each line

-hc

comments are treated as raw HTML or LaTeX code (no newlines inside of tags)

-t

add a title to the HTML page

-body

output only document's body, for inclusion into an existing document (see also -make-css and -make-latex-defs)

-nf

do not add footnotes to the HTML page

-inhead

use default styling and place it in the <head> section of the document (default when applicable)

-charset <charset>

specify charset to use (default: iso-8859-1)

-css

use separate CSS style file style.css

-cssurl <URL>

use URL as CSS

-inline

use inline styling (HTML only, default fallback if -inhead is not applicable)

-ie7

drop support for type annotations on Internet Explorer 6 and older

-notab

do not replace tabs by spaces

-tab <integer>

replace tab by n spaces (default = 8)

-d <directory>

generate files in directory dir, rather than in current directory

-o <filename>

output file

-make-css <filename>

create CSS file with default color definitions and exit

-ext <NAME:CMD>

use the given external command CMD to handle comments that start with (*NAME. NAME must be a lowercase identifier. See EXAMPLES below.

-latex

output LaTeX code instead of HTML.

-make-latex-defs <filename>

create a file containing the default LaTeX color definitions and matching highlighting commands, and exit. \usepackage{alltt,color} is not included.

-v

print version number to stdout and exit

-help | --help

Display options and exit.

EXAMPLES

Process many files into a single file:

caml2html -o result.html *.mli *.ml

Process many files, and create one HTML page for each file:

caml2html *.ml

You can use HTML in the comments of the source file, for instance, to insert hyperlinks:

(* This is file1.ml.

   <a href="#file2.ml">This is a link to file2.ml</a>. *)

Note, that one HTML tag cannot span over several lines, and that the ordinary characters <, > and & must be written as <, > and &.

Custom comment handlers To implement an include directive for comments, use

caml2html -ext "include: xargs cat" example.ml

Then

(*include i.html *) let f x = 2 * x + 1

produces

... contens of i.html ... let f x = 2 * x + 1

as result.

RELATED TO caml2html…

The caml2html web page,

http://mjambon.com/caml2html.html

Some more examples are on

/usr/share/doc/caml2html/caml2html.html

AUTHOR

This manual page was written by Sylvain Le Gall <[email protected]> and Hendrik Tews <[email protected]>, specifically for the Debian project (and may be used by others).