THEME(1) General Commands Manual THEME(1)

themecreate a web page from a template file

theme [-C option-flags] [-c options] [-d root] [-E] [-f] [-o file] [-p pagename] [-t template] [-V] [textfile]

The theme utility takes a markdown(7)-formatted textfile (or stdin if not specified,) compiles it, and combines it with a (page.theme by default) to produce a web page. If a path to the template is not specified, theme looks for page.theme in the current directory, then each parent directory up to the document root (set with -d or, if unset, the of the system.) If page.theme is found, theme copies it to the output, looking for html tags and processing the embedded action as appropriate.

theme processes the following actions:

Prints the author name(s) from the mkd_doc_author(3) function.
Prints the formatted markdown(7) input file.
Prints the date returned by mkd_doc_date(3) or, if none, the date the input file was last modified.
Prints the directory part of the pagename
Prints the contents of file. Markdown(7) translation will be done on this file.
The filename part of the pagename.
Print any stylesheets (see mkd-extensions(7)) found in the input file.
Print the title returned by mkd_doc_title(3), or, if that does not exist, the source filename.
Print the version of discount(7) that this copy of theme was compiled with.

If input is coming from a file and the output was not set with the -o option, writes the output to file-sans-text.html (if) file has a .text suffix, that will be stripped off and replaced with .html; otherwise a .html will be appended to the end of the filename.)

The options are as follows:

Set the to root
Normally theme will not expand <?theme body?> or <?theme toc?> in the <head> section, or <?theme style?> in the <body> section, but the -E option overrides this and allows expansions everywhere.
Forcibly overwrite existing html files.
Write the output to filename.
Set the pagename to path.
Use filename as the template file.

The theme utility exits 0 on success, and >0 if an error occurs.

markdown(1), markdown(3), markdown(7), mkd-extensions(7).

David Parsons (

January 23, 2008 MASTODON