discount

A Python interface for Discount, the C Markdown parser
Download

discount Ranking & Summary

Advertisement

  • Rating:
  • License:
  • BSD License
  • Price:
  • FREE
  • Publisher Name:
  • Tamas Kemenczy

discount Tags


discount Description

A Python interface for Discount, the C Markdown parser discount is a ctypes binding of David Loren's Discount, a C implementation of John Gruber's Markdown.IntroductionMarkdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).The discount Python module contains two things of interest: * libmarkdown, a submodule that provides access to the public C functions defined by Discount. * Markdown, a helper class built on top of libmarkdown, providing a more familiar Pythonic interfaceUsing the Markdown classThe Markdown class wraps the c functions exposed in the libmarkdown submodule and handles the ctypes leg work for you. If you want to use the Discount functions directly, skip to the next section about libmarkdown.Let's take a look at a simple example:import sysimport discountmkd = discount.Markdown(sys.stdin)mkd.write_html_content(sys.stdout)Markdown takes one required argument, input_file_or_string, the markdown formatted data. If this argument is a file-like object, the file must be a real OS file descriptor, i.e. sys.stdin yes, a StringIO object, no. The argument is otherwise assumed to be a string-like object. The same is true for Markdown methods that write HTML output to files.Otherwise, the data is assumed to be string-like. Markdown also has methods for getting the output as a string, instead of writing to a file-like object. Let's look at a modified version of the first example, this time using strings:import discoutmkd = discount.Markdown('`test`')print mkd.get_html_content()The Markdown class constructor also takes optional boolean keyword arguments. toc Generate table-of-contents headers (each generated < h1 >, < h2 >, etc will include a id="name" argument.) Use get_html_toc() or write_html_toc() to generate the table-of-contents itself. strict Disable relaxed emphasis and superscripts. autolink Greedily expand links; if a url is encountered, convert it to a hyperlink even if it isn't surrounded with < >s. safelink Be paranoid about how [][] is expanded into a link - if the url isn't a local reference, http://, https://, ftp://, or news://, it will not be converted into a hyperlink. ignore_header Do not process the pandoc document header, but treat it like regular text. ignore_links Do not allow < a or expand [][] into a link. ignore_images Do not allow < img or expand ![][] into a image. ignore_tables Don't process PHP Markdown Extra tables. ignore_smartypants Disable SmartyPants processing. ignore_embedded_html Disable all embedded HTML by replacing all Requirements: · Python


discount Related Software