Provided by: liblowdown-dev_1.1.0-1_amd64 bug

NAME

       lowdown_file — parse a Markdown file into formatted output

LIBRARY

       library “liblowdown”

SYNOPSIS

       #include <sys/queue.h>
       #include <stdio.h>
       #include <lowdown.h>

       int
       lowdown_file(const struct lowdown_opts *opts,         FILE *in,         char **ret,        size_t *retsz,
           struct lowdown_metaq *metaq);

DESCRIPTION

       Parses a lowdown(5) file stream in into an output buffer ret of size  retsz  according  to  configuration
       opts.   The output format is specified by opts->type.  If LOWDOWN_METADATA is set in opts->feat and metaq
       is not NULL, metaq is filled with metadata rendered in the given output format.

       On success, the caller is responsible for freeing ret and metaq.

RETURN VALUES

       Returns zero on failure, non-zero on success.  On failure, the values pointed  to  by  res  and  rsz  are
       undefined.

EXAMPLES

       The  following  parses standard input into a standalone HTML5 document.  It enables footnotes, autolinks,
       tables, superscript, strikethrough, fenced  codeblocks,  commonmark,  definition  lists,  extended  image
       attributes, and metadata processing.  The output passes through raw HTML and has smart typography.

             struct lowdown_opts opts;
             char *buf;
             size_t bufsz;

             memset(&opts, 0, sizeof(struct lowdown_opts));
             opts.type = LOWDOWN_HTML;
             opts.feat = LOWDOWN_FOOTNOTES |
                     LOWDOWN_AUTOLINK |
                     LOWDOWN_TABLES |
                     LOWDOWN_SUPER |
                     LOWDOWN_STRIKE |
                     LOWDOWN_FENCED |
                     LOWDOWN_COMMONMARK |
                     LOWDOWN_DEFLIST |
                     LOWDOWN_IMG_EXT |
                     LOWDOWN_METADATA;
             opts.oflags = LOWDOWN_HTML_HEAD_IDS |
                     LOWDOWN_HTML_NUM_ENT |
                     LOWDOWN_HTML_OWASP |
                     LOWDOWN_SMARTY |
                     LOWDOWN_STANDALONE;
             if (!lowdown_file(&opts, stdin, &buf, &bufsz, NULL))
                     errx(1, "lowdown_file");
             fwrite(buf, 1, bufsz, stdout);
             free(buf);

SEE ALSO

       lowdown(3), lowdown_metaq_free(3)

Debian                                             $Mdocdate$                                    LOWDOWN_FILE(3)