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

FreeBSD Manual Pages

  
 
  

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

NAME
       markdown	-- process Markdown documents

LIBRARY
       Markdown	(libmarkdown, -lmarkdown)

SYNOPSIS
       #include	<mkdio.h>

       MMIOT
       *mkd_in(FILE *input, mkd_flag_t *flags);

       MMIOT
       *mkd_string(char	*string, int size, mkd_flag_t *flags);

       int
       markdown(MMIOT *doc, FILE *output, mkd_flag_t *flags);

DESCRIPTION
       These  functions	 convert  Markdown  documents  and  strings into HTML.
       markdown() processes an entire document,	while mkd_text()  processes  a
       single string.

       To  process  a  file, you pass a	FILE* to mkd_in(), and if it returns a
       nonzero value you pass that in to markdown(),  which  then  writes  the
       converted  document  to the specified FILE*.  If	your input has already
       been written into a string (generated  input  or	 a  file  opened  with
       mmap(2))	 you  can feed that string to mkd_string() and pass its	return
       value to	markdown.()

       Markdown() holds	the flag values	in an opaque flag blob that  you  need
       to initialize and populate before using:
       mkd_flag_t* mkd_flag_t()
			    creates  a	mkd_flag_t  structure  and  returns  a
			    pointer to it.
       mkd_free_flags(mkd_flag_t *)
			    deletes a mkd_flag_t structure when	you  are  fin-
			    ished with it.
       mkd_flag_t* mkd_copy_flags(mkd_flag_t*)
			    Makes  a copy of a flag blob and returns a pointer
			    to it.
       mkd_flag_isset(mkd_flag_t *, int)
			    tells you if a specific flag is set
       mkd_set_flag_num(mkd_flag_t *, int)
			    Sets a specified flag
       mkd_clr_flag_num(mkd_flag_t *, int)
			    Clears a specified flag

       The following flags are currently accepted:
       MKD_NOLINKS	    don't do link processing, block <a>	tags
       MKD_NOIMAGE	    don't do image processing, block <img>
       MKD_NOPANTS	    don't run smartypants()
       MKD_NOHTML	    don't allow	raw html through AT ALL
       MKD_NORMAL_LISTITEM  disable github-style checkbox lists
       MKD_TAGTEXT	    process text inside	an html	tag
       MKD_NO_EXT	    don't allow	pseudo-protocols
       MKD_EXPLICITLIST	    don't combine numbered/bulletted lists
       MKD_CDATA	    generate code for xml ![CDATA[...]]
       MKD_NOSUPERSCRIPT    no A^B
       MKD_STRICT	    conform to Markdown	 standard  as  implemented  in
			    Markdown.pl
       MKD_NOTABLES	    disallow tables
       MKD_NOSTRIKETHROUGH  forbid ~~strikethrough~~
       MKD_1_COMPAT	    compatibility with MarkdownTest_1.0
       MKD_TOC		    do table-of-contents processing
       MKD_AUTOLINK	    make http://foo.com	link even without <>s
       MKD_NOHEADER	    don't process header blocks
       MKD_TABSTOP	    expand tabs	to 4 spaces
       MKD_SAFELINK	    paranoid check for link protocol
       MKD_NODIVQUOTE	    forbid >%class% blocks
       MKD_NOALPHALIST	    forbid alphabetic lists
       MKD_EXTRA_FOOTNOTE   enable markdown extra-style	footnotes
       MKD_NOSTYLE	    don't extract <style> blocks
       MKD_DLDISCOUNT	    enable discount-style definition lists
       MKD_DLEXTRA	    enable extra-style definition lists
       MKD_FENCEDCODE	    enabled fenced code	blocks
       MKD_IDANCHOR	    use	id= anchors for	TOC links
       MKD_GITHUBTAGS	    allow dash and underscore in element names
       MKD_URLENCODEDANCHOR
			    urlencode  non-identifier chars instead of replac-
			    ing	with dots
       MKD_LATEX	    handle embedded LaTeX escapes
       MKD_ALT_AS_TITLE	    use	alt text as the	title if no title is listed
       MKD_EXTENDED_ATTR    allow extended attribute suffixes

RETURN VALUES
       markdown() returns 0 on	success,  1  on	 failure.   The	 mkd_in()  and
       mkd_string() functions return a MMIOT* on success, null on failure.

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

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

BUGS
       Error handling is minimal at best.

       The MMIOT created by mkd_string() is deleted by the markdown function.

Mastodon		       December	20, 2007		   MARKDOWN(3)

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

home | help