Provided by: liblowdown-dev_2.0.2-2_amd64 bug

NAME

       lowdown_nroff_rndr — render Markdown into roff

LIBRARY

       library “liblowdown”

SYNOPSIS

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

       int
       lowdown_nroff_rndr(struct lowdown_buf *out, void *arg, const struct lowdown_node *n);

DESCRIPTION

       Renders  a  node tree n created by lowdown_doc_parse(3) or lowdown_diff(3) using the roff renderer arg as
       returned by lowdown_nroff_new(3).  The output is written into out, which must be initialised and freed by
       the caller.

       The output consists of roff output using the ms or man macro packages.

RETURN VALUES

       Returns zero on failure to allocate memory, non-zero on success.

EXAMPLES

       The following parses b of length bsz and outputs in groff_ms(7) format.

             struct lowdown_buf *out;
             struct lowdown_doc *doc;
             struct lowdown_node *n;
             void *rndr;

             if ((doc = lowdown_doc_new(NULL)) == NULL)
                     err(1, NULL);
             if ((n = lowdown_doc_parse(doc, NULL, b, bsz, NULL)) == NULL)
                     err(1, NULL);
             if ((out = lowdown_buf_new(256)) == NULL)
                     err(1, NULL);
             if ((rndr = lowdown_nroff_new(NULL)) == NULL)
                     err(1, NULL);
             if (!lowdown_nroff_rndr(out, rndr, n))
                     err(1, NULL);

             fwrite(out->data, 1, out->size, stdout);

             lowdown_nroff_free(rndr);
             lowdown_buf_free(out);
             lowdown_node_free(n);
             lowdown_doc_free(doc);

SEE ALSO

       lowdown(3), lowdown_nroff_free(3), lowdown_nroff_new(3)

       This uses both the original troff man macros for Version 7 AT&T UNIX, defined in man(7), and the  man-ext
       groff extensions.  Both are implemented in mandoc.

       The  troff  ms  macros are defined in groff_ms(7), with the mspdf groff extensions described in "Portable
       Document Format Publishing with GNU Troff" by Keith Marshall.  Neither are implemented in mandoc.

Debian                                             $Mdocdate$                              LOWDOWN_NROFF_RNDR(3)