Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LOWDOWN_HTML_RNDR(3)   FreeBSD Library Functions Manual	  LOWDOWN_HTML_RNDR(3)

NAME
     lowdown_html_rndr -- render Markdown into HTML

LIBRARY
     library "liblowdown"

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

     int
     lowdown_html_rndr(struct lowdown_buf *out,	struct lowdown_metaq *mq,
	 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 HTML renderer arg as returned by	lowdown_html_new(3).  The out-
     put is written into out, which must be initialised	and freed by the
     caller.

     If	mq is not NULL,	it is filled with any metadata as parsed.  It must be
     initialised and its contents freed	with lowdown_metaq_free(3).

     The output	consists of a UTF-8 HTML5 document.

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

EXAMPLES
     The following assumes the the string buf of length	bsz consists of	Mark-
     down content.

	   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, buf, bsz)) == NULL)
	     err(1, NULL);
	   if ((out = lowdown_buf_new(256)) == NULL)
	     err(1, NULL);
	   if ((rndr = lowdown_html_new(NULL)) == NULL)
	     err(1, NULL);
	   if (!lowdown_html_rndr(out, NULL, rndr, n))
	     err(1, NULL);

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

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

SEE ALSO
     lowdown(3), lowdown_html_free(3), lowdown_html_new(3)

STANDARDS
     The referenced HTML5 standard is HTML5.2: https://www.w3.org/TR/html52
     Output is compatible with prior HTML5 standards.

FreeBSD	13.0		       February	8, 2021			  FreeBSD 13.0

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | EXAMPLES | SEE ALSO | STANDARDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=lowdown_html_rndr&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help