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

FreeBSD Manual Pages

  
 
  

home | help
LOWDOWN_HTML_NEW(3)	    Library Functions Manual	   LOWDOWN_HTML_NEW(3)

NAME
       lowdown_html_new	-- allocate a Markdown HTML renderer

LIBRARY
       library "liblowdown"

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

       void *
       lowdown_html_new(const struct lowdown_opts *opts);

DESCRIPTION
       Allocates an HTML5 renderer using opts->flags, or zero if opts is NULL.
       This  field  is	documented in lowdown(3).  The returned	pointer	may be
       used with multiple invocations  of  lowdown_html_rndr(3)	 and  must  be
       freed with lowdown_html_free(3).

       The   bits   recognised	 in   opts->oflags   are   LOWDOWN_HTML_OWASP,
       LOWDOWN_HTML_NUM_ENT,  LOWDOWN_HTML_HEAD_IDS,   LOWDOWN_HTML_HARD_WRAP,
       LOWDOWN_HTML_SKIP_HTML,	LOWDOWN_HTML_ESCAPE, LOWDOWN_HTML_CALLOUT_MDN,
       LOWDOWN_HTML_CALLOUT_GFM, and LOWDOWN_STANDALONE.

RETURN VALUES
       Returns a pointer to the	renderer or NULL on memory failure.   The  re-
       turned pointer must be freed with lowdown_html_free(3).

EXAMPLES
       The following parses b of length	bsz and	outputs	in HTML	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_html_new(NULL)) == NULL)
		     err(1, NULL);
	     if	(!lowdown_html_rndr(out, 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_rndr(3)

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

FreeBSD	Ports 14.quarterly	  $Mdocdate$		   LOWDOWN_HTML_NEW(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=lowdown_html_new&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help