FreeBSD Manual Pages
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)
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO | BUGS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=markdown&sektion=3&manpath=FreeBSD+Ports+15.0>
