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

FreeBSD Manual Pages

  
 
  

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

NAME
     mkd_functions -- access and process Markdown documents.

LIBRARY
     Markdown (libmarkdown, -lmarkdown)

SYNOPSIS
     #include <mkdio.h>

     int
     mkd_compile(MMIOT *document, int flags);

     int
     mkd_css(MMIOT *document, char **doc);

     int
     mkd_generatecss(MMIOT *document, FILE *output);

     int
     mkd_document(MMIOT	*document, char	**doc);

     int
     mkd_generatehtml(MMIOT *document, FILE *output);

     int
     mkd_xhtmlpage(MMIOT *document, int	flags, FILE *output);

     int
     mkd_toc(MMIOT *document, char **doc);

     void
     mkd_generatetoc(MMIOT *document, FILE *output);

     void
     mkd_cleanup(MMIOT*);

     char*
     mkd_doc_title(MMIOT*);

     char*
     mkd_doc_author(MMIOT*);

     char*
     mkd_doc_date(MMIOT*);

DESCRIPTION
     The markdown format supported in this implementation includes Pandoc-
     style header and inline _style_ blocks, and the standard markdown(3)
     functions do not provide access to	the data provided by either of those
     extensions.  These	functions give you access to that data,	plus they pro-
     vide a finer-grained way of converting Markdown documents into HTML.

     Given a MMIOT* generated by mkd_in() or mkd_string(), mkd_compile() com-
     piles the document	into _style_, Pandoc, and html sections.

     Once compiled, the	document can be	examined and written by	the mkd_css(),
     mkd_document(), mkd_generatecss(),	mkd_generatehtml(), mkd_generatetoc(),
     mkd_toc(),	mkd_xhtmlpage(), mkd_doc_title(), mkd_doc_author(), and
     mkd_doc_date() functions.

     mkd_css() allocates a string and populates	it with	any <style> sections
     provided in the document, mkd_generatecss() writes	any <style> sections
     to	the output, mkd_document() points text to the text of the document and
     returns the size of the document, mkd_generatehtml() writes the rest of
     the document to the output, and mkd_doc_title(), mkd_doc_author(),
     mkd_doc_date() are	used to	read the contents of a Pandoc header, if any.

     mkd_xhtmlpage() writes a xhtml page containing the	document.  The regular
     set of flags can be passed.

     mkd_toc() writes a	document outline, in the form of a collection of
     nested lists with links to	each header in the document, into a string al-
     located with malloc(), and	returns	the size.

     mkd_generatetoc() is like mkd_toc(), except that it writes	the document
     outline to	the given FILE*	argument.

     mkd_cleanup() deletes a MMIOT* after processing is	done.

     mkd_compile() accepts the same flags that markdown() and mkd_string() do;
     MKD_NOIMAGE	  Do not process `![]' and remove _img_	tags from the
			  output.
     MKD_NOLINKS	  Do not process `[]' and remove _a_ tags from the
			  output.
     MKD_NOPANTS	  Do not do Smartypants-style mangling of quotes,
			  dashes, or ellipses.
     MKD_TAGTEXT	  Process the input as if you were inside a html tag.
			  This means that no html tags will be generated, and
			  mkd_compile()	will attempt to	escape anything	that
			  might	terribly confuse a web browser.
     MKD_NO_EXT		  Do not process any markdown pseudo-protocols when
			  handing [][] links.
     MKD_NOHEADER	  Do not attempt to parse any Pandoc-style headers.
     MKD_TOC		  Label	all headers for	use with the mkd_generatetoc()
			  function.
     MKD_1_COMPAT	  MarkdownTest_1.0 compatibility flag; trim trailing
			  spaces from the first	line of	code blocks and	dis-
			  able implicit	reference links.
     MKD_NOSTRIKETHROUGH  Disable strikethrough	support.

RETURN VALUES
     The function mkd_compile()	returns	1 in the case of success, or 0 if the
     document is already compiled.  The	function mkd_generatecss() returns the
     number of bytes written in	the case of success, or	EOF if an error	oc-
     curred.  The function mkd_generatehtml() returns 0	on success, -1 on
     failure.

SEE ALSO
     markdown(1), markdown(3), mkd-line(3), markdown(7), mkd-extensions(7),
     mmap(2).

     http://daringfireball.net/projects/markdown/syntax

BUGS
     Error handling is minimal at best.

Mastodon		       January 18, 2008			      Mastodon

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO | BUGS

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

home | help