markdown(3tcl) Markdown to HTML Converter markdown(3tcl)
______________________________________________________________________________
NAME
markdown - Converts Markdown text to HTML
SYNOPSIS
package require Tcl 8.5
package require Markdown 1.1.1
package require textutil ?0.8?
::Markdown::convert markdown
::Markdown::register langspec converter
::Markdown::get_lang_counter
::Markdown::reset_lang_counter
______________________________________________________________________________
DESCRIPTION
The package Markdown provides a command to convert Markdown annotated
text into HMTL.
::Markdown::convert markdown
This command takes in a block of Markdown text, and returns a
block of HTML.
The converter supports two types of syntax highlighting for
fenced code blocks: highlighting via a registered converter (see
::Markdown::register), or pure JavaScript highlighting, e.g. via
"highlight.js", where the language specifier used in the markup
is set as CSS class of the "code" element in the returned
markup.
::Markdown::register langspec converter
Register a language specific converter for prettifying a code
block (e.g. syntax highlighting). Markdown supports fenced code
blocks with an optional language specifier (e.g. "tcl"). When
the markdown parser processes such a code block and a converter
for the specified langspec is registered, the converter is
called with the raw code block as argument. The converter is
supposed to return the markup of the code block as result. The
specified converter can be an arbitrary Tcl command, the raw
text block is added as last argument upon invocation.
::Markdown::get_lang_counter
Return a dict of language specifier and number of occurrences in
fenced code blocks. This function can be used e.g. to detect,
whether some CSS or JavaScript headers should be included for
rendering without the need of postprocessing the rendered re-
sult.
::Markdown::reset_lang_counter
Reset the language counters.
BUGS, IDEAS, FEEDBACK
This document, and the package it describes, will undoubtedly contain
bugs and other problems. Please report such in the category textutil
of the Tcllib Trackers [http://core.tcl.tk/tcllib/reportlist]. Please
also report any ideas for enhancements you may have for either package
and/or documentation.
When proposing code changes, please provide unified diffs, i.e the out-
put of diff -u.
Note further that attachments are strongly preferred over inlined
patches. Attachments can be made by going to the Edit form of the
ticket immediately after its creation, and then using the left-most
button in the secondary navigation bar.
CATEGORY
Text processing
tcllib 1.1.1 markdown(3tcl)