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

  
 
  

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

NAME
     lowdown_file -- parse a Markdown file into formatted output

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  ty-
     pography.

	   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)

FreeBSD ports 15.quarterly	   $Mdocdate$			 LOWDOWN_FILE(3)

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

home | help